Calculating minimum, maximum, mean and median in python

Asked

Viewed 3,970 times

3

Error in calculating minimum:

  File "C:/Users/Administrador/Desktop/chicago_bikeshare_pt.py", line 273, in <module>
    assert round(min_trip) == 60, "TAREFA 9: min_trip com resultado errado!"

Code:

# TAREFA 9
# TODO: Ache a duração de viagem Mínima, Máxima, Média, e Mediana.
# Você não deve usar funções prontas parTODO isso, como max() e min().
trip_duration_list = column_to_list(data_list, 2)
min_trip = 0
max_trip = 0
mean_trip = 0
median_trip = 0

print("\nTAREFA 9: Imprimindo o mínimo, máximo, média, e mediana")

itens = len(trip_duration_list)
total_tempo = 0

for v in range (0,itens):
     t = trip_duration_list[v]
     total_tempo = total_tempo+ int(t)
     if int(t) >= int(max_trip):
       max_trip = t
       if int(t) <= int(min_trip):
           min_trip = t

ordenada = trip_duration_list
ordenada.sort()

meio = int(itens/2)

median_trip = ordenada[meio]                        
mean_trip = round(total_tempo/itens)
print("Min: ", min_trip, "Max: ", max_trip, "Média: ", mean_trip, "Mediana: ", median_trip)

# ------------ NÃO MUDE NENHUM CÓDIGO AQUI ------------
assert round(min_trip) == 60, "TAREFA 9: min_trip com resultado errado!"
assert round(max_trip) == 86338, "TAREFA 9: max_trip com resultado errado!"
assert round(mean_trip) == 940, "TAREFA 9: mean_trip com resultado errado!"
assert round(median_trip) == 670, "TAREFA 9: median_trip com resultado errado!"
# -----------------------------------------------------
  • 1

    Check the indentation of the conditional that deals with the minimum value, it is within the conditional that deals with the maximum value - and that doesn’t make much sense.

  • Oi Anderson, corrected, but continues to present the same criticism.

1 answer

1

You cannot initialize min_trip with 0. By doing this, your code will never enter the condition:

if int(t) <= int(min_trip):

Initialize this value with a large, type value 9999999 or the first value of the list.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.