Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos...

15
Professora: Flávia Balbino da Costa

Transcript of Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos...

Page 1: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

Professora: Flávia Balbino da Costa

Page 2: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

Revisão (estruturas de decisão e repetição, procedimentos e funções )

Trabalhando com a Linguagem C Estrutura de dados homogêneas I - vetores Estrutura de dados homogêneas II -

matrizes Estrutura de dados heterogêneas - registros Recursividade Ponteiros, alocação dinâmica, listas

Page 3: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

Os comandos de seleção devem ser utilizados de

acordo com alguma situação verificada, através de

valores de variáveis.

A linguagem C possui dois comandos de seleção: o

comando if e o comando switch.

Page 4: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

O comando if é o comando de seleção mais geral, ou seja,

ele pode ser utilizado em qualquer situação em que o uso

de um comando de seleção se faz necessário. A sua

sintaxe é a seguinte:if (expressão) {Comando1;...ComandoN;}else {Comando1;...ComandoM;}

Page 5: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

#include <stdio.h> void main() {

char nome[80];float nota1, nota2, media;

 printf(“Informe o nome do aluno: ”);gets(nome);printf(“Informe as duas notas do aluno: ”);scanf(“%f%f”, &nota1, &nota2);media = (nota1+nota2)/2;printf(“O aluno %s ficou com a média %.2f\n”, nome, media);

 if (media>=7)printf(“O aluno está aprovado!\n”);else {if (media <5)printf(“O aluno está reprovado!\n”);elseprintf(“O aluno está em prova final!\n”);}

}

Page 6: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

O comando switch é um outro comando de seleção, como o if, porém de uso mais restrito.

Vejamos primeiramente a sua sintaxe para especificarmos como o comando funciona e em que situações nós poderemos utilizá-lo.

Page 7: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

switch (variável) {case valor1: Comandos;break;case valor2:Comandos;break;...case valorn:Comandos;break;default:Comandos;

}

Page 8: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

O comando switch funciona do seguinte modo: é verificado inicialmente se a variável especificada entre parênteses é igual ao valor1, executando os comandos correspondentes em caso afirmativo; caso o valor da variável seja diferente do valor1, o teste de igualdade passa a ser feito com o valor2, repetindo-se o mesmo tipo de análise.

Caso o valor da variável não seja igual a nenhum dos valores especificados (de valor1 até valorn), os comandos correspondentes à opção default são executados. A utilização do default é opcional, mas se utilizado, deve ser colocado sempre no final.

Page 9: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

Vamos então as restrições deste comando:O comando switch só utiliza para teste uma única variável que deve ser do tipo inteiro ou caráter, levando-se em consideração apenas os tipos básicos da linguagem;O comando switch só faz teste de igualdade desta variável em relação a um conjunto de valores, ou seja, não se faz testes do tipo maior e menor, por exemplo, e muito menos se testa a relação entre uma variável e outra.

Page 10: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

#include <stdio.h> void main() {

int n1, n2;char op;

 printf(“Informe dois números inteiros: ”);scanf(“%d%d”, &n1, &n2);getchar(); /* tirar o ENTER do buffer do teclado */op = getchar();

 switch(op) {

case ‘+’:printf(“%d + %d = %d\n”, n1, n2, n1+n2);break;

Page 11: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

case ‘-’:printf(“%d - %d = %d\n”, n1, n2, n1-n2);break;case ‘*’:printf(“%d * %d = %d\n”, n1, n2, n1*n2);break;case ‘/’:printf(“%d / %d = %d\n”, n1, n2, n1/n2);break;case ‘%’:printf(“%d %% %d = %d\n”, n1, n2, n1%n2);break;default:printf(“Operação Inválida\n”);}

}

Page 12: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

A utilização do comando break também não é obrigatória. Devemos entender tal comando, neste caso, como “saia fora do switch”.

Quando desejamos que os mesmos comandos sejam realizados em situações distintas, juntamos os “cases” destas situações, colocando o comando break somente no final.

Page 13: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

1) Faça um programa que leia um número e imprima uma

mensagem dizendo se é par ou impar.

2) Faça um programa que leia 3 números e imprima o

menor deles.

3) Faça um programa que leia 3 números e imprima uma

das seguintes mensagens:a) todos os números são iguais; b) todos os números são diferentes; ouc) apenas dois números são iguais.

Page 14: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

4) Faça um programa que leia um horário no sistema de

24 horas e imprima este horário no sistema de 12

horas (Comando Switch).

Exemplo: 22:32 10:32 pmObs.: 0:00 12:00 am 6:00 6:00 am

12:00 12:00 pm

Page 15: Professora: Flávia Balbino da Costa. RRevisão (estruturas de decisão e repetição, procedimentos e funções ) TTrabalhando com a Linguagem C EEstrutura.

5) Faça um programa que calcule a área de determinadas

figuras geométricas. O programa deverá apresentar um

menu com as seguintes opções:

quadrado ( )retângulo (comprimento * largura)círculo (3,14 * raio2 )trapézio ((base maior + base menor) * altura / 2)

De acordo com a opção, o programa deverá pedir os valores

necessários para realizar o cálculo (Comando Switch).