Les
fonctions de base
Règles de bases :
Le langage pascal (Turbo en est une extension qui
ajoute la programmation orientée objet) est créée à partir de mots en
américain : begin, produre, function, end, ... Je vous propose d'en apprendre
les principales. Pour commencer, sachez que ce langage ne fait pas la
distinction entre les majuscules et les minuscules : BeGIN, begin,
BEGIN, bEgIn sont tous exacts. Le retour à la ligne n'est pas
obligatoire, seul le point virgule ";" l'est pour délimiter
les fonctions (mais l'éditeur de texte de Turbo Pascal 7.0 demande à ne
pas écrire de lignes trop longues tout de même), c'est à dire :
var i: LongInt; begin for i := 0 to 9 do begin WriteLn (i,' ',chr(i));
Writeln (i,'² = ',i*i); end; end.
est accepté, ... mais illisible à mon goût, un compilateur informatique,
le préfèrera peut-être à :
var
i: LongInt;
begin
for i := 0 to 9 do begin
Writeln (i,' ',chr(i));
Writeln (i,'² = ',i*i);
end;
end.
Personnellement j'utilise des majuscules, un retour
à la ligne après chaque fonction et j'ajoute 2 espaces au début de chaque
groupe d'instructions. C'est plus agréable à lire, et ça facilite la compréhension
du programme.
Fonctions begin, end, procedure et WriteLn :
La fonction "begin" est la fonction
mère d'un programme : tout programme commence par "begin", qui
d'ailleurs signifit "commence" en américain. La fonction "end"
(fin) est obligatoirement complémentaire de "begin", cette fonction
clôt la procédure. Voici un exemple (c'est toujours plus parlant) :
procedure Aurevoir;
begin
Writeln ('Aurevoir');
end;
begin
Writeln ('Salut toi !');
Aurevoir;
end.
(Téléchargez l'exemple : Salut.pas)
Vous voyez donc que la fonction "begin" indique que le
code (les instructions) commence et la fonction "end"
clôt ce code. Remarque : la fonction "end" est terminée
par ";" (fin d'instruction), sauf pour l'ultime "end",
celui qui ferme le programme, il est suivit par un point : "end.".
Mais revoyons ce court programme :
procedure Aurevoir;
begin
Writeln ('Aurevoir');
end;
begin
Writeln ('Salut toi !');
Aurevoir;
end.
Le texte sur fond vert (begin
...), est la procédure principale, elle n'est pas déclarée par
la fonction "procedure Principale;", on la distingues des autres
procédures car c'est la dernière procédure du code source et elle se termine
par "end." (et non "end;").
Le texte sur fond jaune (procedure
...) est une procédure. Toute procédure comme par la fonction "procedure
NomProcedure;" où NomProcedure est (vous l'avez compris) le nom de
la procédure. Il faut ensuite introduire la fonction "begin"
et ne pas oublier "end;".
La fonction "WriteLn" signifit (dans ce cas)
que ce qui suit doit être affiché à l'écran.
Enfin la fonction "Aurevoir;" a été crée
par moi-même, c'est en fait une procédure que j'appelle.
Fonction WriteLn (en détail) et les variables :
La fonction "Write" est une des
fonctions les plus utilisées dans Turbo Pascal. Elle permet à la fois
d'écrire du texte à l'écran (Write ('Salut !');), écrire dans un fichier
en mode texte (Write (F, 'Texte sans importance ...');) et écrire dans
un périphérique définit (écran, fichier ou autre : Write (Periph, 'Rien
du tout');). En fait, Turbo Pascal s'occupe de comprendre pour qui est
l'information est créer une procédure appropriée : pour l'écran une procédure
qui modifie la VRAM, pour
les fichiers une procédure qui appelle les procédures DOS.
Si on lui ajoute les caractères "LN", elle va à la ligne suivant
après avoir écrit ses données.
Reprenons un exemple :
WriteLn ('Salut
toi !');
Vous avez sur fond jaune (WriteLn
() ) la fonction : introduite par son
nom : "WriteLn", puis ses paramètres entre parenthèses.
Les paramètres, sur fond bleu ('Salut
toi') sont ici une chaîne de caractères. Les chaînes de caractères
sont délimitées par le caractère >'< (un au début, un à la fin).
La fonction est terminé par le conventionnel point virgule : ";".
Les paramètres peuvent de tout type : chaîne de caractère, un caractère,
un nombre, une variables, ... En voici des exemples :
var
txt: String;
i: Byte;
begin
WriteLn ('Haypo !'); { Ecrit une chaîne de caractère
}
WriteLn (10); { Ecrit le nombre 10 }
WriteLn ('dix = ',10); { Mélange de chaîne de caractère
et de nombre }
txt := 'Haypo Power !!!';
WriteLn (txt); { Ecrit le contenu de la variable "txt"
}
i := 123;
WriteLn (i); { Ecrit le contenu de la variable "i"
}
end.
(Télécharger l'exemple : Writeln.pas)
Tient, voici des nouveaux mots : "var", "string"
et "byte". Ho ! Des "{" et des "}" ! Explications
: "var" introduit les "variables". Une variable
est un petit morceau de mémoire où on peut y stocker un certain type de
donnée. Justement "string" et "byte"
sont deux types de données : "string" est une chaîne de caractères
et "byte" est un octet (un nombre positif ayant une valeur entre
0 et 255). Les caractères "{ }" délimitent des commentaires.
Les commentaires sont des textes qui ne sont pas interprétés lors
de la compilation du code source, ils sont simplement passés. Ils sont
vitaux pour la compréhension du code source, par exemple la variable "NbrOctetLigne"
n'est pas très clair, alors que si on ajoute le commentaire "{ Nombre
d'octet par ligne de l'écran vidéo }", tout est plus clair.
Retour aux tutoriels
Par Haypo
|