|
La commande write permet d'afficher du texte et de
laisser le curseur à la fin du texte affiché. Cette commande permet d'afficher des chaînes de caractères
d'excédant pas 255 signes ainsi que des valeurs de variables, de constantes, de types... Le texte doit être entre
apostrophe. Si le texte à afficher contient une apostrophe, il faut alors la doubler. Les différents noms de variables
doivent êtres séparés par des virgules.
Note : toute commande doit être suivie d'un point virgule.
Syntaxe :
Write ('Texte à afficher', variable1, variable2, 'texte2') ;
Write ('L''apostrophe se double.') ;
La commande WriteLn est semblable à la
précédente à la différence près que le curseur est maintenant renvoyé à la ligne
suivante.
Syntaxe :
WriteLn ('Texte avec renvoi à la ligne') ;
La commande read permet à l'utilisateur de
rentrer une valeur qui sera utilisée par le programme. Cette commande ne provoque pas de retour Chariot, c'est-à-dire
que le curseur ne passe pas à la ligne.
Syntaxe :
Read (variable) ;
La commande ReadLn permet à l'utilisateur de
rentrer une valeur qui sera utilisée par le programme. Cette commande provoque le retour Chariot, c'est-à-dire que le
curseur passe à la ligne suivante. Lorsqu'aucune variable n'est affectée à la commande, il suffit de presser sur
<ENTREE>.
Syntaxe :
ReadLn (variable1, variable2) ;
ReadLn ;
Program exemple1;
Var nom : String ;
BEGIN
Write('Entrez votre nom : ') ;
ReadLn(nom) ;
WriteLn('Votre nom est ', nom) ;
ReadLn ;
END.
Ce programme exemple1 déclare tout d'abord la variable nommée nom
comme étant une chaîne de caractère (String). Ensuite, dans
le bloc programme principal, il est demandé à l'utilisateur d'affecter une valeur à la variable nom
qui est initialisée automatiquement (valeur nulle) à chaque démarrage du programme. Ensuite, il y a affichage de la
valeur de la variable et attente que la touche entrée soit validée (ReadLn).
L'équivalent de la commande ReadLn est
ReadKey qui donne une valeur à une variable de type
Char (caractère ASCII).
Syntaxe :
x := ReadKey ;
Il existe une équivalence à cette commande très utile pour sortir d'une boucle :
KeyPressed.
Syntaxe :
Repeat
... commandes ...
Until KeyPressed ;
Program exemple2 ;
Uses crt ;
Var i : integer ;
Const bornesup=10000 ;
BEGIN
Repeat
WriteLn(sqrt(i)) ;
Inc(i) ;
Until (i=bornesup) or KeyPressed ;
END.
Ce programme exemple2 répète une boucle jusqu'à qu'une valeur soit atteinte (bornesup) mais
s'arrête si on appuie sur une touche. L'instruction Inc(a,n); incrémente la valeur n à la
variable a (par défault n vaut 1), cette dernière étant de type integer.
|