Em nossa postagem anterior falamos sobre o comando decisão, sua importância e como usa-lo (clique aqui para acessar nossa postagem anterior). Baseado nos mesmos exemplos iremos mostrar como trabalhar com os comandos de decisão. Na figura 1 abaixo temos o exemplo de um fluxograma e o pseudocódigo equivalente de um programa que calcula a média de duas notas digitadas via teclado.
Figura 1. Fluxograma de programa para calcular média. |
Algoritmo MEDIA_2_NOTAS
Var
N1 : real
N2 : real
Media : real
Var
N1 : real
N2 : real
Media : real
Inicio
leia N1, N2
Media=(N1+N2)/2
escreva Media
Fim
No pseudocódigo acima temos a representação de um programa que irá calcular e exibir a média de duas notas digitadas via teclado. Agora vamos imaginar um programa onde é necessário exibir a mensagem "Aluno aprovado" ou "Aluno reprovado" em função do resultado da média onde todo aluno com média inferior a 6,0 esta reprovado.
Note que é impossível o aluno estar aprovado e reprovado ao mesmo tempo, ou seja, nosso programa deverá "escolher" qual mensagem será exibida. Neste caso será obrigatório o uso de comandos de decisão.
Comando de decisão- São estruturas lógicas condicionais onde uma decisão é tomada baseada numa condição especifica cujo resultado sempre será Verdadeiro ou Falso. Se a condição for verdadeira, pode-se executar uma instrução ou conjunto de instruções. Se a condição não for verdadeira (Falsa), pode-se executar outro conjunto de instruções.
Em pseudocódigo, o comando de decisão é representado pela sequencia de instruções discriminadas abaixo. O equivalente em fluxograma esta representado na figura 2.
se (condição) então
instruções se condição for verdadeira
senão
instruções se condição não for verdadeira
fim_se
Figura 2. fluxograma do comando de decisão. |
se (condição) então
instruções se condição for verdadeira
senão
instruções se condição não for verdadeira
fim_se
A primeira linha de instrução é o Se (condição) então onde o programa irá tomar a decisão sobre qual bloco de instruções ele irá executar. Logo abaixo desta primeira instrução, temos todas a instruções que serão executadas pelo programa caso a condição seja verdadeira. Já a instrução senão marca o inicio do bloco de instruções que será executado caso a condição for falsa (senão for verdadeira). O comando de decisão em pseudo código deve ser sempre finalizado com a instrução fim_se. Agora que já conhecemos a estrutura de decisão precisamos definir onde o comando de decisão será inserido no exemplo apresentado na figura 1 para que nosso programa funcione corretamente. Neste caso iremos analisar a média das duas notas para saber se o aluno foi aprovado ou reprovado, logo nosso comando de decisão deverá ser inserido após o calculo da média conforme indicado na figura 3.
Figura 3. Seta vermelha indica onde devemos inserir o comando de decisão. |
Figura 4. Fluxograma do calculo de média . |
Algoritmo MEDIA_2_NOTAS
Var
N1 : real
N2 : real
Media : real
Inicio
leia N1, N2
Media=(N1+N2)/2
se (media <6 ) então
escreva "aluno Reprovado"
senão
escreva "aluno Aprovado"
fim_se
Fim
Notamos que na condição temos: media < 6 onde o sinal "<" é o que chamamos de operador relacional. A tabela I abaixo mostra os operadores relacionais usados nos comandos de decisão.
Tabela I, Operadores relacionais. |
Todo comando "se" deve ser finalizado com um fim_se. O fim_se indica que sua estrutura de decisão foi finalizada e qualquer instrução após o fim do comando de decisão será executada independente se a condição lógica for verdadeira ou falsa. Observe os fluxogramas da figura 5 abaixo e seus respectivos pseudocódigos logo abaixo:
Figura 6. A importância de definir o local exato do o comando de decisão termina. |
Notamos que no Caso A a media será exibida após a finalização do comando de decisão, já no Caso B, a media será exibida antes do termino do comando de decisão dentro da condição verdadeira desse controle. Em termos mais práticos, no Caso A a média será exibida independente se o aluno foi aprovado ou reprovado, já no Caso B a média só será exibida se o aluno for reprovado.
Alguns casos podemos ter um comando de decisão onde a condição falsa é descartada, nestes casos temos o chamado desvio condicional simples e o fluxograma é representado como na figura 6.
Figura 6. Desvio condicional simples.
|
Algoritmo MEDIA_2_NOTAS
Var
N1 : real
N2 : real
Media : real
Inicio
leia N1, N2
Media=(N1+N2)/2
se (media <6 ) então
escreva "aluno Reprovado"
fim_se
Fim
Neste caso temos somente o comando se e a condição, as instruções que serão executadas caso a condição seja verdadeira e finalizamos o comando de decisão com o fim_se.
Atenção: O comando de decisão com desvio condicional simples sempre deve ter a condição verdadeira da condição apresentada no comando de decisão. Não é usual ter um comando de decisão com instruções somente na saída falsa do comando.
Ainda ta com duvida, curta nossa pagina no facebook e poste sua duvida lá....
Nenhum comentário:
Postar um comentário