Baixe o app para aproveitar ainda mais
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.
Compartilhar