algop - aula 03

35
Algoritmos e Programação Prof. Marcos Saúde [email protected]

Upload: thiago-toscano-ferrari

Post on 21-Jun-2015

152 views

Category:

Engineering


0 download

DESCRIPTION

Material de apoio para Algoritmos e Programação da Faculdade Pitágoras em Linhares – 2010

TRANSCRIPT

Page 1: Algop - aula 03

Algoritmos e Programação

Prof. Marcos Saú[email protected]

Page 2: Algop - aula 03

Linguagem C# Conhecendo mais da linguagem C#

Seqüências de Escape Adição de referências Substituições na Leitura Operadores Aritméticos, Relacionais e

Lógicos

Estruturas de Controle (if/else, switch)

Page 3: Algop - aula 03

Linguagem C#

Page 4: Algop - aula 03

Linguagem C#

Page 5: Algop - aula 03

Linguagem C#

Page 6: Algop - aula 03

Linguagem C#

Page 7: Algop - aula 03

Linguagem C#

Page 8: Algop - aula 03

Linguagem C#

Page 9: Algop - aula 03

Linguagem C#

Page 10: Algop - aula 03

Exercício:

Page 11: Algop - aula 03

Resultado

Page 12: Algop - aula 03

Exercício:

Page 13: Algop - aula 03
Page 14: Algop - aula 03
Page 15: Algop - aula 03
Page 16: Algop - aula 03

Linguagem C#

Page 17: Algop - aula 03

Linguagem C#

Page 18: Algop - aula 03

Linguagem C#

Page 19: Algop - aula 03

Operadores lógicos e relacionais Os operadores lógicos disponíveis na

linguagem C são: E ( && ) Ou ( || ) Não ( ! )

Tabela verdade dos operadores lógicos

p qp &&

q

V V V

V F F

F V F

F F F

p q p || q

V V V

V F V

F V V

F F F

p !p

V F

F V

Page 20: Algop - aula 03

Estrutura de Decisão

Page 21: Algop - aula 03

Estrutura de Decisão O fluxo de controle de um programa diz

respeito a como as instruções serão encadeadas;

Sequencia lógica é o que já temos intuitivamente assimilado com os estudos ao calcular fórmulas simples tipo conversão de temperatura de Fahrenheit para Celsius;

No caso, uma instrução é executada após a outra, sem desvios, sem repetições;

É o exemplo de programas resolvidos em que o ponto chave era algum cálculo com base em uma fórmula;

Page 22: Algop - aula 03

Estrutura de Decisão

Com as estruturas de decisão, a sequencia de instruções a executar é alterada conforme uma decisão baseada em alguma operação lógica;

Dois são os comandos para implementar estruturas de decisão Se (no C# é if) Caso (no C# é switch)

Page 23: Algop - aula 03

Estrutura de Decisão Veremos primeiro o comando de decisão if:

Empregado em situações De condições flexíveis combinando operações

relacionais e lógicas; Que apresentam apenas duas alternativas de

fluxo. Para se obter mais caminhos, vários IF’s podem ser combinados;

O comando “IF” escrito no C# é tratado com a seguinte sintaxe

if (condição){ ... }else{ ... }

Page 24: Algop - aula 03

Estrutura de Decisão Exemplo:

...int numero;Console.Write( “Digite um número:”); numero = Int32.Parse(Console.ReadLine());

if ( (numero % 2) == 0 ){

Console.Write(“O numero é par.”);}else{

Console.Write(“O numero é ímpar.”);}...

Page 25: Algop - aula 03

Estrutura de Decisão Considere o seguinte trecho de algoritmo:

início real x,y;

leia(x,y);

se ((12-7) > y) E ((13-x) >= 27) então início

se (x * y >0) então escreva ('Jogo 1')

senão escreva ('Jogo 2');

fim senão início

se (x * y >0) então escreva ('Jogo 3');

senão escreva ('Jogo 4');

fim fim

Page 26: Algop - aula 03

Estrutura de Decisão O que acontece na execução do algoritmo

dadas as seguintes condições?

a) O primeiro valor entrado é 5 e o segundo é 14. b) O primeiro valor entrado é -5 e o segundo é 14. c) O primeiro valor entrado é -14 e o segundo é -5. d) O primeiro valor entrado é -14 e o segundo é 5;

Page 27: Algop - aula 03

Exercícios

1) Faça um algoritmo que leia os valores A, B, C e imprima na tela se a soma de A + B é menor que C;

2) Faça um algoritmo que leia o nome, o sexo e o estado civil de uma pessoa. Caso sexo seja “F” e estado civil seja “CASADA”, solicitar o tempo de casada (anos);

Page 28: Algop - aula 03

Para casa Os exercícios a seguir foram elaborados para que o

