Quais das seguintes expressões resultam em valores lógicos verdadeiros:
- “Açaí” ”sorvete”
Passo 1
Fala aí! Essa questão obriga a gente a lembrar dos operadores lógicos e suas aplicações. Vamos olhar pra uma expressão de cada vez e tentar identificar qual o resultado da expressão, se será True ou False, beleza? A questão pede os que serão True. Vamos começar analisando a primeira!
Nessa primeira, estamos comparando um número real (do tipo float) com um número inteiro. Com o uso do operador “menor que”, a gente tá perguntando se número da esquerda é menor que o número da direita. Com isso, a resposta é True! Pois 5.10 realmente é menor que 10, né?? Então! Por isso a resposta vai ser “sim”, e computadores dizem sim usando True, beleza?!
Show! Vamos pra segunda.
Passo 2
No segundo passo tem a comparação entre strings. Estamos perguntando se a String da esquerda é “maior” que a da direita, alfabeticamente falando. Essa pergunta pode ser traduzida pra “Açaí vem depois de sorvete na ordem alfabética?”. E, por isso, a resposta é não. False. Nesse caso, também é importante lembrar que todo alfabeto minúsculo é considerado maior que o maiúsculo, ok?! O “s” minúsculo vem depois do “A” maiúsculo na ordem alfabética, por isso é maior.
Vamos analisar o próximo item!
Passo 3
Olha, se a gente fizer essa conta de cabeça, parece que a resposta é True, né?! 0.1+0.2 realmente dá 0.3. Mas acontece que, nesse caso, a resposta é False. Isso acontece por causa da imprecisão dos números reais em Python. Lembra que em Python só as primeiras 16 casas são precisas? Então! Olha o que acontece se você somar 0.1+0.2:
Viu?! Esse número realmente não é igual a 0.3! Por isso a resposta é False. Cuidado quando você for fazer comparações de igualdade com números reais, ok?! Esse 4zinho ali com certeza ia te dar dor de cabeça!
Partiu analisar o último item!
Passo 4
Ih, rapaz! Essa opção não tem nenhum operador relacional. Mas cê lembra que True e False são apelidos pra 1 e 0, respectivamente? Isso porque os computadores reconhecem 0 como False, e True pra qualquer outro valor diferente de 0, ok?
Nesse código a gente tá transformando os valores em booleanos e depois exibindo o resultado. Se liga no que acontece depois que a gente executa:
Viu?! Só foi False quando a gente usou 0, e qualquer outro valor diferente de 0 foi considerado True, beleza?!
*** Observação: além do 0, o valor None também é considerado False, mas o valor None é inútil e por isso a gente finge que ele não existe, ok?!
Show! Acabamosss!
Resposta
Apenas a primeira e a última expressões retornam True.