Condicionais

Os programas que desenvolvemos até aqui são puramente sequenciais. Ou seja: as instruções que definidos são executadas uma após a outra, sem qualquer possibilidade de desvio.

Sabemos, entretanto, que as condições reais da vida não são tão simples assim. Como os programas de computador usualmente representam aspectos do mundo real, precisamos de estratégias que nos ajudem a tornar as implementações flexíveis para lidar com diferentes situações que possam ocorrer.

Na vida real, se estiver chovendo, podemos optar por ficar em casa. Agora, se não estivesse chovendo, poderia não existir motivos para não sair de casa (numa situação hipotética), como ilustra a figura a seguir.

Representação de estruturas condicionais

💡 Conceito

Um dos conceitos fundamentais para o desenvolvimento de programas consiste nas condições. Segundo André Backes (2018):

🎰 Conhecendo as condições

Mesmo sem saber, usamos condições o tempo todo em nossa vida. Para começar, vamos imaginar a idade de uma pessoa como uma variável. Se desejarmos verificar a maioridade de uma pessoa, testaremos a seguinte condição:

idade >= 18
  • Se idade for maior ou igual a 18 anos, a resposta será VERDADEIRO;
  • Se idade for menor que 18 anos, a resposta será FALSO.

Veremos logo mais que, de posse da classificação da resposta como VERDADEIRO ou FALSO, poderemos direcionar a execução do programa para diferentes trechos, trazendo a flexibilidade desejada.

🌟 Aprimorando as condições

Ao criarmos uma condição, podemos enriquecê-la com o uso de operadores relacionais e lógicos:

OperadorDescrição
==Igualdade: Retorna verdadeiro se os operandos são iguais.
!=Diferença: Retorna verdadeiro se os operandos são diferentes.
<Menor que: Retorna verdadeiro se o operando da esquerda é menor que o da direita.
>Maior que: Retorna verdadeiro se o operando da esquerda é maior que o da direita.
<=Menor ou igual a: Retorna verdadeiro se o operando da esquerda é menor ou igual ao da direita.
>=Maior ou igual a: Retorna verdadeiro se o operando da esquerda é maior ou igual ao da direita.

Podemos também utilizar operadores lógicos para formar uma condição composta por mais de uma expressão:

OperadorDescrição
&&E lógico: Retorna verdadeiro se ambas as expressões são verdadeiras.
||OU lógico: Retorna verdadeiro se uma das expressões for verdadeiras.
!Negação: Nega uma afirmação.

Reaproveitando o exemplo anterior, vamos imaginar a necessidade de construção de uma condição que verifique:

  • se a pessoa é maior de idade e tem altura superior a 1.75m;

A conversão da frase acima para a linguagem C, assumindo que idade e altura são variáveis já inicializadas, seria:

idade >= 18 && altura >= 1.75

No caso acima, foi utilizado o operador lógico &&.

📖 Bibliografia

Livros

  • Backes, A. (2018). Linguagem C - Completa e Descomplicada.