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.
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
def secondes(h,m,s): backslash_newline """Signature secondes(h:float,m:float,s:float)->float""" backslash_newline #préconditionsbackslash_newline assert h >= 0 and m >= 0 and s >= 0 backslash_newline return "à compléter"backslash_newlinebackslash_newlineassert secondes(1,1,1) == 3661backslash_newlineassert secondes(1,0,1) == 3601backslash_newlinebackslash_newline# Solution 1backslash_newlinebackslash_newlinedef secondes(h,m,s): backslash_newline """Signature secondes(h:float,m:float,s:float)->float""" backslash_newline #préconditionsbackslash_newline assert h >= 0 and m >= 0 and s >= 0 backslash_newline return h * 3600 + m * 60 + s backslash_newlinebackslash_newline