Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Capítulo 3, exercício 5

No exercício 5 do capítulo 3 do curso Python 3 parte 1 (Testando valores), tive a seguinte dúvida: O professor apresentou o seguinte código como resolução (para comparação):

print("*") print("Bem vindo ao jogo de Adivinhação!") print("*")

numero_secreto = 42

chute_str = input("Digite o seu número: ") print("Você digitou " , chute_str) chute = int(chute_str)

acertou = chute == numero_secreto maior = chute > numero_secreto menor = chute < numero_secreto

if(acertou): print("Parabéns! Você acertou!") else: if(maior): print("O seu chute foi maior do que o número secreto!") elif(menor): print("O seu chute foi menor do que o número secreto!")

print("Fim do jogo")

Contudo, como gosto de inspecionar cada detalhe, surgiu uma dúvida. Como podem ver abaixo, meu código, que funcionou perfeitamente foi feito com dois elif e um else.

print("*") print("Bem vindo ao jogo de Adivinhação!") print("*")

numero_secreto = 42

chute_str = input("Digite o seu número: ") print("Você digitou: ", chute_str) chute = int(chute_str)

acertou = chute == numero_secreto maior = chute > numero_secreto menor = chute < numero_secreto

if (numero_secreto == chute): print("Você acertou!") elif (maior): print("O chute foi maior que o número secreto!") elif (menor): print("O seu chute foi menor que o número secreto") else: print("Você errou!")

print("Fim do jogo")

A dúvida é: Há diferença prática em usar a estrutura de condicionais (if...else) como a da solução do professor comparado com a minha solução?

1 resposta
solução!

Fala, Pedro Henrique! Tudo bem?

Na verdade o uso do elif até mesmo melhora a legibilidade do código, o deixa mais semântico.

Mas na prática não há diferença, só precisamos nos atentar sempre a estrutura do código e garantir que if e else apareçam na ordem correta.

Continue praticando.

Bons estudos e até mais! =)