A.15 Gestion du temps

XLOGOdispose de plusieurs primitives permettant de connaître l’heure, la date ou encore de gérer des comptes à rebours (utiles pour répéter une tâche à des intervalles fixés).



attends n



Bloque le programme et donc la tortue pendant n 60ème de secondes.



debuttemps n



Lance un compte à rebours de n secondes. On peut savoir si le compte à rebours est terminé à l’aide de la primitive fintemps?



fintemps ?



Rend "vrai si aucun compte à rebours n’est actif. Rend "faux si le compte à rebours n’est pas terminé.



date



Renvoie une liste formé de trois entiers représentant la date. Le premier indique le jour, le second le mois et le dernier l’année. —> [jour mois année]



heure



Renvoie une liste de trois entiers représentant l’heure. Le premier entier représente les heures, le second les minutes et le dernier les secondes. —> [heure minute seconde]



temps



Renvoie le temps écoulé depuis le démarrage de XLOGO. Ce temps est exprimé en secondes.



Voici une petite procédure exemple :
 pour horloge
 # affiche l’heure sous forme numérique
 # (on actualise l’affichage toutes les 5 secondes)
 si fintemps? [
 ve
 fixepolice 75 ct
 donne "heu heure
 donne "h premier :heu
 donne "m item 2 :heu
 #affichage à deux chiffres des minutes (on rajoute le 0)
 si :m-10<0 [donne "m mot 0 :m]
                                                                                                  
                                                                                                  
 donne "s dernier :heu
 #affichage à deux chiffres des secondes
 si :s-10<0 [donne "s mot 0 :s]
 etiquette mot mot mot mot :h ": :m ": :s
 debuttemps 5
 ]
 horloge
 fin