0
INTRODUCTION
Un programme informatique se compose d’une série d’instructions, qui sont
exécutées successivement par l’ordinateur. Lors de la création d’un programme, il
est nécessaire d’y inclure les instructions correspondant à la tâche qu’on souhaite
voir accomplie par l’ordinateur. Le processus consistant à définir les instructions,
devant être exécutées par l’ordinateur, se nomme programmation.
Beaucoup de langages de programmation sont apparus au fil des années en
commençant par les langages intimement liés à la machine (langage machine et
assembleur), viennent après les langages dits évolués : interprétés tels que Basic et
compilés tels que Pascal et C.
Langage Pascal
Le langage Pascal est un langage de programmation de haut niveau. Il a été conçu
par le professeur WIRTH à Zurich en 1970 comme une aide à l’enseignement de la
programmation structurée.
Langage C
Le langage C a été créé en 1972 par Denis RITCHIE avec un objectif relativement
limité : écrire un système d’exploitation (UNIX). Mais, ses qualités opérationnelles
l’ont très vite fait adopté par une large communauté de programmeurs.
Langage Pascal
L’enseignement de l’informatique se répand de plus en plus dans les
établissements scolaires et pour toutes les options, à l’université, aux écoles
d’ingénieurs, plus récemment dans les lycées et collèges et même dans les écoles
primaires privées.
En particulier, l’enseignement de l’algorithmique et de la programmation est, et
reste toujours un passage obligatoire pour la formation des futurs informaticiens.
Malgré l’apparition d’autres systèmes de programmation très évolués et reposant sur
la programmation orientée objets, ceux-ci restent liés aux langages de
programmation de base tels que Pascal et C.
1
Langage Pascal
chapitre I : ÉLÉMENTS DE BASE D’UN
PROGRAMME EN PASCAL
I- Structure d’un programme
Un programme PASCAl se compose des éléments suivants :
1- En-tête qui se compose du mot réservé PROGRAM suivi d’un identificateur du nom
du programme, suivi du point virgule ‘ ;’. Exemple : PROGRAM Operations
;
2- 2- Préambule déclaratif qui comporte :
La déclaration des bibliothèques utilisées, précédée par le mot réservé USES. Les
identificateurs des bibliothèques sont séparés par des virgules et la liste est
terminée par un point virgule ‘;’.
Exemple : USES Crt, Graph, Dos ;
La déclaration des identificateurs de types de données, définis par l’utilisateur,
précédée par le mot réservé TYPE.
Exemple : TYPE Nombre = 0..99 ;
La déclaration des identificateurs de constantes, précédée par le mot réservé
CONST.
Exemple : CONST Pi = 3.14 ;
La déclaration des identificateurs de variables, précédée par le mot réservé VAR.
Exemple : VAR A : INTEGER ;
3- Définition des différents sous-programmes (voir chapitre des sousprogrammes).
2
Langage Pascal
4- Définition du bloc principal du programme : ce bloc commence par le mot réservé
BEGIN suivi d’une séquence d’instructions (séparées par des points virgules ‘ ;’) et
se termine par le mot réservé END suivi du point ‘.’.
STRUCTURE GENERALE
program nomprog ;
{ Définition éventuelle des constantes et des types; cette partie est expliquée au chapitre 7
}
{ Début de la déclaration des variables }
var nomvar1, nomvar2, … : type1 ;
nomvar3 : type2 ;
… { Il peut y en avoir autant qu'on veut }
{ Fin de la déclaration des variables }
{ Début du corps du programme }
begin
instruction1 ;
instruction2 ;
… { Il peut y en avoir autant qu'on veut }
end.
{ Fin du programme }
Exemple
3
Langage Pascal
II- Types de données
II-1. Variables et constantes
II-1.1 Les variables
4
Langage Pascal
On appelle variable, un emplacement mémoire dans lequel est codée une
information que l’on peut modifier et utiliser grâce à un identificateur. Toute
variable doit être déclarée avant d’être utilisée.
Syntaxe :
Exemple :
Variables globales et variables locales
Les variables déclarées dans la partie déclaration du programme sont dites globales.
Les variables déclarées dans la partie déclaration d’un sous-programme sont dites locales.
Les variables globales sont connues par tous les sous-programmes, tandis que les
variables locales sont connues seulement par le sous-programme dans lequel elles
sont déclarées.
II-1.2 Les constantes
Contrairement à une variable, une constante ne peut être modifiée (théoriquement).
Syntaxe :
Remarque
5
Langage Pascal
Contrairement aux variables, il n'est nullement besoin de spécifier le type de la
constante. On peut tout de même le faire, en utilisant le double point, comme pour
les variables.
Exemple :
II-2. Les types de base
Type Description Intervalle Exemples Mémoire
requise
Shortint Entiers courts -128 à 127 -125; 0; 32 1 octet
Integer Entiers "relatifs" -32 768 à 32 767 -30 000; 421; 2 octets
Longint Entiers longs -2147483648 à -12 545 454; 3 4 octets
2147483647 257
Byte Entiers sur 1 Bit 0 à 255 12; 157 1 octet
(Byte ou Octet)
Word Entiers sur 2 Bits 0 à 65 535 27; 4 589 2 octets
(Word ou Mot)
Real Nombres réels 2.9E-39 à 1.7E38 3.1415; 6 octets
789.457851
Single Nombres décimaux 1.5E-45 à 3.4E38 3.1415926; 178 4 octets
(simple précision) 925.455678
6
Langage Pascal
Double Nombres décimaux 5E-324 à 1.7E308 54.5899; 9 897 8 octets
(double précision) 669
Type Description Intervalle Exemples Mémoire
requise
651.45568959
Extended Nombres réels 3.4E-4932 à 1.1E4932 3.14159265458; 10 octets
9.81
Comp Entier -9.2E18 à 9.2E18 -271; 6 548 8 octets
Boolean logique sur 1 octet false ou true false; true 1 octet
String Chaîne de 256 caractères au 'Hello!'; 256 octets
caractères maximum (0 à 'Allezvous bien ?'
255)
String[n] Chaîne de n n caractères String[6]>'Hello!' n octets
caractères maximum
Char 1 caractère 1 caractère 'R' 1 octet
maximum
II-3. Créer un type de données
Il est possible au programmeur de créer ses propres types. Les types doivent être déclarés
avec le mot-clef Type à fortiori avant la déclaration des variables.
Exemple
Type matrice = Array[1..10,1..10] of integer;
Définit un type nommé matrice pour représenter une matrice carrée d’ordre 10.
7
Langage Pascal
Type énuméré
Dans la déclaration d’un type énuméré, il faut énumérer toutes les valeurs de ce type.
Syntaxe :
type nom_du_type = (identificateur_1, identificateur_2,.., identificateur_n)
Exemple :
type jour = (lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche) ;
8
Langage Pascal
Type intervalle
Syntaxe :
type nom_du_type = début_de_l_intervalle..fin_de_l_intervalle
Exemple :
Déclare un type nommé age dont les valeurs sont des entiers compris entre 1 et 150.
III- Opérateurs et expressions
Les expressions sont composées d’opérateurs et d’opérandes. La plupart des
opérateurs sont binaires, c’est à dire qu’ils mettent en œuvre deux opérandes
(exemple A+B). Les opérateurs à un opérande sont dits unaires (exemple –A).
Dans les expressions plus complexes, l’existence de règles de priorité permet
d’éliminer toute ambiguïté dans l’ordre de réalisation des opérations.
Langage Pascal
Table de priorité des opérateurs
Ordre Opérateurs Ordre Opérateurs
0 (,[ 5 +,-
1 OR 6 *, /, DIV, MOD
2 AND 7 (+),(-)
3 NOT 8
4 < , >, <= , >= , <> , = 9
Remarque : (+) et (-) deux opérateurs unaires.
Les trois règles fondamentales de priorité des opérateurs sont les suivantes :
1- Un opérande placé entre deux opérateurs de priorités différentes sera lié à
celui possédant la priorité la plus élevée.
2- Un opérande placé entre deux opérateurs de même priorité sera lié à celui qui
se trouve à gauche.
3- Les expressions contenues entre parenthèses sont évaluées d’abord afin de
traiter leur résultat comme un seul opérande.
Dans une expression arithmétique, les opérateurs sont les opérateurs arithmétiques
(+,-,*, /, DIV, MOD).
Un opérande peut être :
- Un nom de variable ou de constante numérique.
1
1
Langage Pascal
- Une constante numérique.
- Un nom de fonction de type numérique tel que COS, SIN, etc.
Une expression logique simple est une comparaison entre deux expressions
arithmétiques. Les opérateurs de comparaison sont =, <>, <, >, <=, >=.
Une expression logique est la composée d’expressions logiques simples par les
opérateurs logiques :
- OR et AND opérateurs logiques binaires, OR pour la disjonction et AND pour
la conjonction.
- NOT opérateur unaire, NOT opérateur de négation.
- IV- Instructions simples
IV-1. Instructions d’entrée
Une instruction d’entrée permet de lire une donnée à partir du clavier.
Syntaxe :
Read (V1, V2,…., Vn) Où Vi est une variable de tout type simple (sauf
énuméré) ou de type chaîne de caractères.
ReadLn (V1,V2,...Vn) même effet que Read, mais il faut taper la touche Entrée
après l’entrée de la donnée. L’instruction ReadLn (sans argument) attend la
frappe de la touche Entrée au clavier.
Langage Pascal
Langage Pascal
Exemple :
IV-2. Instructions de sortie
Une instruction de sortie permet l’affichage sur l’écran des valeurs
correspondantes aux arguments considérés.
Syntaxe
Write (val1,val2,…,valn) Où vali est une valeur d’une donnée
constante ou variable (sauf type énuméré), une constante chaîne de
caractères, ou une valeur d’une expression.
WriteLn(val1,val2,…valn) même effet que Write, mais le curseur passe
à la ligne suivante après l’affichage. Exemple : write(‘salut ’,nom) ;
Remarque :
Langage Pascal
• Une constante chaîne de caractères est mise entre apostrophe. Une
apostrophe comprise dans une chaîne doit être dédoublée.
• L’instruction WriteLn (sans arguments) permet un saut de ligne.
EXEMPLE
IV-3. Instruction d’affectation
Cette instruction permet de transcrire une valeur dans une variable. Le
symbole d’affectation est ‘ := ’
Syntaxe : <Var> := <Val> ;
Où la variable <Var> peut être de tout type et la valeur <Val> peut être une
valeur constante, la valeur d’une donnée constante ou variable, la valeur
d’une fonction, ou le résultat d’une expression.
Exemple :
Langage Pascal
V-Enoncé des exercices
Exercice 1
Ecrire un programme qui permet d’afficher le message suivant : mon
premier programme.
Réponse
Langage Pascal
Exercice 2
Ecrire un programme qui demande à l'utilisateur les valeurs de 2 entiers x et
y, qui permute leurs valeurs et qui les affiche.
Réponse
Langage Pascal
Exercice 3
Ecrire un programme qui échange 3 entiers.
Réponse
Exercice 4
Ecrire un programme qui demande à l'utilisateur les coordonnées de 2 points
distincts du plan et qui affiche les coordonnées du point milieu.
Exercice 5
Ecrire un programme qui demande à l'utilisateur une valeur pour U0, r et n
et qui affiche la nième valeur de la suite arithmétique définie par U0 et Un+1
= Un + r. (On rappelle la propriété : Un = U0 + n.r ).