04. ESTRUTURA CONDICIONAL
36 pág.

04. ESTRUTURA CONDICIONAL


DisciplinaProgramacao Modular91 materiais1.043 seguidores
Pré-visualização2 páginas
Estrutura Condicional
BAC004-Informática-Teórica-Fabiana C 
Guedes
2
Estrutura Condicional
\ufffd A estrutura condicional permite a escolha do 
grupo de ações e estruturas a ser 
executado quando determinadas condições 
são ou não satisfeitas.
\ufffd A estrutura condicional pode ser 
apresentada por meio de uma estrutura 
simples ou de uma estrutura composta.
BAC004-Informática-Teórica-Fabiana C 
Guedes
3
Estrutura Condicional
\u2022 Isso significa que podemos selecionar 
entre ações alternativas dependendo 
de critérios desenvolvidos no decorrer 
da execução do programa
BAC004-Informática-Teórica-Fabiana C 
Guedes
4
Comandos de Seleção -
Simples
\ufffd Forma Geral
if (expressão)
comando1;
Expressão da Condição deve 
estar entre parênteses.
Caso tenha mais de um 
comando eles devem ser 
delimitados por chaves.
Seria igual a:
SE <condição> 
ENTÃO 
comando
BAC004-Informática-Teórica-Fabiana C 
Guedes
5
Comandos de Seleção -
Simples
BAC004-Informática-Teórica-Fabiana C 
Guedes
6
Comandos de Seleção -
Simples
if(sexo_usuario=='f' && dia==8 && mes==3) 
cout << &quot;Parabens, mulher, pelo seu dia!&quot;; 
BAC004-Informática-Teórica-Fabiana C 
Guedes
7
Comandos de Seleção 
- Simples
\u2022 Em C/C++ é obrigatória a utilização de chaves 
quando houver mais de uma instrução a ser 
executada quando a expressão condicional for 
verdadeira. 
\u2022 FormaGeral
if (Teste Condicional)
{ 
instrução1; 
instrução2; 
instruçãon; 
} 
As chaves delimitam o Bloco que só será 
executado no caso da expressão verdadeira.
BAC004-Informática-Teórica-Fabiana C 
Guedes
8
Comandos de Seleção 
- Simples
if(sexo_usuario=='f' && dia==8 && mes==3)
{ 
cout << &quot;Parabéns, mulher, pelo seu dia!&quot; << endl; 
cout << &quot;Você é a &quot; 
<< cont + 1 
<< &quot;a. mulher a acessar o sistema hoje.&quot; 
<< endl; 
cont++; 
} 
Ou cont=cont + 1. Ao criar a variável cont, 
ela deve receber o valor 0.
BAC004-Informática-Teórica-Fabiana C 
Guedes
9
Comandos de Seleção 
- Simples
/*ProgC014.cpp
Primeiro exemplo de estrutura condicional*/
#include <iostream>
#include <cstdlib>
using namespace std;
int main(){
cout << &quot;Quantos anos voce tem? &quot; << endl;
int anos;
cin >> anos;
if( anos < 30 ) //Toma decisão caso anos < 30
cout << &quot;Voce e muito jovem!&quot; << endl;
system(&quot;PAUSE&quot;);
return 0;
}
Faz o teste perguntando se 
(anos < 30)
Só executa se a condição for 
verdadeira
Sem as chaves só executa 
uma única linha de código.
BAC004-Informática-Teórica-Fabiana C 
Guedes
10
Comandos de Seleção -
Simples
//ProgC015.cpp - Programa que verificar se número é par ou impar
#include <iostream>
#include <cstdlib>
using namespace std;
int main (){
int num;
cout << &quot;Digite o numero: &quot;;
cin >> num;
if ((num % 2) == 0){
cout << &quot;Numero par.\n&quot;;
}
if ((num % 2) == 1){
cout << &quot;Numero impar.\n&quot;;
}
system(&quot;pause > null&quot;);
return 0;
}
Comando condicional simples
BAC004-Informática-Teórica-Fabiana C 
Guedes
11
Estrutura Condicional 
- Composta
\u2022 É uma expansão de um simples comando if
\u2022 O comando if permite que executemos algo 
somente se a sua expressão de teste for 
verdadeira, caso contrário nada será 
executado
\u2022 Suponhamos que você queira executar uma 
coisa se a expressão de teste for verdadeira 
e outra se a expressão de teste for falsa
\u2022 Nesse caso, você deve usar o comando if -
else
BAC004-Informática-Teórica-Fabiana C 
Guedes
12
Estrutura Condicional -
Composta
BAC004-Informática-Teórica-Fabiana C 
Guedes
13
Comandos de Seleção \u2013
Composta
\ufffd Forma Geral
if (expressão)
comando1;
else
comando2;
Expressão da Condição deve 
estar entre parênteses.
Caso tenha mais de um 
comando eles devem ser 
delimitados por chaves.
BAC004-Informática-Teórica-Fabiana C 
Guedes
14
Comandos de Seleção 
\u2013Composta
BAC004-Informática-Teórica-Fabiana C 
Guedes
15
Comandos de Seleção \u2013
Composta
if(media >= 60) 
cout << &quot;Aprovado!&quot;; 
else 
cout << &quot;Exame!&quot;; 
BAC004-Informática-Teórica-Fabiana C 
Guedes
16
Comandos de Seleção \u2013
Composta
//ProgC016 - Teste de divisão por Zero
#include <iostream>
using namespace std;
int main(){
int dividendo, divisor;
float quociente;
cout << &quot;Entre com o dividendo e o divisor, respectivamente: &quot;;
cin >> dividendo >> divisor;
if (divisor != 0)
{
quociente = (float) dividendo / divisor;
cout << &quot;O quociente e: &quot; << quociente << endl;
}
else
cout << &quot;Impossivel fazer a divisao. O divisor e igual a zero.&quot; << endl;
return 0;
}
Como a expressão lógica fornece o 
valor 0 (zero) para falso e diferente 
de zero para verdadeiro, se o valor 
for verdadeiro pode ser realizada a 
divisão. Se o valor for falso, o 
segundo número digitado foi zero.
BAC004-Informática-Teórica-Fabiana C 
Guedes
17
Comandos de Seleção 
\u2013Composta
BAC004-Informática-Teórica-Fabiana C 
Guedes
18
Comandos de Seleção 
\u2013Composta
BAC004-Informática-Teórica-Fabiana C 
Guedes
19
Comandos de Seleção -
Composta
// ProgC017.cpp - Programa que apresenta o comando de seleção composta - if 
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main ( ){
int Numero, Palpite;
srand(time(NULL));
Numero = rand()%100;
cout << &quot;\nAdivinhe o numero magico: &quot;;
cin >> Palpite;
if (Palpite == Numero)
cout << &quot;\n Voce ACERTOU!&quot;;
else
cout << &quot;\n Voce errou! O correto era &quot; << Numero;
system(&quot;PAUSE > null&quot;);
return 0;
}
srand() e rand() são funções para criar números 
randomicamente. Neste caso pega números abaixo de 100.
Comando de seleção.Seria o comando:
se Palpite = Numero então
escreva \u201cVocê Acertou!\u201d
senão
escreva \u201cVocê errou! O correto era \u201d, Numero
BAC004-Informática-Teórica-Fabiana C 
Guedes
20
Comandos de Seleção -
Aninhada
\u2022 Uma estrutura condicional está 
aninhada quando é utilizada dentro de 
outra estrutura condicional. 
\u2022 Podemos ter vários comandos if 
aninhados. 
\u2022 O comando else em C se refere ao if 
mais próximo (acima deste) que está 
no mesmo bloco.
BAC004-Informática-Teórica-Fabiana C 
Guedes
21
Comandos de Seleção -
Aninhada
\u2022 Forma Geral: 
if (<condição>){ 
comandos1;
...
}else if (<condição>) {
comandos2;
...
}
No senão faz outro teste.
if (<condição1>)
{ 
if (<condição2>)
{ 
comandos;
...
}
else
{
comandos;
...
}
}
else
{
if (<condição3>)
{ 
comandos;
...
}
}
BAC004-Informática-Teórica-Fabiana C 
Guedes
22
Comandos de Seleção 
Aninhados - Exemplo
//ProgC018.cpp - Estrutura if aninhada
# include <iostream>
using namespace std;
int main ( ){
int n1, n2, n3;
cout << &quot;Digite 3 numeros: &quot;;
cin >> n1 >> n2 >> n3;
if (n1 > n2)
if (n1 > n3)
cout << &quot;O maior numero e: &quot; << n1;
else
cout << &quot;O maior numero e: &quot; << n3;
else
if (n2 > n3)
cout << &quot;O maior numero e: &quot; << n2;
else
cout << &quot;O maior numero e: &quot; << n3;
return 0;
}
Estrutura if aninhada
BAC004-Informática-Teórica-Fabiana C 
Guedes
23
Comandos de Seleção 
Aninhados - Exemplo
//ProgC019.cpp - Exemplo IF Aninhado
#include <iostream>
using namespace std; int main(){
float n1, n2, res;
char op;
cout << &quot;Digite NUMERO OPERADOR NUMERO: &quot;;
cin >> n1 >> op >> n2;
if (op == '+') {
res = n1 + n2;
cout << &quot;O resultado da soma e: &quot; << res;
}
else
if (op == '-') {
res = n1 - n2;
cout << &quot;O resultado da subtracao e: &quot; << res;
}
else
if (op == '/') {
res = n1 / n2;
cout << &quot;O resultado da divisao e: &quot; << res;
}
else
if (op == '*') {
res = n1 * n2;
cout << &quot;O resultado da multiplicacao e: &quot; 
<< res;
}
else
cout << &quot;Operador invalido!&quot;;
cout << endl;
return 0;
} // fim main
Entrada de Dados
Soma
Subtração
Divisão