Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Desafio: Hora da Pratica 3

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade
Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade
Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Ei! Tudo bem, Leila?

Parabéns pela resolução do desafio de programação e pela prática com as estruturas condicionais em Python! Seus códigos estão muito bem estruturados e mostram que você pegou direitinho a lógica dos operadores lógicos e blocos condicionais.

Na questão 4, o programa pede três preços médios de carros. Mas, os valores digitados foram lidos pelo Python como textos (strings) e não como números.

Quando comparamos textos usando os operadores > ou <, o Python não olha o valor matemático, mas sim a ordem alfabética caractere por caractere. Por isso, no seu teste, ele apontou que o preço mais alto foi 7000.00 (porque o caractere '7' vem depois do caractere '1' de 10000000.00).

Uma forma de corrigir isso é converter a entrada do usuário usando float().

Veja como fica o código:

ano1 = float(input("Digite o preço médio do carro no primeiro ano: "))
ano2 = float(input("Digite o preço médio do carro no segundo ano: "))
ano3 = float(input("Digite o preço médio do carro no terceiro ano: "))

maior = ano1
if ano2 > maior:
    maior = ano2
if ano3 > maior:
    maior = ano3

menor = ano1
if ano2 < menor:
    menor = ano2
if ano3 < menor:
    menor = ano3

print("O preço mais alto foi", maior, "e o preço mais baixo foi", menor)

Saída:

Digite o preço médio do carro no primeiro ano: 50000.00
Digite o preço médio do carro no segundo ano: 7000.00
Digite o preço médio do carro no terceiro ano: 10000000000.00
O preço mais alto foi 10000000000.0 e o preço mais baixo foi 7000.0

Fazendo essa pequena alteração, o Python passará a comparar os valores matemáticos corretamente! As demais questões (como a verificação de triângulos, vogais e turnos) ficaram ótimas.

Você conseguiu entender essa diferença entre comparar textos e números no Python?

Conteúdos para complementar seus estudos
Esse conteúdo pode estar em inglês, para traduzi-lo utilize o tradutor automático do navegador ou clique com o botão direito do mouse sobre a página e selecione a opção Traduzir para o português.
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!