Cursos / Redes de Computadores / Lógica de Programação / Aula
Desde o início dessa disciplina, até o momento, você construiu pequenos programas e todos eles funcionam de forma linear, ou seja, cada linha do seu algoritmo é executada e processada uma a uma. Essa estrutura linear é também conhecida como Estrutura Sequencial, pois todas as linhas do algoritmo são executadas sequencialmente uma após a outra.
Para construir algoritmos e programas que contemplem os diversos tipos de problemas as linguagens de programação possuem as estruturas de decisão. Essas estruturas são peças fundamentais em qualquer linguagem de programação e permitem criar algoritmos com desvios de fluxo.
Para que um desvio de fluxo ocorra é preciso verificar se uma condição é verdadeira ou falsa. Ou seja, se uma determinada condição for verdadeira, o algoritmo deverá seguir por um fluxo, se for falsa ele deverá, então, seguir por outro. Veja a figura a seguir, ela representa um algoritmo em formato de fluxograma.
Figura 02 - Algoritmo em formato de fluxogramaVocê lembra dos operadores relacionais vistos no início dessa aula? E também das expressões relacionais, que quando avaliadas (calculadas), resultam sempre em um único resultado: verdadeiro ou falso? A partir de agora você irá perceber que as expressões relacionais e as lógicas são utilizadas com frequência nas estruturas de decisão.
No exemplo contido no fluxograma, a expressão relacional está verificando se o valor informado ao programa e, consequentemente, armazenado na variável x, é maior do que 0 (zero).
Se o valor de x for maior do que zero a condição é então verdadeira e o programa segue o seu fluxo, partindo para o bloco da direita. Todos os comandos que estiverem dentro do trecho correspondente ao bloco da condição verdadeira serão executados e, nesse exemplo, temos o comando escreva, que irá imprimir na saída do programa o valor de x, o qual então é positivo.
Caso o valor de x seja negativo (ou igual a zero), o fluxo do programa será, então, direcionado para o bloco de código responsável pela condição falsa, e nesse programa apresentado, será impressa a mensagem de que o valor de x é negativo.
Por esse motivo, quando emprega-se o uso das estruturas de decisão, o programa produzido deixa de ser sequencial, pois alguns trechos podem não ser executados por causa dos desvios de fluxo.
Na linguagem Potigol a estrutura de decisão é denominada de 'se...então'. Essa estrutura é descrita como um comando condicional de execução em bloco e, através dela, é possível definir um ou dois blocos de códigos que devem ser executados, um quando a condição for verdadeira (obrigatório) e outro quando for falsa (opcional).
Observe o código abaixo, ele representa um programa que verifica se um número fornecido é maior do que zero.
Se a condição for verdadeira, o programa irá escrever que o número digitado é positivo. Já se for falsa, o comando escreva não será executado. Esse exemplo mostra a estrutura de decisão se...então em sua forma mais simples, ou seja, quando temos apenas o bloco de códigos para quando a expressão de condição for verdadeira.
No exemplo, se a condição for falsa, não há bloco de códigos para ser executado e, portanto, o algoritmo apenas irá continuar executando as linhas seguintes ao bloco 'se...então'. Nesse caso como não há nenhuma linha código após esse bloco o programa é encerrado.
Explore o exemplo abaixo para você conhecer a sintaxe dessa estrutura.
Você conseguiu descobrir o que faz o programa acima? Ele declara uma variável 'numero' e em seguida lhe atribui um valor, veja na linha 1. Na linha seguinte, linha 2, temos uma expressão aritmética e relacional e que após ser avaliada tem o seu resultado armazenado na variável misterio. Em seguida, nas linhas de 4 a 6, temos o bloco da estrutura condicional 'se...então'. Caso você não tenha compreendido completamente o programa, experimente alterar a expressão da linha 2 para obter novos resultados, mas lembre-se sempre que as expressões relacionais possuem o resultado true (verdadeiro) ou false (falso).
Agora observe o bloco de código abaixo, esse corresponde ao programa do fluxograma apresentado anteriormente. Sua estrutura apresenta o comando se...então...senão completo com os dois blocos de código:
Você compreendeu a estrutura de decisão se...então? Ainda não!? Poste suas dúvidas no fórum designado, dessa forma outros colegas poderão compartilhar informações e seu professor mediador poderá lhe auxiliar.
Versão 5.3 - Todos os Direitos reservados