Buscar

6 Estrutura condicional

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Estrutura condicional
Esta aula tem como foco o entendimento de utilização de estruturas
condicionais (decisão) simples e encadeada dentro de um algoritmo.
Este tipo de estrutura permite que o algoritmo decida automaticamente entre dois caminhos
possíveis, qual irá executar. Para tanto, um teste lógico é efetuado. Caso o teste seja verdadeiro, o
algoritmo segue por um caminho. Caso o teste seja falso o algoritmo segue pelo outro. Dois
exemplos de algoritmos envolvendo estruturas de decisão são mostrados a seguir.
Estrutura condicional simples
Na estrutura condicional simples, é empregado um teste lógico para verificar se uma condição
é válida, tendo a resposta como verdadeiro ele executa um bloco de comandos, caso contrário, é
possível adicionar outro bloco de comandos ou não a ser executado.
Veja a seguir o emprego de um algoritmo para ler um número e exibir uma mensagem
indicando se ele é negativo ou não. Neste caso temos como entrada um número e como saída
apenas uma mensagem.
Ao analisar o pseudocódigo do programa, as primeiras etapas são idênticas às estudadas
anteriormente. Inicialmente existe a definição do nome do programa, em seguida a criação das
variáveis, neste caso apenas uma variável de um tipo (Real). Ao iniciar o programa, a primeira linha
de comando tem o comando para ser adquirido um valor numérico a ser atribuído na variável
"num". A linha seguinte tem o processo de decisão, como se pode observar, a linha inicia-se com a
palavra "Se", logo após é realizado um teste lógico (que verifica se o número é menor que zero) e
em seguida a palavra "então", finalizando o teste lógico. Caso a resposta deste teste lógico seja
positivo, o programa então realizará o comando para exibir a mensagem avisando que o número é
negativo, caso este teste retorne falso, o programa exibirá a mensagem que o número não é
negativo, e para que o sistema entenda que deverá exibir esta mensagem caso o teste retorne falso,
temos o emprego da palavra "senão". Após finalizado os passos com os blocos de comando para
resposta positiva e negativa, temos que finalizar a estrutura de decisão (SE) aberta, para isso aplica-
se a frase "Fim Se" no final do ultimo bloco. Agora só resta a finalização do programa com a palavra
"Fim".
Ao analisar o fluxograma deste algoritmo, tem-se o símbolo da decisão adicionado, dentro dele
é incorporado o teste lógico, com duas possíveis respostas, uma indicada na seta com a letra "S",
que significa a resposta se positivo o teste lógico, e na segunda seta temos a letra "N", que
representa a resposta negativa do teste. Exibida as mensagens de resposta, então os dois
processos, que agora estão separados, devem seguir para o terminador, finalizando o fluxograma.
Estrutura condicional composta ou encadeada
Um algoritmo com estrutura condicional composta tem como objetivo analisar casos que pode
possuir mais de duas respostas, ou seja, um problema pode ter n respostas, sendo sempre
necessários n-1 testes lógicos para tratar todas as possibilidades. Por exemplo, um problema que
tenha 4 respostas, teremos que ter 3 testes lógicos, ou seja, 3 decisões.
Vejamos agora um algoritmo para ler um número qualquer a partir do teclado e exibir uma
mensagem indicando se ele é positivo, negativo ou nulo. Como se pode notar, existem 3 respostas
possíveis, então nesse caso n=3, serão necessários 2 testes lógicos. Nesse tipo de estrutura é
possível escrever o pseudocódigo de duas formas distintas, porém, com o mesmo teor no seu
conteúdo. Uma desta utiliza apenas uma estrutura de decisão, e na outra empregam duas estruturas
de decisão.
Iniciaremos a análise desta estrutura de decisão pelo fluxograma, neste caso, como pode ser
observada a resposta da primeira decisão, se negativa, esta ligada diretamente a outra decisão,
formando assim uma cadeia de decisões, por isso é chamado de estrutura de decisão composta ou
encadeada. Para a solução deste caso, verificou-se primeiramente se o número digitado é positivo,
se a resposta for sim, o sistema exibe ao usuário a mensagem que o número é positivo, caso
contrário, é realizado outro teste, se o número é negativo, caso a resposta for positiva, obtém-se a
mensagem informando que é negativo, caso contrário, informa que o número é nulo, sendo a única
opção que restou. Neste caso temos o processo dividido em três partes, as quais devem ir para um
único terminador.
Temos agora que diferenciar as duas formas de representação do pseudocódigo uma sendo
duas estruturas de decisão simples e a segunda sendo a estrutura encadeada, como pode ser
observado na primeira após a primeira decisão temos o bloco de comandos, em seguida vem o
senão, e na próxima linha contém a próxima decisão, sendo assim, é aberta uma nova estrutura
de decisão, que irá possuir o seu próprio "Senão" e também seu "Fim Se", como pode ser
observado. Neste caso então abrimos duas estruturas de decisão e fechamos duas vezes, uma para
cada estrutura de decisão.
No segundo caso, a diferença é que possuí apenas uma estrutura de decisão, e se observamos,
o "Senão Se" esta na mesma linha, indicando que este segundo "Se" faz parte da primeira
estrutura, sendo assim, não é necessário fechar duas vezes o "Se", e sim apenas uma vez como
mostrado no exemplo acima, o que caracteriza uma estrutura encadeada.
Referências
DASGUPTA, Sanjoy; PAPADIMITRIOU, Christos; VAZIRANI, Umesh. Algoritmos. São Paulo: McGraw
Hill, 2009.
HEINEMAN, George T.; POLLICE, Gary; SELKOW, Stanley. Algoritmos: o guia essencial. Rio de
Janeiro: Alta Books, 2009.
MANZANO, André Luiz N. G.; MANZANO, Maria Izabel N. G. Estudo dirigido de informática básica.
São Paulo: Érica, 2008.
MANZANO, José Augusto N. G. Estudo dirigido de linguagem C. São Paulo: Érica, 2009.
MANZANO, José Augusto N. G.; OLIVEIRA, Jayr Figueiredo de Oliveira. Algoritmos, Lógica para
desenvolvimento de programação de computadores. São Paulo: Érica, 19 ed., 2006.

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando