Conversion en secondes

Exercice tiré de Progalgo de Julien de Villèle.

Exercice

Compléter la fonction secondes ci-dessous pour qu'elle convertisse en secondes un triplet (heure h, minutes m, secondes s). On donne : * des préconditions que doivent vérifier les valeurs de h, m et s * un jeu de tests unitaires : des postconditions sur les valeurs renvoyées par la fonction dans certains cas.

🐍 Script Python
def secondes(h,m,s): 
    """Signature secondes(h:float,m:float,s:float)->float"""  
    #préconditions
    assert h >= 0 and m >= 0 and s >= 0            
    return "à compléter"

assert secondes(1,1,1) == 3661
assert secondes(1,0,1) == 3601
###
benchmark = ['secondes(1,1,1)== 3661', bksl-nl'secondes(1,0,1) == 3601', bksl-nl'secondes(0,0,1) == 1',bksl-nl'secondes(0,1,0) == 60',bksl-nl'secondes(1,1,0) == 3660',bksl-nl'secondes(1,2,3) == 3723']bksl-nlbksl-nl 5/5

def secondes(h,m,s): bksl-nl """Signature secondes(h:float,m:float,s:float)->float""" bksl-nl #préconditionsbksl-nl assert h >= 0 and m >= 0 and s >= 0 bksl-nl return "à compléter"bksl-nlbksl-nlassert secondes(1,1,1) == 3661bksl-nlassert secondes(1,0,1) == 3601bksl-nlbksl-nl# Solution 1bksl-nlbksl-nldef secondes(h,m,s): bksl-nl """Signature secondes(h:float,m:float,s:float)->float""" bksl-nl #préconditionsbksl-nl assert h >= 0 and m >= 0 and s >= 0 bksl-nl return h py-str 3600 + m py-str 60 + s bksl-nlbksl-nl

A

Z