Minicursos - Lógica de Programação

Estruturas de Decisão


Estrutura de decisão é um dos assuntos mais importantes de tudo o que pode haver para ser falado neste minicurso. E não se preocupem, porque trata-se de algo extremamente simples.

Uma estrutura de decisão é só um comando capaz de executar um teste e, dependendo da resposta deste, que poderá ser verdadeiro ou falso, ele pode provocar um desvio no fluxo de execução do código. Parece complicado, mas é extremamente simples. Vamos imaginar um pequeno programa que pergunta a idade do usuário e responde uma mensagem dizendo se ele já é maior de idade ou não. Uma sugestão de pseudocódigo pode ser a seguinte:

VARIAVEIS
Idade:Integer;
INICIO
Idade ← 0;
ESCREVA(‘Por favor, digite sua idade: ’);
LER(Idade);
SE Idade >= 18 então
ESCREVA(‘Você já é maior de idade!’);
SENÃO
ESCREVA (‘Você não é maior de idade ainda.’);
FIM

Fazendo alguns comentários importantes sobre este bloco de comandos, teremos:



Como foi possível perceber, uma estrutura de decisão é como se fosse uma pergunta que é feita em determinado momento do código e, dependendo da resposta retornada, o fluxo caminhará para uma direção ou outra. Vale destacar que vários testes podem estar aninhados dentro da mesma estrutura. Aproveitando o exemplo acima, vamos imaginar que se a idade digitada pelo usuário fosse menor ou igual a 10 anos, então exibiríamos uma mensagem personalizada dizendo ao usuário que ele ainda é uma criança. Então nosso pseudocódigo ficaria da seguinte forma:



Aqui ficou claro que os testes podem estar aninhados e, caso o primeiro teste falhe, o segundo é feito. Se ele falhar também, o próximo é executado, e assim por diante. A grande observação é a seguinte: é possível perceber que o último comando 'SENÃO' está isolado, sem qualquer outro teste 'SE' junto dele. Isso significa que queremos que o código vinculado a este bloco seja executado caso todos os anteriores falhem. Nós queremos que o fluxo de execução passe por ele caso todos os testes anteriores retornem o valor falso, então, por este motivo, ele deve ser sempre o último comando a ser inserido dentro da estrutura de decisão.

Ilustrando esta teoria em um fluxograma, teríamos algo como:


É isso. No tópico seguinte falarei sobre estruturas de repetição.



Algumas notícias

As memórias DDR5 estão chegando e trarão muitas melhorias

A próxima geração de memórias RAM já possui especificações definidas e promete grande melhoria em relação às atuais DDR4. E o mais importante: mesmo com desempenho bastante superior, elas consumirão menos energia. A tensão de trabalho das memórias DDR5 será de apenas 1.1V contra os 1.2V das atu...

Ler Notícia Completa

Google Chrome consumirá menos memória RAM em breve

O navegador da gigante de buscas da Internet é, sem dúvida, um dos melhores disponíveis, mas é inegável que o consumo de memória RAM por parte dele é exagerado. Este problema já se estende por anos, mas parece que em breve ele terá uma solução. Um novo recurso do Windows 10, chamado SegmentHeap...

Ler Notícia Completa

Sites e vídeos sem propagandas? Sim, é possível através da exploração de uma falha!

Seguramente você já se deparou com sites que bloqueiam o conteúdo da página e te obrigam a assinar determinado serviço para ler o conteúdo, certo? Ou foi tentar assistir aquele vídeo e as propagandas em tela cheia não pararam de surgir. Bem, todos já nos deparamos com isso, no entanto, um bug de...

Ler Notícia Completa
Você gostará destes vídeos!