aluno procure exercitar os conhecimentos até aqui adquiridos. A implementação dos algoritmos podem ser expressos em Linguagem Algorítmica, mas é recomendável que se tente implementá-los usando a ferramenta de desenvolvimento utilizada em aula (Visual Studio – Visual C#). Na prática é que serão identificadas as dificuldades encontradas na aprendizagem. Nas próximas aulas serão trazidos os gabaritos para conferência das respostas – marcaremos oportunamente (antes da 1ª prova) aula(s) em dia de sábado para os que necessitarem dirimir as dúvidas;

1) Desenvolva um algoritmo que lê dois valores inteiros e exibe uma mensagem indicando qual o maior;

2) Desenvolva um algoritmo que lê três números inteiros A, B e C, e exibe uma mensagem indicando o maior e o menor. Considere que os valores devam ser distintos;

Page 29: Algop - aula 03

Para casa 3) Preparar um algoritmo para ler os comprimentos dos

três lados de um triângulo (S1, S2 e S3) e determinar que tipo de triângulo temos, com base nos seguintes casos. Sejam A o maior dos lados de S1, S2 e S3 e B e C os outros lados. Então:

Se A >= B + C Nenhum triângulo é formado Se A2 = B2 + C2 Um triângulo retângulo é formado Se A2 > B2 + C2 Um triângulo obtusângulo é formado Se A2 < B2 + C2 Um triângulo acutângulo é formado

Obs: Para se obter o quadrado de um número no C# há duas possibilidades:

Multiplicar o número por ele mesmo: A*A Utilizar o método Math.Pow: Math.Pow(A,2) – eleva o valor da

variável A ao quadrado (A deve ser declarada como tipo double);

Page 30: Algop - aula 03

Para casa 4) Preparar um algoritmo para ler os comprimentos dos

três lados de um triângulo (S1, S2 e S3) e determinar que tipo de triângulo temos, com base nos seguintes casos. Sejam A o maior dos lados de S1, S2 e S3 e B e C os outros lados. Então:

Se A >= B + C Nenhum triângulo é formado Se A2 = B2 + C2 Um triângulo retângulo é formado Se A2 > B2 + C2 Um triângulo obtusângulo é formado Se A2 < B2 + C2 Um triângulo acutângulo é formado

Obs: Para se obter o quadrado de um número no C# há duas possibilidades:

Multiplicar o número por ele mesmo: A*A Utilizar o método Math.Pow: Math.Pow(A,2) – eleva o valor da

variável A ao quadrado (A deve ser declarada como tipo double);

Page 31: Algop - aula 03

Para casa 5) O Departamento do Meio Ambiente mantém

três listas de indústrias conhecidas por serem altamente poluentes da atmosfera. Os resultados de várias medidas são combinados para formar o que é chamado de “índice de poluição”. Isto é controlado regularmente. Normalmente os valores caem entre 0.05 e 0.25. Se o valor atingir 0.30, as indústrias da lista A serão chamadas a suspender as operações até que os valores retornem ao intervalo normal. Se o índice atingir 0.40, as indústrias da lista B serão notificadas também. Se o índice exceder 0.50, indústrias de todas as três listas serão avisadas para suspenderem as atividades. Faça um algoritmo que leia o índice de poluição e indique as notações apropriadas;

Page 32: Algop - aula 03

Para casa

6) Faça um algoritmo que leia dois valores inteiros A e B. Se os valores forem iguais deverá se somar os dois, caso contrário multiplique A por B. Ao final de qualquer um dos cálculos deve-se atribuir o resultado para uma variável C e mostrar seu conteúdo na tela;

Page 33: Algop - aula 03

Para casa 7) Encontrar o dobro de um número

caso ele seja positivo e o seu triplo caso seja negativo, exibindo na tela o resultado.

8) Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um algoritmo que calcule seu peso ideal, utilizando as seguintes fórmulas: para homens: (72.7 * h) – 58; para mulheres: (62.1 * h) – 44.7.

Page 34: Algop - aula 03

Para casa 9) O IMC – Indice de Massa Corporal é um critério da

Organização Mundial de Saúde para dar uma indicação sobre a condição de peso de uma pessoa adulta. A fórmula é IMC = peso / ( altura ) 2. Elabore um algoritmo que leia o peso e a altura de um adulto e mostre sua condição de acordo com a tabela abaixo.

Page 35: Algop - aula 03

Para casa 10) Escreva um algoritmo que leia o número de identificação,

as 3 notas obtidas por um aluno nas 3 verificações e a média dos exercícios que fazem parte da avaliação, e calcule a média de aproveitamento, usando a fórmula:

A atribuição dos conceitos obedece a tabela abaixo. O algoritmo deve escrever o número do aluno, suas notas, a média dos exercícios, a média de aproveitamento, o conceito correspondente e a mensagem 'Aprovado' se o conceito for A, B ou C, e 'Reprovado' se o conceito for D ou E.