ALGORITMO E PROGRAMAÇÃO
• Estrutura de Controle – Tomada de
Decisões
• Professor Zé Maria Lehrback Filho
DESVIO CONDICIONAL
SIMPLES
• Tomar decisão
• Operador lógico
• Utiliza a instrução se..então..fim_se
DIAGRAMA DE BLOCOS
• Decisão deve ser utilizado em
situações em que haja a necessidade de
usar uma decisão dentro do programa.
DIAGRAMA DE BLOCOS
Condição
Símbolo para a
tomada de decisões
Instruções executadas
quando condição for
verdadeira
Instruções executadas quando
condição for falsa ou após ser
verdadeira
SN
PORTUGUÊS ESTRUTURADO
se (<condição>) então
<instruções para condição verdadeira>
fim_se
<instruções para condição falsa ou após ser
verdadeira>
ALGORITMO
1. Conhecer dois valores incógnitos
(estabelecer variáveis A e B).
2. Efetuar soma dos valores incógnitos A e B,
sendo o valor da soma a variável X.
3. Apresentar o valor da soma na variável X,
caso o valor de X seja maior que 10.
DIAGRAMA DE BLOCOS Início
A,B
X A + B
S N
X>10
X
Fim
PORTUGUÊS ESTRUTURADO
programa SOMA_NÚMEROS
var
X, A, B : inteiro
inicio
leia A , B
X A + B
se ( X > 10) então
escreva X
fim_se
fim
OPERADORES
RELACIONADOS
Símbolo Significado
= Igual a
> Maior que
< Menor que
>= Maior ou igual a
<= Menor ou igual a
<> Diferente de
DESVIO CONDICIONAL
COMPOSTO
• Instrução se..então..senão..fim_se
DIAGRAMA DE BLOCOS
Condição
Instruções executadas
quando condição for
verdadeira
SN
Instruções executadas
quando condição for
falsa
PORTUGUÊS ESTRUTURADO
se (<condição>) então
<instruções para condição verdadeira>
senão
<instruções para condição falsa>
fim_se
ALGORITMO
1. Conhecer dois valores (variáveis A e B)
2.Efetuar a soma dos valores A e B e o
valor da soma em X.
3.Verificar se X é maior ou igual 10; caso
sim, calcule R X+5
4.Caso não, calcule R X -7
5.Mostre R
DIAGRAMA
DE
BLOCOS
início
A,B
X A + B
X>=10
R X - 7 R X + 5
R Fim
S
N
PORTUGUÊS ESTRUTURADO
programa SOMA_NÚMEROS
var
A,B,X,R : inteiro
início
leia A,B
X A+B
se (X >= 10) então
R X + 5
senão
R X – 7
fim_se
escreva R
fim
DESVIOS CONDICIONAIS
ENCADEADOS
• Caos em que é necessário estabelecer
algumas verificações lógicas de
condições definidas sucessivamente.
DIAGRAMA DE BLOCOS
Condição 1
Condição 2 Instruções executadas
quando condição 1
verdadeira
Instruções executadas
quando condição 2
verdadeira
Instruções executadas
quando condição 2
falsa
SN
N S
PORTUGUÊS ESTRUTURADO
se (<condição>) então
<instruções para condição1 verdadeira>
senão
se (<condição2>) então
<instruções para condição2 verdadeira, porém condição 1 falsa>
senão
<instruções para condição1 e condição2 falsa>
fim_se
fim_se
ALGORITMO
• O problema em questão estabelece
três condições para calcular o reajuste
do salário do funcionário, sendo:
• Salário < 500, reajuste será de 15%
• Salário >= 500, mas <= 1000,
reajuste será de 10%
• Salário > 1000, reajuste será de 5%
ALGORITMO
1. Definir uma variável para o salário
reajustado: NOVO_SALÀRIO
2. Ler um valor para variável SALÀRIO
3. Verificar se o valor de SALÁRIO < 500, se
sim reajustar em 15%
4. Verificar se o valor de SALÁRIO <= 1000,
se sim reajustar em 10%
5. Verificar se o valor de SALÁRIO > 1000, se
sim reajustar em 5%
6. Apresentar o valor reajustado, implicado
em NOVO_SALÁRIO
programa REAJUSTA_SALÁRIO
var
NOVO_SALÁRIO : real
SALÁRIO : real
início
leia SALÁRIO
se (SALÁRIO < 500) então
NOVO_SALÁRIO SALÁRIO * 1.15
senão
se (SALÁRIO <= 1000) então
NOVO_SALÁRIO SALÁRIO * 1.10
senão
NOVO_SALÁRIO SALÁRIO * 1.05
fim_se
escreva NOVO_SALÁRIO
fim

Tomada de decisao - logica