FinSi 
FinSi 
FinSi 
Si erreur=1 Alors 
Ecrire "Date incorrecte" 
Sinon 
Ecrire "Date correcte" 
FinSI 
Fin
c. L’heure dans n secondes 
Le but de l’algorithme est cette fois de déterminer l’heure qu’il sera dans n secondes. Pour ça, l’utilisateur doit saisir 
l’heure actuelle décomposée en heures (sur 24 heures), minutes et secondes. Bien entendu, il faut tenir compte du 
changement de jour, d’heure, de minute, sans oublier qu’il y a 60 minutes dans une heure et 60 secondes dans une 
minute. Par exemple, en additionnant 147 secondes à 23 heures, 58 minutes et 12 secondes, quelle heure sera­t­il ? 
Il sera minuit, 0 minute et 39 secondes le lendemain ! Dans l’algorithme vous utiliserez des valeurs entières. Ainsi le 
résultat des divisions sera un entier et non un réel (par exemple 159/60=2,65 mais avec un entier vous récupérerez 
seulement 2). 
q Dans un premier temps, additionnez les secondes : 147+12=159 
q Ensuite,  convertissez  ces  secondes  en  minutes.  Pour  cela  il  suffit  de  diviser  par  60  pour  récupérer  les 
minutes,  puis  de  récupérer  le  reste  de  la  division  entière  (le  modulo)  pour  les  secondes  en  trop  (159/60 
donne 2 minutes avec un reste de 39 secondes. Vous savez maintenant que la fin est de 39 secondes. 
q Additionnez  les  minutes  :  58+2= 60.  Si  le  chiffre  est  supérieur  ou  égal  à  60,  procédez  comme  pour  les 
secondes. 60/60=1, soit une heure supplémentaire, et un reste de 0 donc 0 minute. Vous savez maintenant 
que le milieu est 0 minute. 
q Additionnez les heures : 23+1=24 soit minuit. Là encore l’idéal est de compter les jours. Ainsi 24/24=1 (soit 
+1 jour), sans reste donc 0 heure : minuit. 
Il sera donc minuit et 39 secondes. 
PROGRAMME heure 
VAR 
jours,heures,minutes,secondes,nbsec:entiers 
DEBUT 
heures←17 
minutes←55 
secondes←48 
Afficher "Combien de secondes en plus ?" 
Saisir nbsec 
secondes←secondes+nbsec 
 
minutes←minutes+(secondes / 60) 
secondes←secondes % 60 
 
heures←heures+(minutes / 60) 
minutes←minutes % 60 
jours←heures / 24 
heures←heures % 24 
 
Afficher jours, heures, minutes, secondes 
FIN
L’implémentation  en  Java  ne  nécessite  pas  de  commentaires  particuliers.  L’affichage  final  est  juste  un  peu  plus 
agréable. 
import java.io.*; 
class chap3_heure { 
public static void main(String[] args) { 
int jours=0,heures, minutes, secondes,nbsec=0; 
Le simple est­il meilleur ?
- 12 -
© ENI Editions - All rigths reserved - Jonifar lina
58
Précédent

- 58/220

Suivant