Bonjour/Bonsoir !
Voici l’énoncée d'un exercice dont j'ai la correction, mais je ne trouve pas qu'elle soit totalement juste, vous me corrigerez si je me trompe svp !
cet algorithme doit demander une heure et en afficher une autre.Il doit gérer les secondes, et afficher l'heure qu'il sera une seconde plus tard.
Par exemple, si l'utilisateur tape 21, puis 32, puis 8, l'algorithme doit répondre : "Dans une seconde, il sera 21 heure(s), 32 minute(s) et 9 seconde(s)".
NB n suppose que l'utilisateur entre une date valide.
La correction donnée est la suivante:
Variables h, m, s en Numérique
Début
Ecrire "Entrez les heures, puis les minutes, puis les secondes : "
Lire h, m, s
s ← s + 1
Si s = 60 Alors
s ← 0
m ← m + 1
FinSi
Si m = 60 Alors
m ← 0
h ← h + 1
FinSi
Si h = 24 Alors
h ← 0
FinSi
Ecrire "Dans une seconde il sera ", h, "h", m, "m et ", s, "s"
Je suis d'accord en tout point avec ce corrigé sauf un, pour moi on devrait mettre S=59 dans la première condition, m=59 dans la deuxième et pour la troisième non pas h=24, mais(h=23 ET m=59 et s=59), selon moi ce n'est que comme ça que en ajoutant une seconde on obtient les bonnes heures.
Voici mon propre corrigé:
Variables h,m,s en ENTIER
Début
Ecrire"entrez une heure valide"
Lire h,m,s
s<---s+1
Si S=59 Alors
s<---0
m<---m+1
Finsi
Si m=59 Alors
h<---h+1
m<---0
s<---0
Finsi
Si h=23 ET m=59 ET s=59 Alors
h<---0
m<---0
s<---0
Finsi
Ecrire "dans une seconde il sera",h,"heure(s)",m,"minute(s )",s,"seconde(s)"
Fin
Merci d'avance !
-----