Você está na página 1de 21

Algoritmos e

Lógica de
Programação

Professor: Wilton Marinho


Estrutura de decisão
➢ Estruturas de decisão são estruturas que permitem a tomada de decisão
sobre qual o caminho a ser escolhido, de acordo com o resultado de uma
expressão lógica.

➢ Essa instrução tem como finalidade tomar uma decisão e efetuar um desvio
no processamento, dependendo da condição atribuída ser verdadeira ou
falsa.
Estrutura de decisão
➢ Estruturas de decisão são estruturas que permitem a tomada de decisão
sobre qual o caminho a ser escolhido, de acordo com o resultado de uma
expressão lógica.

➢ Essa instrução tem como finalidade tomar uma decisão e efetuar um desvio
no processamento, dependendo da condição atribuída ser verdadeira ou
falsa.

➢ No C podemos utilizar a estrutura if-else (se-senao) para a estrutura de


decisão.
Estrutura de decisão
➢ Exemplo: Ler dois valores numéricos, compará-los e exibir o maior valor
Exemplo if-else
#include<stdio.h>
int main() {
int a, b;
printf("Digite 2 numeros\n");
scanf("%d%d", &a, &b);
if (a > b) {
printf("O numero %d e maior que %d\n", a, b);
} else {
printf("O numero %d e maior ou igual que %d\n", b, a);
}
return 0;
}
If-else
➢Se a condição avaliar em verdadeiro o compilador executará o
comando ou o bloco do if.

➢Se a cláusula else existir, esse bloco só será executado se a


comparação for falsa.

sintaxe:
if (condição)comando;
else comando;
If-else
➢ Exemplo
if (a > b)
printf("O numero %d e maior que %d",a, b);
else
printf("O numero %d e maior ou igual que %d",b, a);
➢Exemplo com corpo
if (a > b){
printf("O numero %d e maior que %d",a, b);
}else {
printf("O numero %d e maior ou igual que %d",b, a);
}
If-else
➢ Quando não existir um uma “{}” dentro do if ou else o corpo do
comando de decisão será somente uma linha abaixo do comando
de decisão.
If-else-if
➢ Uma variável é testada sucessivamente contra uma lista de
variáveis inteiras ou e caracteres. Chamamos essa estrutura de if
aninhado.

➢É uma condicional encadeada é o mesmo que usar estruturas de


seleção (if) aninhadas, ou seja, uma dentro da outra.

➢Depois de encontrar uma coincidência, o comando ou o bloco de


comandos é executado.
If-else-if
➢ Exemplo
int a,b;
printf("digite dois numeros:");
scanf("%d%d",&a,&b);
if (a == b)
printf("O numero %d e igual que %d",a, b);
else if (a > b)
printf("O numero %d e maior que %d",a, b);
else
printf("O numero %d e menor que %d",a, b);
Teste Lógico
➢ Podemos utilizar testes lógicos dentro junto com if
#include<stdio.h>
int main() {
printf("Digite sua idade\n");
int idade;
scanf("%d", &idade);
if (idade >= 18 && idade <= 65) {
printf("Voto obrigatorio\n");
}
return 0;
}
Teste Lógico
➢ Com o “&&” (E) as duas condições tem que ser verdadeiras para
que a expressão seja verdadeira.

➢ O “||” (ou) pelo menos uma condição tem que ser verdadeira
para que a expressão fique verdadeira.
Teste Lógico
#include<stdio.h>
int main() {

printf("Digite sua idade\n");


int idade;
scanf("%d", &idade);
if (idade >= 16 && idade < 18 || idade > 65) {
printf("Voto Facultativo\n");
}
return 0;
}
Exercícios
1) Qual o valor de L após a execução deste trecho de algoritmo?
#include<stdio.h>
int main() {

double X, Y;
int L;
X = 1.5;
Y = 3.2;
X = X + 1;
if (X + Y > 5) {
L = 0;
} else {
L = 1;
}
printf("%d\n", L);
return 0;
}
Exercícios
2. Escreva um algoritmo que leia três números e informe qual deles é menor.
Suponha que os números são diferentes.

3. Elabore um Algoritmo que leia um número inteiro e informe se ele é par ou


ímpar.
Regra: o número é par, se o resto da divisão do número 2 for igual a 0.
Exercícios
4. Uma faculdade atribui menções aos alunos conforme a faixa de notas que
tenha atingido.
9,0 a 10: SS (superior)
5,0 a 6,9: MM (médio)
0,1 a 2,9: II (inferior)
7,0 a 8,9: MS (médio superior)
3,0 a 4,9: MI (médio inferior)
0: (sem rendimento)
Elabore um algoritmo que lê a nota e informa a menção.
Switch
➢ Outra estrutura de decisão utilizada no C é a Switch (caso).

➢Uma variável é testada sucessivamente contra uma lista de


variáveis inteiras ou de caracteres. Depois de encontrar uma
coincidência, o comando ou o bloco de comandos é executado.

➢Se nenhuma coincidência for encontrada o comando default será


executado. O default é opcional. A seqüência de comandos é
executada até que o comando break seja encontrado.
int x;
printf("1. inclusao\n");
printf("2. alteracao\n");
printf("3. exclusao\n");
printf(" Digite sua opcao:");
scanf("%d", &x);
switch (x) {
case 1:
printf("escolheu inclusao\n");
break;
case 2:
printf("escolheu alteracao\n");
break;
case 3:
printf("escolheu exclusao\n");
break;
default:
printf("opção invalida\n");
}
Exercícios
5. Escreva um programa que pede para o usuário entrar um número
correspondente a um dia da semana e que então apresente na tela o
nome do dia. utilizando o comando switch.
Obrigado (a)!
wilton.souza@uniceplac.edu.br

Você também pode gostar