A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Profa. Maria Augusta Constante Puget

Apresentações semelhantes


Apresentação em tema: "Profa. Maria Augusta Constante Puget"— Transcrição da apresentação:

1 Profa. Maria Augusta Constante Puget
Programação II – Parte 4 Profa. Maria Augusta Constante Puget

2 Comandos Condicionais (1)
Os comandos condicionais permitem determinar qual é a ação a ser tomada com base no resultado de uma expressão condicional. A linguagem C oferece os seguintes comandos de decisão: if if-else switch

3 O Comando if (1) Exemplo: #include <stdio.h>
#include <stdlib.h> int main(){ int idade; printf("Quantos anos voce tem?\n"); scanf("%i", &idade); if (idade < 30){ printf("Voce e muito jovem!\n\n"); } system("pause"); return 0; Note que: Se você digitar um valor menor do que 30, o programa imprimirá “Voce e muito jovem!” maior do que 30, o programa não fará nada.

4 O Comando if (2) Sintaxe do comando if: if (expressão-de-teste) {
instrução_1; instrução_2; ... instrução_n; } Sem ponto-e-vírgula A expressão-de-teste entre parênteses é uma expressão booleana, isto é, que envolve operadores relacionais e, possivelmente, também operadores lógicos. Quando avaliada uma tal expressão resulta em Verdadeiro (1) ou Falso (0). Se a expressão-de-teste entre parênteses for avaliada como: Verdadeira (1): As instruções entre chaves serão executadas. Falsa (0): As instruções entre chaves não são executadas e o fluxo do programa prossegue a partir da próxima instrução após o fecha-chaves.

5 O Comando if-else (1) Note que: Se você digitar um valor
menor do que 30, o programa imprimirá “Voce e muito jovem!” maior do que 30, o programa imprimirá "Uau! Como voce esta bem conservadinho(a)!!!" Exemplo: #include <stdio.h> #include <stdlib.h> int main(){ int idade; printf("Quantos anos voce tem?\n"); scanf("%i", &idade); if (idade < 30){ printf("Voce e muito jovem!\n\n"); } else{ printf("Uau! Como voce esta bem conservadinho(a)!!!\n\n"); system("pause"); return 0;

6 Sintaxe do comando if-else:
if (expressão-de-teste) { instrução_v1; instrução_v2; ... instrução_vn; } else instrução_f1; instrução_f2; instrução_fn; Sem ponto-e-vírgula Sem ponto-e-vírgula Se a expressão-de-teste entre parênteses for avaliada como: Verdadeira (1): As instruções entre o primeiro par de chaves serão executadas. Falsa (0): As instruções entre o segundo par de chaves serão executadas.

