Baixe o app para aproveitar ainda mais
Prévia do material em texto
Introdução à Computação MAC0110 Prof. Dr. Paulo Miranda IME-USP Aula 3 Comandos Condicionais Operadores Relacionais Operador Função > maior >= maior ou igual < menor <= menor ou igual == igualdade != diferente • São usados para fazer comparações. Retornam zero (0) ou um (1) dependendo da expressão ser falsa ou verdadeira respectivamente. • Possuem menor precedência que a dos operadores aritméticos. Operadores Relacionais • Exemplo: int main(){ int a, b, c; a = (10 < 30); b = (20 == 25); c = (a != b); printf(“a = %d, b = %d, c = %d \n”, a, b, c); return 0; } • Saída: a = 1, b = 0, c = 1 Comando condicional • Queremos que o computador execute instruções diferentes, dependendo de alguma condição lógica. – Ex: Cálculo das raízes de uma equação de segundo grau, precisa tratar em especial o caso de raízes imaginárias. – Estrutura condicional simples – Estrutura condicional composta Estrutura condicional simples • Permite a escolha de um grupo de instruções (bloco de comandos) quando uma determinada condição lógica é satisfeita. comando1; if (expressão){ /* bloco de comandos. */ comando2; comando3; : } comandoN; comando1; comando2; comando3; comandoN; expressão 1 0 Estrutura condicional composta comandoX; if (expressão){ /* bloco de comandos.*/ comando1; : } else{ /* bloco de comandos.*/ comandoA; comandoB; : } comandoY; • Permite a escolha de um bloco de comandos, quando uma condição é satisfeita, e de um outro bloco quando a condição não é satisfeita. comandoX; comando1; comando2; comandoY; expressão 1 0 comandoA; comandoB; Comando condicional • Exemplos: int a; scanf(“%d”,&a); if(a > 0){ printf(“Numero positivo! \n”); } else{ if(a == 0){ printf(“Numero nulo! \n”); } else{ printf(“Numero negativo! \n”); } } Comandos if-else ANINHADOS Comando condicional • Exemplos: int a; scanf(“%d”,&a); if(a > 0){ printf(“Numero positivo! \n”); } else if(a == 0){ printf(“Numero nulo! \n”); } else{ printf(“Numero negativo! \n”); } Comando condicional • Exemplo: Maior entre três valores. int a,b,c; scanf(“%d %d %d”,&a,&b,&c); if(a > b){ if(a > c){ printf("a é maior \n"); } else{ printf("c é maior \n"); } } else{ if(b > c){ printf("b é maior \n"); } else{ printf("c é maior \n"); } } Comando condicional • Problema: Comparação entre datas – Escreva um programa que determina a data cronologicamente maior de duas datas fornecidas pelo usuário. – Cada data deve ser fornecida por três valores inteiros onde o primeiro representa um dia, o segundo um mês e o terceiro um ano. Comando condicional • Problema: Diferença entre tempos cronometrados – Cada tempo cronometrado é dado por três valores correspondendo à quantidade de horas, minutos e segundos. – Para dois tempos cronometrados fornecidos, calcule a diferença entre os dois. Por exemplo: • Entre com o primeiro tempo: 02h 10m 01s • Entre com o segundo tempo: 01h 20m 03s • A diferença é: 00h 49m 58s Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11
Compartilhar