Mudanças entre as edições de "MCO018703 2018 2 AULA04"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 37: Linha 37:
 
[[imagem:Fig038_MCO018703.jpg|600px|center]]
 
[[imagem:Fig038_MCO018703.jpg|600px|center]]
  
;if( )... else if( )
+
 
 
<syntaxhighlight lang=c>
 
<syntaxhighlight lang=c>
 
if (expressão1) {
 
if (expressão1) {

Edição das 16h10min de 14 de agosto de 2018

Objetivos

  • Aprender sobre funções para controle de de fluxo;
  • Utilizar o comando de decisão if else.

Funções para Controle de Fluxo

if( )

É um controle de fluxo usado para selecionar uma ou mais instruções baseado no resultado de um teste de comparação. Todas as instruções entre as chaves { e } são executadas somente se o resultado desse teste for verdadeiro; se não, essas instruções não são executadas. Verdadeiro é qualquer resultado, mesmo negativo, diferente de zero. Falso é um resultado zero.

if (expressão){
   bloco de instruções; // se "expressão" for verdadeira, "bloco de instruções" é executado
}
Fig037 MCO018703.jpg

if( )...else

Ao se acrescentar mais um bloco de instruções no loop do comando if pode-se criar o comando if...else, para fazer um novo teste quando o resultado da expressão for falsa.

if (expressão) {
   bloco de instruções1; // se "expressão" for verdadeira, "bloco de instruções1" é executado
}
else {
   bloco de instruções2; // se "expressão" for falsa, "bloco de instruções2" é executado 
}

if( )...else if( )

E de novo ao se acrescentar agora o comando if...else no loop do comando if pode-se criar mais um outro comando, o if...else if. No exemplo abaixo se "expressão1" for verdadeira o "bloco de instruções1" é executado; se "expressão1" for falsa mas "expressão2" for verdadeira "bloco de instruções2" é executado; e se "expressão1" e "expressão2" forem falsas o "bloco de instruções3" é executado.

Fig038 MCO018703.jpg


if (expressão1) {
   bloco de comandos1; 
}
else if (expressão2) {
   bloco de instruções2; 
}
else {
   bloco de comandos3; 
}

switch...case

É possível ir inserindo comandos if...else na posição do segundo bloco de instruções de outro comando if...else e assim criar uma cadeia de comandos para testar dezenas de expressões até encontrar uma que retorne um resultado verdadeiro e executar um dos blocos de instruções; mas existe um comando próprio que simplifica bastante essa seleção, é o comando switch...case. Esse comando permite comparar uma mesma variável inteira, ou uma expressão que retorne um inteiro, com vários valores possíveis.

switch..,case
switch (expressão) {
  case 1:  bloco de instruções1; 
           break;
  case 2:  bloco de instruções2; 
           break;
  case 3:  bloco de instruções3; 
           break;
  default: bloco de instruções4; 
}

Operadores Relacionais e Lógicos

Os operadores relacionais e lógicos são os mesmos vistos na aula anterior.

Relacionais
Operador Significado
> maior que
>= maior ou igual que
< menor que
<= menor ou igual que
== igual a
!= diferente de


Lógicos
Operador Significado
&& AND (E)
|| OR (OU)
! NOT (NÃO)

Ver Operadores Relacionais e Lógicos





Icone voltar.png Icone menu.png Icone prox.png