Faire attendre le programme
Un ordinateur va très vite : il affiche cent lignes en un clin d'œil. Parfois, on veut au contraire prendre son temps, pour créer du suspense ou laisser le temps de lire. C'est le rôle de pause.
L'instruction pause
pause arrête le programme pendant un nombre de millisecondes. Il y a 1 000 millisecondes dans une seconde.
affiche 'À vos marques...'
pause 1000
affiche 'Prêts...'
pause 1000
affiche 'Partez !'
Chaque ligne apparaît une seconde après la précédente. Sans les pauses, les trois lignes s'afficheraient en même temps.
pause s'écrit sans parenthèses, et la durée est comprise entre 30 et 3 000 millisecondes. Pour attendre plus de 3 secondes, enchaîne plusieurs pauses.
Question : Que faut-il écrire pour attendre une demi-seconde ? — pause 500. La durée est en millisecondes : une demi-seconde vaut 500 millisecondes, sans parenthèses.
Un compte à rebours
Avec une boucle qui compte à l'envers :
pour i de 5 à 1 pas -1
affiche i
pause 1000
fin pour
affiche 'Décollage !'
Du suspense
Dans un jeu, une pause avant d'annoncer le résultat change tout :
secret est un nombre vaut hasard(1, 3)
choix est un nombre
affiche 'Sous quel gobelet est la bille ?'
choisir ['Gobelet 1', 'Gobelet 2', 'Gobelet 3'] dans choix
affiche 'Je soulève le gobelet ' + choix + '...'
pause 1500
si choix = secret alors
affiche 'Gagné, la bille est là !'
sinon
affiche 'Raté ! Elle était sous le gobelet ' + secret + '.'
fin si
Une barre de progression
repeter_texte(texte, n) répète un texte n fois. Avec une pause, on simule un chargement :
barre est un texte
pour i de 1 à 10
barre vaut repeter_texte('#', i) + repeter_texte('.', 10 - i)
affiche barre + ' ' + (i * 10) + ' %'
pause 300
fin pour
affiche 'Chargement terminé.'
À chaque tour, il y a un # de plus et un point de moins : la barre semble se remplir.
Un minuteur
duree est un nombre
demande 'Combien de secondes ? ' dans duree
tant que duree > 0
affiche 'Il reste ' + duree + ' s'
pause 1000
duree soustrait 1
fin tant que
affiche 'Dring ! Le temps est écoulé.'
Pour une animation fluide sur une toile, on utilise de très courtes pauses, entre 30 et 60 millisecondes : c'est le sujet du cours « Animer et créer un mini-jeu ».
En résumé
pause 1000 attend une seconde ; la durée est en millisecondes.- La durée va de 30 à 3 000 millisecondes, sans parenthèses.
- Les pauses rythment l'affichage : compte à rebours, suspense, barre de progression.
repeter_texte(texte, n) répète un texte n fois.