} 
 
public static void main(String[] args) { 
int nb; 
for(nb=1;nb<=10;nb++) RepeteCar(nb,’*’); 
} 
}
Voici en Java une reprise des structures hms et des fonctions hms_to_sec() et sec_to_hms(). Il n’y a pas de difficulté 
dans cette implémentation. 
class hms { 
int heures; 
int minutes; 
int secondes; 
} 
 
class chap6_secondes { 
static int hms_to_sec(hms duree) { 
int total; 
total=duree.heures*3600+duree.minutes*60+duree.secondes; 
return total; 
} 
 
static hms sec_to_hms(int nbsec) { 
hms duree=new hms(); 
duree.heures=nbsec/3600; 
nbsec=nbsec%3600; 
duree.minutes=nbsec/60; 
duree.secondes=nbsec%60; 
 
return duree; 
} 
public static void main(String[] args) { 
int nb_secondes, nb_secondes1,nb_secondes2; 
hms heures=new hms(); 
 
// exemple 1 
nb_secondes=39450; 
heures=sec_to_hms(nb_secondes); 
System.out.println(heures.heures+":"+heures.minutes+":" +heures.secondes); 
 
// exemple 2 
nb_secondes1=3950; 
nb_secondes2=hms_to_sec(sec_to_hms(nb_secondes1)); 
System.out.println(nb_secondes2); 
} 
}
d. Petite application fonctionnelle 
Pour finir, ces deux fonctions sont plus pratiques qu’il n’y paraît. Grâce à elles, vous pouvez très facilement trouver le 
temps écoulé entre une première heure et une seconde heure. Le principe est des plus simples : 
q Vous saisissez deux horaires dans des enregistrements hms. 
q Vous les convertissez en nombre de secondes. 
q Vous faites la différence entre ces deux nombres. 
q Vous convertissez le résultat en enregistrement hms. 
Dit comme ceci, ça pourrait sembler un peu compliqué si les fonctions n’existaient pas. Vous avez donc besoin de la 
définition  du  type  structuré  hms  et  des  deux  fonctions  nbsec_to_hms  et  hms_to_nbsec.  Vous  n’avez  même  pas 
besoin de variables pour y placer les nombres de secondes. Une seule ligne avec les bons paramètres suffit à s’en 
- 11 -
© ENI Editions - All rigths reserved - Jonifar lina
134
Précédent

- 134/220

Suivant