Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Resolução da questão 4 (Aula 3) - Todas as situações testadas ;)

v1 = float(input('Digite o preço médio para o primeiro ano: '))
v2 = float(input('Digite o preço médio para o segundo ano: '))
v3 = float(input('Digite o preço médio para o terceiro e último ano: '))

if (v1 > v2 and v1 > v3):
  maxi = v1
  if (v2 > v3):
    mini = v3
  else:
    mini = v2
if (v2 > v1 and v2 > v3):
  maxi = v2
  if (v1 > v3):
    mini = v3
  else:
    mini = v1
if (v3 > v1 and v3 > v2):
  maxi = v3
  if (v1 > v2):
    mini = v2
  else:
    mini = v1

if (v1 == v2 and v1 > v3):
  maxi = v1
  mini = v3
elif (v1 == v2 and v1 < v3):
  maxi = v3
  mini = v1
if (v1 == v3 and v1 > v2):
  maxi = v1
  mini = v2
elif (v1 == v3 and v1 < v2):
  maxi = v2
  mini = v1
if (v2 == v3 and v2 > v1):
  maxi = v2
  mini = v1
elif (v2 == v3 and v2 < v1):
  maxi = v1
  mini = v2

if (v1 == v2 == v3):
  print('Todos os preços fornecidos são iguais.')
else:
  print(f'Maior preço fornecido: {maxi}. \nMenor preço fornecido: {mini}.')
  
2 respostas
solução!

Olá, Daniel! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de condicionais para comparar valores, utilizou muito bem a lógica de igualdade para tratar casos específicos e ainda compreendeu a importância da ordenação dos resultados para exibir corretamente o maior e o menor preço.

Uma dica interessante para o futuro é simplificar a lógica utilizando as funções max() e min(). Assim:

v1 = float(input('Digite o preço médio para o primeiro ano: '))
v2 = float(input('Digite o preço médio para o segundo ano: '))
v3 = float(input('Digite o preço médio para o terceiro ano: '))

valores = [v1, v2, v3]
print(f"Maior preço fornecido: {max(valores)}")
print(f"Menor preço fornecido: {min(valores)}")

Isso faz a comparação automática dos valores, reduzindo a quantidade de condicionais necessárias.

Uma outra forma de fazer seria assim:

preco_ano1 = float(input('Informe o preço médio do carro no primeiro ano: '))
preco_ano2 = float(input('Informe o preço médio do carro no segundo ano: '))
preco_ano3 = float(input('Informe o preço médio do carro no terceiro ano: '))

# Determinamos o maior valor através de comparações
maior = preco_ano1
if preco_ano2 > maior:
  maior = preco_ano2
if preco_ano3 > maior:
  maior = preco_ano3

# Determinamos o menor valor através de comparações
menor = preco_ano1
if preco_ano2 < menor:
  menor = preco_ano2
if preco_ano3 < menor:
  menor = preco_ano3

print(f'O preço mais alto foi de R$ {maior}.')
print(f'O preço mais baixo foi de R$ {menor}.')

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!

Olá, professor!

Muito obrigado pela dica das funções max e min.
E a solução com condicionais que vc postou é mais eficiente, pois faz o trabalho com menos linhas de código.