7 Comandos if-else encadeados:
O Comando if-else (3) Comandos if-else encadeados: if (expressão-de-teste1){ instruções-1; ... } else if(expressão-de-teste2){ instruções-2; else if (expressão-de-teste2){ instruções-3; else{ instruções-N; Exemplos: Lista de exercícios: Faixas de idade Faixas de IMC

8 Comandos if-else aninhados:
O Comando if-else (4) Comandos if-else aninhados: if (expressão-de-teste1){ if(expressão-de-teste2){ instrução; ... } else{ if(expressão-de-teste3){ Exemplos: Lista de exercícios: Triângulos equiláteros, isósceles e escalenos. Comissário(a) de bordo.

9 O Comando if-else (5) Observar que:
Nunca se coloca ponto-e-vírgula após um if. Nunca se coloca ponto-e-vírgula após um else. Apenas após um if pode-se ter uma expressão de teste, nunca após um else.

10 O Comando switch-case (1)
Exemplo: #include <stdio.h> #include <stdlib.h> int main(){ char op; printf("Digite um operador aritmetico:"); scanf("%c", &op); switch(op) { case '+': printf("Adicao.\n"); break; case '-': printf("Subtracao.\n"); case '*': printf("Multiplicao.\n"); break; case '/': printf("Divisao.\n"); default: printf(“Invalido.\n"); } system("pause"); return 0;

11 O Comando switch-case (2)
Sintaxe do comando switch-case: switch (variavel ou constante) { case constante1: instrução; break; case constante2: case constante3: default: } Sem ponto-e-vírgula O corpo do switch deve estar entre chaves. O corpo do switch é composto de vários casos que devem ser seguidos de uma constante inteira ou do tipo char. Opcionalmente, tem-se um caso default. O corpo de cada caso é composto por qualquer número de instruções. Geralmente, a última instrução é um break. O break causa a saída imediata do corpo do switch. Na falta do comando break, todas as instruções, a partir do caso escolhido até o término do comando, serão executadas, mesmo pertencendo aos casos seguintes.

12 O Comando switch-case (3)
Exemplo: #include <stdio.h> #include <stdlib.h> int main(){ char vogal; printf("Digite uma vogal: "); scanf("%c", &vogal); switch(vogal){ case 'a': case 'A': printf("Primeira vogal.\n"); break; case 'e': case 'E': printf("Segunda vogal.\n"); case 'i': case 'I': printf("Terceira vogal.\n"); break; case 'o': case 'O': printf("Quarta vogal.\n"); case 'u': case 'U': printf("Quinta vogal.\n"); default: printf("Nao e uma vogal.\n"); } system("pause"); return 0;

13 O Comando switch-case (4)
Exemplo: Suponha que você atrasou uma conta. A cada mês que você deixa de pagar, será cobrado 1% de juros no valor inicial. Ou seja: Se você atrasar um mês, irá pagar 1%. Se atrasar 3 meses, irá pagar 3% etc. Vamos supor que você possa atrasar, no máximo, 5 meses. O programa pede, como entrada, dois valores: um float: com o valor de sua dívida inicial (valor_i) um inteiro: de 0 até 5, que são os meses de atraso. Faça um programa em C que calcule os juros de atraso. Use switch-case acumulados.

14 O Comando switch-case (5)
Exemplo: #include <stdio.h> #include <stdlib.h> int main() { float valor_i, valor_f; int juros=0; int meses; printf("Qual o valor inicial da dívida: "); scanf("%f", &valor_i); printf("Qtos meses de atraso [1-5]?: "); scanf("%i", &meses); switch( meses ) { case 5: juros++; case 4: case 3: case 2: case 1: break; default: printf("Valor invalido de meses.\n"); } printf("Juros: %i%%\n",juros); valor_f=( (1 + (juros/100.0))*valor_i); printf("Valor final da dívida: R$ %.2f\n", valor_f); system("pause"); return 0;

15 O Comando switch-case (6)
Observar que: Não se pode usar uma variável ou expressão lógica após um case, dentro do switch. A variável ou expressão que se segue ao switch, bem como as constantes que se seguem aos cases têm que ser do tipo inteiro ou char. O corpo de cada case poderá ser vazio (nenhuma instrução) ou conter uma ou mais instruções, que não necessitam estar entre chaves. O corpo do switch tem que estar entre chaves. Se o valor da expressão do switch for igual à constante de um case, a execução começará nele. Se nenhum case for satisfeito e existir um caso default, a execução começará nele. O caso default é opcional. Não pode haver casos com constantes iguais.

16 O Operador Condicional (1)
O operador condicional é o único operador ternário na linguagem C. Sintaxe: <condição> ? <operação 1> : <operação 2>; Exemplo: #include <stdio.h> #include <stdlib.h> int main(){ int num; printf("Digite um numero inteiro: "); scanf("%i", &num); num % 2 == 0? printf("O numero e par.\n"): printf("O numero e impar.\n"); system("pause"); return 0; }


Carregar ppt "Profa. Maria Augusta Constante Puget"

Apresentações semelhantes


Anúncios Google