|
Capítulo
2
|
2.2
Estruturas Condicionais Aninhadas
|
É
possível encadear ou aninhar estruturas condicionais. Este tipo
de prática é muito comum e é utilizada em funções
as mais diversas como por exemplo no teste de senhas de um sistema operacional
como o Windows NT. Abaixo iremos mostrar como uma sequência de estruturas
condicionais aninhadas pode ser utilizada:
O problema:
Elaborar um programa que efetue o cálculo do desconto do imposto
de renda pessoa-física. Se o salário for de até R$1000,
o contribuinte estará isento do imposto (não incluindo este
valor na faixa). Se o salário estiver na faixa que vai de R$1000
a R$2500 (incluindo ambos os valores na faixa), o contribuinte paga 10%
de imposto. Se for superior a R$2500 e inferior a R$5000 (não incluindo
nenhum dos valores na faixa), o imposto será de 25%. Para valores
superiores a R$5000 (incluindo este valor) o imposto será de 37%.
Faixa de Valores:
|
isentos
|
R$1000 |
10%
|
R$2500
|
25%
|
R$5000 |
37%
|
|
isentos
|
10%
|
25%
|
37%
|
Algoritmo:
1 - Definir uma variável para o desconto chamada DESC;
2 - Ler um valor para a variável SALÁRIO;
3 - Verificar se o SALÁRIO < 1000; se sim, emitir a mensagem
"ISENTO" e vá para FIM;
4 - Verificar se o SALÁRIO <= 2500; se sim, DESC = 10% e
vá para FIM;
5 - Verificar se o SALÁRIO < 5000; se sim, DESC = 25% e vá
para FIM;
6 - DESC = 37%;
7 - FIM.
Observe
que no algoritmo acima os passos de 1 a 7 serão seguidos de forma
sequencial e condicional. Isto indica que estruturas se...então...senão...fim_se
serão
utilizadas nas linhas 3, 4 e 5.
Fluxograma:

Pseudo-Linguagem:
programa desc_IR
var
SALARIO : real
DESC : inteiro
início
leia SALARIO
se
(SALARIO < 1000) então
escreva "Isento"
senão
se (SALARIO
<=2500) então
DESC 10
senão
se (SALARIO
< 5000) então
DESC 25
senão
DESC 37
fim_se
fim_se
fim_se
fim
|