Pense em condicionais se é sim, e não, é não.
Uma lição de 10 minutos: o que é uma condição, seus dois ramos, a comparação = vs ==, casos típicos e um desafio de máquina de bebidas.
O que é uma condição, como se escolhe entre dois ramos e por que = não compara igual a ==
O caso
Se chove, guarda-chuva. Se não chove, nada. Isso já é um condicional.
Em 10 minutos você vai ler qualquer «se… então… senão…» como uma máquina: condição, ramo sim e ramo não. E vai aprender a escapar da armadilha do = frente ao ==.
O que você vai aprender
- Explicar o que decide uma condição
- Prever o ramo sim ou o ramo não de qualquer regra
- Detectar o erro de usar = em vez de ==
A encruzilhada
Um condicional é uma encruzilhada com duas saídas. Todo programa e toda regra que decide funcionam assim.
Condição
A pergunta que só admite sim ou não.
Ramo sim
O que acontece se a condição se cumprir.
Ramo não
O que acontece se não se cumprir (else).
Armadilha
Comparar bem: = atribui, == compara.
Perguntas frequentes
O que é um condicional em poucas palavras?
Uma pergunta com duas saídas: se a condição se cumpre segue-se um ramo e se não, o outro. Não há terceira opção.
Por que «1 = 1» dá erro em muitas linguagens?
Porque = serve para atribuir um valor, não para comparar. Para perguntar se duas coisas são iguais usa-se ==.
Teste você mesmo: Teste-relâmpago: caminhos claros
Uma condição só pode decidir…
Resposta certa: se se cumpre ou não se cumpre: dois ramos.
Uma condição é uma pergunta de sim ou não. Sua resposta escolhe entre o ramo sim e o ramo não.
Idade 17 e a regra idade >= 18. Entra?
Resposta certa: Não: 17 não atinge os 18.
A condição compara com 18: 17 >= 18 é falso, então o ramo não é executado e não entra.
Saldo 20, preço 20, saldo >= preço. Compra?
Resposta certa: Sim: 20 alcança para pagar 20.
O operador >= inclui a igualdade: 20 >= 20 é verdadeiro, o ramo sim se abre e compra.
A regra de bolso — Todo condicional pergunta uma coisa com duas saídas: cumpre-se → um ramo, não cumpre-se → o outro. Comparar usa ==; = só atribui.
O que você leva
Prever o que faz um condicional (se…, senão…) em qualquer caso, sem hesitar.