Vous êtes sur la page 1sur 13

Algorithmique et programmation

en Deust @mrl

Détails de syntaxe,
Variables,
Conditions,
Logique
Begin et point-virgule
• Les instructions sont encadrées par begin et end
• Elles sont séparées par le point-virgule
• Exemple :
begin
a:=3;
b:=a*2;
end;

2
Variables numériques
• rôle d’une variable,
• comment la déclarer et que se passe-t-il ?
• Où placer les déclarations
– Soit dans une procédure :
après la ligne procedure …
et avant begin
– Soit avant les procédures :
après la ligne {$R *.dfm}

3
Variables numériques entières
• valeurs entières
positives ou négatives
Integer
4 octets
de -2 milliards à 2 milliards
rouleau automatique
sauf si vérification de débordement
4
Variables numériques non entières
• valeurs non entières
positives ou négatives
Real
8 octets
10-324 < |x| < 10 308 ou zéro
pas de « rouleau »
15 à 16 chiffres significatifs

5
Instruction conditionnelle
• transposition de la construction de phrase
si condition remplie alors... sinon...
• schéma
une et deux branches

6
Instruction conditionnelle
C a s d e 2 b ra nc he s C a s d 'u ne b ra nc he

F aux exp ressio n Vrai F aux exp ressio n Vrai


lo giq ue lo giq ue

instruc tio n(s) instruc tio n(s) instruc tio n(s)


d u c as faux d u c as vrai d u c as vrai

suite no rmale d u p ro gramme suite no rmale d u p ro gramme


7
Instruction conditionnelle
syntaxe pascal
• if expr logique then begin
instruction(s)
end
else begin
instruction(s)
end
• if expr logique then begin
instruction(s)
end
8
Expression logique
• opérateurs relationnels : < > <= >= = <>
• opérateurs logiques : and or not
• priorité aux opérateurs logiques
d’où nécessité de ( ) souvent
• exemples
une relation,
fourchette,

9
Exemple 1
• déterminer la plus petite et la plus grande de 2
valeurs
• si a>=b max reçoit a min reçoit b
sinon max reçoit b min reçoit a
• if a>=b then begin
max:=a; Déclarer les 4
min:=b variables
end
else begin
max:=b;
min:=a
end;
10
Exemple 2
• imbrication d’instructions conditionnelles
• prix brut 0 à 500 500 à 2000 >=2000
remise 0% 10% 15%
• si prix brut<500
prix net:=prix brut
sinon
si prix brut <2000
prix net:=prix brut*0.9
sinon
prix net:=prix brut*0.85
11
Exemple 2 suite
if PrixBrut <500 then begin {cas < 500}
PrixNet:= PrixBrut
end {fin cas <500}
else begin {cas >= 500}
if PrixBrut <2000 then begin {cas 500 à 2000}
PrixNet := PrixBrut *0.9
end {fin cas 500 à 2000}
else begin {cas >= 2000}
PrixNet := PrixBrut *0.85
end {fin cas >= 2000}
end {fin cas >= 500}
12
Logique
• tables de vérité
• and
• or
• not
• type Boolean 2 valeurs : false et true
• propriétés
• Visible presque tous les composants,
• Enabled pour autoriser l’accès,
• ReadOnly pour interdire la modification, ...
13

Vous aimerez peut-être aussi