Escolar Documentos
Profissional Documentos
Cultura Documentos
Il existe plusieurs approches pour analyser un problme. Pour nous, ont va suivre
lapproche dite descendante . Cette mthode se traduit par les trois actions:
rsultat, traitement et donnes. Dans cette tape, nous avons faire:
- Reposer le problme en dtail,
- Dgager les rsultats atteindre,
- Dfinir les mthodes de rsolution,
- Dfinir les structures de donnes ncessaires.
Laffectation
On appelle AFFECTATION la mise d'une valeur dans une variable. Celle-ci peut
tre sous forme directe ou sous forme d'un calcul.
Au niveau Algorithme
Variable valeur
X 21
C A
Z 22*5
Au niveau Pascal
Variable := valeur
Y :=2.365 ;
S :=chaine ;
X := y+30
Remarque :
Une affectation ne peut se faire qu'entre une variable et une expression de
mme type. La seule exception est de mettre un entier dans un rel
Lopration dentre
Cette structure permettre lutilisateur d'introduire des valeurs au clavier pour
quelles soient utilises par le programme, on appelle cette opration la
lecture.
Au niveau Analyse
Variable = Donne (Message)
Moy=Donne (Entrer la moyenne)
Au niveau Algorithme
Lire(Variable)
Lire(a)
Au niveau Pascal
Readln(variable)
Readln(a)
Lopration de sortie
Cest la structure qui permet au programme de communiquer des valeurs
lutilisateur en les affichant lcran. Cette opration sappelle criture.
Write : Affiche un contenu et reste sur la mme ligne
Writeln : Affiche un contenu et passe la ligne suivante
Au niveau Analyse et Algorithme
Affichage dun message :
1|P age
Au niveau Pascal
LPS
Ecrire (Algorithmique)
Write (algorithmique) ;
Affichage du contenu dun variable :
A := 55 ;
A 55
Ecrire (A)
Write (A) ;
Remarque : Ecrire (A) affiche le
caractre A pas le contenu de la
variable A.
Affichage Mixte :
Utiliser une virgule pour la
sparation
Write (La variable A= ,A) ;
Ecrire (La variable A= ,A)
Remarques:
1. Writeln; provoque un retour la ligne aprs l'opration d'criture.
2. Un mot avec apostrophe sera affich au niveau de pascal avec deux
apostrophes, comme par exemple cette criture:
WriteLn('L'informatique'); C'est faux.
WriteLn('L''informatique'); C'est Vrai.
Les variables
Dfinition :
On appelle variable tout objet pouvant prendre diffrentes valeurs tout le long dun
algorithme.
Une variable est caractrise par : Son nom (un identificateur unique), Son type, Son
contenu.
Tableau de dclaration des Objets T.D.O
Objet
Type/ Nature
nom_variable
Type(entier, caractre, chaine, rel, boolen )
x
Entier
La dclaration dune variable entire se fait comme suit :
VAR < nom_variable > : Type ;
Le type Entier :
Dans un ordinateur un entier est reprsent avec un nombre fixe doctets ou de bits.
Cest pour cette raison que lensemble des entiers dans un ordinateur est fini
(compris entre un minimum et un maximum).
Les oprateurs arithmtiques sur les Entiers :+, -, *, DIV, MOD, >, <, , , =,
Les constantes
LPS
2|P age
Le type Rel
Sous ensemble de R
Les oprateurs arithmtiques sur les Entiers :+, -, *, /, >, <, , , =,
Pascal
Rle
Exemple
Trunc(x)
Arrondi (x)
Round (x)
Abs (x)
ABS (x)
Carr (x)
SQR (x)
Renvoie le carr de x
SQRT (x)
INT (x)
INT (x)
FRAC (x)
FRAC (x)
Cos (x)
Cos (x)
Renvoie le cosinus de x (x en
Cos (PI) vaut -1,00
radians)
Sin (x)
Sin (x)
Ala
Random
Ala(x)
Trunc (x)
Racine
(x)
carr
vaut
Utiliser Randomize avant Random pour avoir une squence diffrente chaque
excution.
Le type Boolen
Le type boolen contient les deux valeurs logiques VRAI et FAUX.
Dans le langage PASCAL, la dclaration dune variable boolenne se fait comme suit :
VAR <nom_variable> : Boolean ;
Oprateurs logiques sur les boolens : NON, ET, OU, OUEx (not, and, or, xor)
Table de vrit de ET
Table de vrit de OU
a ET b
a OU b
a XOR b
Algorithmique
LPS
3|P age
Remarque :
Il existe un ordre de priorit entre les oprateurs logiques : La ngation NON est
prioritaire par rapport la conjonction ET. La conjonction ET est prioritaire par
rapport la disjonction OU. Si deux oprateurs ont la mme priorit, le calcul de
lexpression logique se fera de gauche droite. Dans tous les cas, les oprations
misent entre parenthse sont prioritaires.
Vrai est suprieur Faux (True>False renvoi True)
Le type caractre
Le type Char dfini des variables "caractre seul" ou "lettre" ayant code appartenant
la table ASCII.
Syntaxe :
Var Nom_Var : Char ;
Les Fonctions prdfinies pour les caractres
(x entier compris entre 0 et 255)
Code en Pascal
Rle
Exemples
ORD (c)
ORD (c)
CHR (x)
CHR (x)
SUCC (c)
SUCC (c)
Renvoi
le
caractre SUCC ("C") vaut D
successeur de c sil existe.
SUCC ("2") vaut 3
PRED (c)
PRED (c)
Renvoi
le
caractre PRED ("C") vaut B
prdcesseur de c sil existe. PRED ("2") vaut 1
Algorithmique
Pascal
Long (ch)
Length (ch)
Position
(ch1,ch2)
4|P age
Pos (ch1,ch2)
Rle
Exemple
Renvoie le nombre de
carctres de ch
Renvoie la position de la
1re occurence de ch1
dans ch2. Si ch1 nest pas
dans ch2, elle retourne la
valeur 0
Nom
LPS
Sous_chaine
(ch,p,n)
Copy (ch,p,n)
Concat
Concat
Permet la concatnation
(ch1,ch2chn) (ch1,ch2chn) de ch1, ch2, et chn
Algorithmique
Efface (ch,p,n)
Insre
(ch1,ch2,p)
Convch (n,ch)
Pascal
Rle
Delete
(ch,p,n)
Enlve n caractres de la
chane ch partir de la
position p. Le rsultat se
trouvera dans la chaine ch
Convertit le nombre n en
une chane ch
Exemple
Delete (Turbo Pascal,6,7) vaut
Turbo
Ch1:=mation;ch2:=program;
Insert (ch1,ch2,8) alors
ch2:=programmation
n:=20;
Str (n,ch), la chane ch va
contenir 20
Le type Intervalle
Le type intervalle possde les proprits dun type scalaire discret ordonn (entier,
caractre et scalaire numr)
ch:=20;
Convertit la chane ch en un Aprs excution de
Valeur (ch,n,e) Val (ch,n,e) nombre n. e contient la
linstruction Val (ch,n,e), n va
position de lerreur
contenir 20 e sera gale 0
Avec e est de type entier.
LPS
5|P age
En Pascal:
TYPE <nom_type> = Bonrne_inf .. Borne_sup;
VAR <nom_variable> : nom_type;
Le type Tableau
R=[Initilisations]
Si (condition(s)) Alors
Instruction 1
Instruction n
FinSi
Algorithme
Initialisations
Si (condition(s)) Alors
Instruction 1
Instruction n
FinSi
Pascal
Initialisations ;
IF (condition(s)) then
Begin
Instruction 1 ;
;
Instruction n ;
End ;
LPS
6|P age
Algorithme
R=[Initilisations]
Si (condition(s)) Alors
Instruction 1 Trait1
Instruction n Trait1
Sinon
Instruction 1 Trait2
Instruction m Trait2
FinSi
Initilisations
Si (condition(s)) Alors
Instruction 1 Trait1
Instruction n Trait1
Sinon
Instruction 1 Trait2
Instruction m Trait2
FinSi
Pascal
Initialisations ;
IF (condition(s)) then
Begin
Instruction 1 Trait1 ;
;
Instruction n Trait1 ;
End ;
Else
Begin
Instruction 1 Trait2 ;
;
Instruction m Trait2 ;
End ;
R=[Initilisations]
Si (condition(s) 1) Alors
Traitement1
Sinon Si (condition(s) 2) Alors
Traitement 2
Initilisations
Si (condition(s) 1) Alors
Traitement1
Sinon Si (condition(s) 2) Alors
Traitement 2
Pascal
Initialisations ;
IF (condition(s)1) then
Trait1 ;
Else If (condition(s)1) then
Trait2 ;
.. ;
Else If (condition(s)n-1) then
Trait n-1 ;
Else Trait n ;
Remarque :
Au niveau de lanalyse on crit :
R = [Initialisation]
R indique le rsultat recherch
SI condition ALORS
Analyse
LPS
7|P age
Analyse
Algorithme
R=[Initilisations]
Selon Slcteur Faire
Val1 :action1
Val2,val3 :action21
action22
action2n
Val4 :action3
Valn :action n
Sinon action R
Fin selon
Initilisations
Selon Slcteur Faire
Val1 :action1
Val2,val3 :action21
action22
action2n
Val4 :action3
Valn :action n
Sinon action R
Fin selon
Pascal
Initialisations ;
Case slcteur of
Val1 :action1 ;
Val2,val3 :begin
action21 ;
action22 ;
action2n ;
end ;
Val4 :action3 ;
Valn :action n;
else action R
end ;
LPS
8|P age
On utilise la boucle REPETER lorsque le nombre de rptitions peut ne pas tre
connu lavance.
Il faut modifier la condition lintrieur de la boucle REPETER pour ne pas avoir
une boucle ferme (infinie).
Dfinition
La structure itrative condition darrt : tant que faire est utilise lorsque la
condition doit tre teste avant lexcution du traitement rpter.
Structure utilise lorsque le nombre de traitement nest pas connu lavance.
Vocabulaire et syntaxe :
Au niveau de lanalyse et
Au niveau pascal
lalgorithme
R=[init]Tant que (condition) faire
While (condition) do
Instruction 1
Begin
Instruction 1 ;
Instruction n
LPS
9|P age