Você está na página 1de 13

Estruturas de Deciso

Profa. Dra. Thatiana C. Navarro

Introduo
Os algoritmos vistos at agora s possuem um
fluxo de execuo independente dos valores de
entradas mudarem.
Porm na vida real sabemos que executamos
certos procedimentos de acordo com uma ou at
uma sria de condies.
Citem exemplos de atividades do dia a dia que
vocs s realizam de acordo com certas
condies.

Objetivo
Permitir a escolha de um grupo de aes e
estruturar a ser executado quando determinadas
condies, representadas por expresses lgicas,
so satisfeitas(verdadeiro) ou no(falso).
Tipos

Seleo Simples
Seleo Composta
Seleo Encadeada
Mltipla Escolha

Comando Se
O comando se tem a mesma estrutura utilizada na
vida real, se alguma coisa verdade ento fao
isso, seno fao aquilo.
Estrutura do comando se

<valor booleano> pode ser substitudo por uma varivel


booleana, uma constante (V ou F) ou uma expresso que
gere um valor booleano.

Exerccio de Fixao
Elaborar um algoritmo que com base na idade de um indivduo
determine se o mesmo de maior ou de menor.
constante LIMITE=18;
var
idade: inteiro;
incio
escreva(Digite a idade do indivduo:);
leia(idade);
se (idade>=LIMITE) ento
incio
escreva(Indivduo maior de idade);
fim
seno //Esse exemplo mostra um bloco composto
incio
escreva(Indivduo menor de idade);
escreva(Logo ele no pode beber);
fim
fim

Condies Compostas
As condies vistas at agora so condies
simples.
A medida que aumenta-se a complexidade dos
problemas necessria a construo de
condies mais complexas.
As condies compostas so feitas utilizando os
operadores lgico: e , ou , no

Problema
Dado trs valores determinar se os mesmos
forma um tringulo ou no. (Um tringulo
uma figura geomtrica na qual cada lado
menor do que a soma dos outros dois lados).

Condies Aninhadas
Um bloco de instrues pode conter qualquer
tipo de comando, inclusive comandos de
condio.

Condies Encadeadas
Dependendo do nmero de encadeamentos o
algoritmo pode ficar muito bagunado, ento
conveno colocar o seno se na mesma linha.

Condies Encadeadas
Problema 1: Dados trs nmeros inteiros
identificar qual deles o maior.
Problema 2: Escreva um algoritmo que leia um
nmero inteiro e determine se ele par ou
mpar.

Exerccios
1. Escreva um algoritmo que determine o grau de
obesidade de uma pessoa, sendo fornecido o
peso e a altura da pessoa. O grau de obesidade
determinado pelo ndice da massa corprea
(Massa = Peso / Altura2 ) atravs da tabela
abaixo:
Massa Corprea

Grau de Obesidade

< 26

Normal

26 e <30

Obeso

30

Obeso Mrbido

Exerccios
2. Desenvolva um algoritmo que dado um
ngulo (em graus e inteiro) informe em qual
quadrante do crculo trigonomtrico o mesmo
est inserido.
3. Desenvolva um algoritmo que informe se o
nmero digitado pelo usurio mltiplo de 5.

Condio de Mltipla Escolha


Utilizando quando uma varivel ou expresso
pode ser igual a diferentes valores.