Ir ao conteúdo

Posts recomendados

Postado

Eu tenho um codigo:

dias = 365
temp = []
media = 0

for i in range(dias):
 temp.append(eval(input('Informe as temperatura do dia: ')))
temp = temp + dias
media = (temp[1] + dias) / 365
print('A media de temperatura do ano foi --> ', media)

 
e tenho como o boejeitvo de descobrir a Menor temperatura do ano e sua respectiva posição na lista como eu faço? alguma dica?

  • Obrigado 1
Postado

@Julia barros332    você pode amarrar um dado ao outro , assim quando encontrar a menor temperatura , guarde a posição dela em uma outra variável , e no enunciado não está pedindo para calcular e nem mostrar a média , então não precisa e nem pode fazer isso , e seu código com algumas modificações poderia ser assim  :

dias = 365
temp = []
media = 0
menor
pos

for i in range(dias):
  temp.append(eval(input('Informe as temperatura do dia: ')))
  temp = temp + dias
  media = (temp[1] + dias) / 365
  if i=0 then
    menor = temp
  if menor > temp then
    menor = temp
    pos = i
print('A menor temperatura do ano foi --> ', menor)
print('A posição na Lista é ',pos)

 

  • Membro VIP
Postado
Em 13/05/2020 às 14:41, Julia barros332 disse:

e tenho como o objetivo de descobrir a Menor temperatura do ano e sua respectiva posição na lista como eu faço? alguma dica?

 

@Julia barros332, creio que o cálculo para média anual esteja incorreta, mas não vem ao caso... qualquer coisa deixamos isso para outro tópico.

 

Uma dica interessante é subdividir o problema. Primeiro apenas colocar para exibir o menor! Só depois, parar para se preocupar em exibir o respectivo dia... perceba que esse último critério é apenas um complemento do primeiro.

 

Exemplo:

# dias = 365
dias = 5
temperatura = 0
menor = 999

for i in range(dias):
  temperatura = int(input('Informe as temperatura do dia: '))
  if temperatura < menor:
    menor = temperatura

print('\nA media de temperatura do ano foi --> ', menor)

Resultado:

Informe as temperatura do dia: 20
Informe as temperatura do dia: 23
Informe as temperatura do dia: 30
Informe as temperatura do dia: 19
Informe as temperatura do dia: 26

A media de temperatura do ano foi -->  19


Aparentemente tudo OK.

 

Daí, "para exibir a posição", bastaria ajustar o algoritmo para essa nova funcionalidade. Simplesmente basta "pegar" o número do dia, assim como sugerido por @devair1010. Exemplo:

# dias = 365
dias = 5
temperatura = 0
menor = 999
diaMenor = 0

for i in range(1, dias+1):
  temperatura = int(input('Informe as temperatura do dia: '))
  if temperatura < menor:
    menor = temperatura
    diaMenor = i

print('\nA media de temperatura do ano foi --> ', menor)
print('Ocorreu no dia', diaMenor)

 

Segue o mesmo código com pequenos ajustes nas nomenclaturas:

# dias = 365
dias = 5
temperatura = 0
temperaturaMenor = 999
diaMenor = 0

for dia in range(1, dias+1):
  temperatura = int(input('Informe as temperatura do dia: '))
  if temperatura < temperaturaMenor:
    temperaturaMenor = temperatura
    diaMenor = dia

print('\nA media de temperatura do ano foi --> ', temperaturaMenor)
print('Ocorreu no dia', diaMenor)

 

Como é "chato pra burro" ficar digitando valores, uma boa alternativa é gerar valores automaticamente. Exemplo:
 

  print('Informe a temperatura do dia', dia, ':', end = '')
  temperatura = random.randint(18, 33)
  print(temperatura)

 

Gerando assim, só mudar para 365 dias.

 

Obs.: como são muito dias, é praticamente 100% de chances do menor ser o mínimo que colocou para gerar (assim como o maior será o máximo).

 

Segue:

https://repl.it/@SimonViegas/menor-temperatura-do-ano

import random

dias = 365
# dias = 5
temperatura = 0
temperturaMenor = 999
diaMenor = 0

for dia in range(1, dias+1):
  # temperatura = int(input('Informe as temperatura do dia: '))
  print('Informe a temperatura do dia', dia, ':', end = '')
  temperatura = random.randint(18, 33)
  print(temperatura)
  
  if temperatura < temperturaMenor:
    temperturaMenor = temperatura
    diaMenor = dia

print('\nA media de temperatura do ano foi --> ', temperturaMenor)
print('Ocorreu no dia', diaMenor)

 

Para testar:

https://repl.it/@SimonViegas/menor-temperatura-do-ano

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!