|
Capítulo
2
|
2.1
Estruturas Condicionais
|
As estruturas
condicionais, como o próprio nome diz, são estruturas utilizadas
para o teste de uma certa condição.
Caso esta condição seja verdadeira (TRUE) a estrutura será
executada. Este tipo de estrutura também chamada de estrutura de
tomada de decisão.
Estrutura se...então...fim_se
Imagine que em seu
algoritmo haja a necessidade de executar uma parte do código se
uma certa condição for satisfeita. Neste caso, a estrutura
se
pode ser utilizada:
se(condição)então
fim_se
Esta estrutura se
traduz nos comandos if
das diversas linguagens de programação. Veja os exemplos
a seguir:
se (A>2)
então
B A*C
fim_se |
se (menu<>"sair")
então
escreva "Fim"
fim_se |
No exemplo da esquerda,
se o valor da variável A
for maior que2,
a estrutura executará a atribuição do resultado da
multiplicação dos valores de A
e C para
a variável B.
Caso o valor de A
seja igual ou inferior a 2
nada irá acontecer.
No exemplo da direita,
caso a variável menu
contiver mensagem diferente de
"sair",
a estrutura irá executar a operação de escrita da
mensagem "Fim".
Se a variável menu
contiver a palavra "sair",
nada ocorrerá.
Em termos de fluxograma,
podemos lembrar do diagrama visto no capítulo 1:
|
Vemos no exemplo
ao lado, que caso o valor da variável M for maior que 5, será
exibida a mensagem "aprovado".
Na verdade, o exemplo
foi modificado para exemplificar a condição se.
Mais adiante iremos mostrar o desvio condicional composto, usado no exemplo
do capítulo 1. |
Em ambos
os exemplos usamos operadores relacionais. Veja a lista dos operadores
mais usados pelas pseudo-linguagens:
|
Símbolo
|
Significado
|
|
=
|
igual
a |
|
<>
|
diferente
de |
|
>
|
maior
que |
|
<
|
menor
que |
|
>=
|
maior
ou igual a |
|
<=
|
menor
ou igual a |
Estrutura se...então...senão...fim_se
Neste tipo de estrutura,
se a condição for satisfeita, parte do código será
executado. Caso a condição não seja satisfeita, outra
parte do código será executada:
se()então
senão
fim_se
Esta estrutura também
se traduz nos comandos if
das diversas linguagens de programação. Veja os exemplos
a seguir:
se (A>=2)
então
B A*C
senão
C A*B
fim_se |
se (m>5) então
escreva "Aprovado"
senão
escreva "Reprovado"
fim_se |
Cabe aqui fazer menção
a um tipo de estrutura chamada "estrutura
de desvio incondicional".Este tipo de estrutura
causa o desvio da execução normal de um algoritmo sem que
nenhuma condição seja testada. Dessa forma, recomenda-se
evitar o uso de tal estrutura, salvo onde a mesma for estritamente necessária
e mesmo assim sua utilização fica subordinada ao uso de outra
estrutura prévia de controle de fluxo. Um exemplo de estrutura de
desvio incondicional são os comandos GOTO
das diversas linguagens de programação. |