Sommaire: Cours introduction au langage pascal
1 Commencons par un petit exemple
2 La partie des déclarations
2.1 Les differents types de base
2.2 Les operations qui preservent le type
2.3 Les operations qui rendent un type boolean
3 La partie algorithme
3.1 Interface avec l’utilisateur
3.2 Les a ectations
4 Controle de linux
4.1 Execution conditionnelle
4.2 Les blocs d’instructions
4.3 Les boucles sur des types enumeres
4.4 Les boucles while et repeat
5 D’autres types
5.1 Types enum eres non standards
5.2 Les types interv alles
5.3 L’instruction CASE
6 Les tableaux
6.1 Les tableaux de tableaux
6.2 Les types de tableaux
6.3 Les chaines de caracteres
6.4 Les constantes
7 F onctions et procedures
7.1 Introduction
7.2 Declaration des fonctions, ranement
7.3 Les procedures
7.4 Les fonctions
8 Algorithmes recursifs
8.1 Des exemples bien connus
8.2 Arret d’une fonction recursive
8.2.1 Le probleme
8.2.2 Graphe de dependance d’une fonction recursive
8.2.3 F onctions mutuellement de nies
8.2.4 T aille en memoire lors d’un calcul recursif
9 Conclusion : F orme d’un programme Pascal
Extrait du cours introduction au langage pascal
1 Commencons par un petit exemple…
PROGRAM circonference;
VAR rayon, circonference : REAL;
BEGIN
readln(rayon);
circonference:=rayon*2*3.1416 ;
writeln(rayon,circonference);
END.
Ce programme demande a un utilisateur de taper un nombre, et il rend ce nombre et la circonference d’un cercle dont ce nombre est le rayon. Ce n’est pas trop complique. On peut tout de suite identier les parties les plus importantes.Il y a d’abord le squelette du programme :
PROGRAM … ;
(* Calcul de la circonference d’un cercle *)
VAR …. ;
BEGIN
…
END.
1. La partie PROGRAM…; sert a donner un nom au programme ;
2. la partie (*…*) sert a donner des commentaires. Ils sont essentiels pour comprendre ce que fait un programme. Ils ne sont pas facultatifs ;
3. la partie VAR…; sert a declarer les variables dont on aura besoin plus tard ;
4. la partie BEGIN … END. contient ce que le programme fait. C’est la partie qui contient l’algorithme.
Elle se termine par un point \. ». C’est la partie algorithme du programme.
On va maintenant voir plus en d etail ces di erentes parties. Je ne reviens pas sur le nom du programme.
2 La partie des d eclarations
2.1 Les di erents types de base
VAR rayon, circonference : REAL;
On d eclare que dans l’algorithme, on utilise deux variables, qu’on appelle rayon et diametre. En plus, on d eclare que ces deux variables sont de types REAL. Cela signie qu’on pourra les utiliser un peu comme des nombres r eels. Mais il y a d’autres types qui sont d enis :
1. le type integer. Il s’agit du type des nombres qui sont des entiers relatifs ;
2. le type boolean. Il s’agit du type des bool eens. Ces variables ne peuvent prendre que 2 valeurs,TRUE (vrai) ou FALSE (faux) ;
3. le type char. Il s’agit du type qui contient les caract eres. Une variable de ce type peut avoir la valeur ‘A’, ‘b’, ‘7’,… Le 7 d’une variable de type char est un caract ere. Il n’est pas question de faire des op erations dessus !
2.2 Les op erations qui pr eservent le type
On utilise le typ e d’une expression pour savoir qu’elles op erations on peut appliquer.
Sur les types de nombres, on a toujours +, -, et *. Question :
que signie 3/5 ? (division euclidienne ou r eelle ?)
On voit que la division ne voudra pas dire la m^ eme chose pour les integer et pour les real.
Pour les integer, on utilise la division euclidienne. Autrement dit, on s epare en reste et en partie entiere. Par exemple, 17 = 3 5 + 2. Sur les entiers, on d enit les 2 op erations div et mod, qui auront pour valeur :
1. 17 mod 3 a pour valeur 2 ;
2. 17 div 3 a pour valeur 5.
Pour les real, on utilise le symbole standard de division, /. Il n’y a pas de surprises. Il est possible de faire des op erations m elant des real et des integer. Dans ce cas, les deux op erandes sont consid er es de type real.
Sur les caract eres, il n’y a pas d’op erations possibles. Mais ils sont cod es dans le code ASCII. Il faut faire attention, car tous les caract eres n’y sont pas, il n’y en a que 256. L’int er^ et est qu’il est possible de passer d’un entier entre 0 et 255 a un caract ere, en utilisant la fonction CHR. Par exemple, on a:
CHR(67) prend la valeur ‘C’ ;
CHR(51) prend la valeur ‘3’.
Sur les bool eens, on a les op erations classiques de logique, AND, OR, NOT, ainsi que l’op eration XOR.
…….
Formation approfondie introduction au langage pascal (304 KO) (Cours PDF)