nSi,2022-2023, leçon 3 : les tuples en python

Proposition de correction des questions 2 à 4 :

def temps_secondes(temp):
    heure_en_s=temp[0]*3600
    mn_en_s=temp[1]*60
    s=temp[2]
    return heure_en_s+mn_en_s+s
    
def temps_h_mn_s(temp):
    heures=temp//3600
    reste=temp%3600
    minutes=reste//60
    secondes=reste%60
    return (heures,minutes,secondes)

donnees=(
 # ( nom du candidat, temps sous la forme (h,mn,s))
 ("Paul",(2,3,45)),
 ("Sandrine",(1,10,5)),
 ("Jacques",(2,0,15))
 )
def temps_en_s(var):
    tuple_temps_s=()
    for coureur in var:
        nom_coureur=coureur[0]
        temps_coureur_en_s=temps_secondes(coureur[1])
        tuple_temps_s+=((nom_coureur,temps_coureur_en_s),)
    return tuple_temps_s

course=(('Paul', 7425), ('Sandrine', 7102), ('Jacques', 7215))

def liste_temps(var):
    mon_tuple=()
    for coureur in var:
        temps=coureur[1]
        mon_tuple+=(temps,)
    return mon_tuple

def val_min(var): # premiere version de la fonction valeur minimale
    val_min=min(var)
    index=var.index(val_min)
    return val_min,index