Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
Introdução Operadores
Relacionais Lógicos
Comando If Comando If....else Comando swich()...case...break Operador condicional ternário
Objetivo: Desenvolver programas utilizando tanto diagrama de blocos, como linguagem C para tomada de decisão.
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
Introdução
As características básicas das linguagens de programação, o que diferencia o computador de uma calculadora comum são três:
1. Executar uma série de Instruções;
2. Decidir entre ações alternativas;
3. Repetir um sequência de instruções ate a satisfação de certa condição.
Nesta aula iremos desenvolver programas que decide ações alternativas (Item 2)
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
A Linguagem C oferece 4 principais estruturas de decisão:
• if
• if...else
• Switch
• Operador condicional ternário
Introdução
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
Operadores Relacionais São os operadores utilizados na tomada de decisão através de comparação.
Comparação Operador pseudocódigo
Operador Linguagem C
Igual = ==
Diferente <> !=
Menor < <
Menor ou Igual <= <=
Maior > >
Maior ou Igual >= >=
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
Lógicos São apenas três e permitem a comparação entre as operações relacionais e obedecem a tabela verdade da lógica booleana.
&& Lógico E; || Lógico OU; ! Lógico NÃO
Operadores
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
A sintaxe da operação é:
Esta operação é realizada em tomada de decisão, produzindo desvios de tarefas em determinado programa.
O retorno desta expressão será um valor booleano (0 ou 1), (true ou false)
Esta expressão é geralmente usada em comando de tomada de decisão como será visto a seguir.
Operadores
(expressão operaRel expressão) operaLóg (expressão operaRel expressão)
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
Comando If()
If (a==b )
printf (“a=b”);
A sintaxe é:
If (a==b && a>c)
printf (“a=b e a>c”);
If (a==b && a>c){
printf (“a=b\n”);
printf (“a>c”);}
Três instruções já caracteriza um bloco
Será impresso se a expressão acima for verdadeira.
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
Comando If()
Comando if aninhado:
If (a<b )
if(a>c)
printf (“a está entre b e c.”);
printf (“a não está entre b e c.”);
Que é semelhante a:
If (a<b ) && (a>c)
printf (“a está entre b e c.”);
printf (“a não está entre b e c.”);
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
Comando If() ......else (significa se .... senão)
printf(“digite um número inteiro”);
scanf(“%d”,&inteiro);
If(inteiro % 2 == 0)
printf (“O número %d é par”,inteiro);
else
printf (“O número %d é impar”,inteiro);
Da mesma forma que o if, o if....else também pode estar aninhado.
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
Comando switch()...case...break
Nos caso em que se deseja desviar para diversos caminhos diferentes, esta função é a mais adequada. Vamos verificar, por exemplo a digitação de um número e o retorno for o dia da semana associado a este número:
1=domingo,
2=segunda,...,
7=sábado.
Primeiramente será feito utilizando if():
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
printf(“digite um número inteiro de 0 a 7”);
scanf(“%d”,&inteiro);
If(inteiro== 1) printf (“Domingo”);
If(inteiro== 2) printf (“Segunda”);
If(inteiro== 3) printf (“Terça”);
If(inteiro== 4) printf (“Quarta”);
If(inteiro== 5) printf (“Quinta”);
If(inteiro== 6) printf (“Sexta”);
If(inteiro== 2) printf (“Sábado”);
Comando swich()...case...break
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
printf(“digite um número inteiro de 1 a 7”);
scanf(“%d”,&inteiro);
switch (inteiro){
case 1: printf (“Domingo”); break;
case 2: printf (“Segunda”); break;
case 3: printf (“Terça”); break;
case 4: printf (“Quarta”); break;
case 5: printf (“Quinta”); break;
case 6: printf (“Sexta”); break;
case 7: printf (“Sábado”); break;}
Comando swich()...case...break
Mesmo procedimento com swich() ... Case ... break
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
Operador condicional ternário É uma forma compacta de expressa o if() ... Else
A sintaxe é:
Vejamos o exemplo:
condição ? Expressão_1 : expressão)_2;
printf(“digite um número inteiro”);
scanf(“%d”,&inteiro);
If(inteiro % 2 == 0)
parimpar=‘p’;
else
parimpar=‘i’;
printf (“O número %c”,parimpar);
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle
Operador condicional ternário
printf(“digite um número inteiro”);
scanf(“%d”,&inteiro);
parimpar = inteiro % 2 == 0 ? ‘p’ : ‘i’;
printf (“O número digitado e %c,ip);
Usando o condicional ternário:
Instruções de Controle
AL Lapolli – www.lapolli.pro.br Instruções de Controle