Condicionais

Estruturas condicionais

Os programas que desenvolvemos até aqui são puramente sequenciais. Ou seja: as instruções que definimos 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 estiver chovendo, poderia não existir motivos para não sair de casa (numa situação hipotética), como ilustra a figura a seguir.

💡 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
andE lógico: Retorna verdadeiro se ambas as expressões são verdadeiras.
orOU lógico: Retorna verdadeiro se uma das expressões for verdadeiras.
notNegaçã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 Python, assumindo que idade e altura são variáveis já inicializadas, seria:

idade >= 18 and altura >= 1.75

Nesse caso, foi utilizado o operador lógico and.

✅ Uma variável também pode ser usada isoladamente em uma condição. Nesse caso, seu valor será avaliado como True se for diferente de 0, de False, de uma lista ou string vazia, entre outros valores "falsos" em Python. Caso contrário, será considerado False.