• Aucun résultat trouvé

Les structures de contrôleconditionnelles

N/A
N/A
Protected

Academic year: 2022

Partager "Les structures de contrôleconditionnelles"

Copied!
1
0
0

Texte intégral

(1)

I. INTRODUCTION

On peut distinguer deux structures de traitement conditionnel à savoir :

La structure conditionnelle simple, dans la quelle on a à choisir entre deux traitements ou plus,

La structure conditionnelle au choix multiple, dans la quelle on a la possibilité de choisir un traitement parmi plusieurs.

II. FORME SIMPLE

1.

Notation

Analyse et algorithmique Notation en Turbo Pascal

[Init] {si la partie Init existe}

Si Condition Alors Inst1 Inst2

……

Inst n Sinon

Inst’1 Inst’2

……

Inst’n FinSi

[Init] ; {si la partie Initiation existe}

If Condition Then Begin

Inst1 ; Inst2 ;

……

Inst n ; End

Else Begin

Inst’1 ; Inst’2 ;

……

Inst’n ; End ;

2. A

PPLICATION

Ecrire un programme qui permet de saisir un entier et de décider s’il est pair ou impair.

conditionnelles

(2)

III. FORME GENERALISEE

1. N

OTATION

Analyse et algorithmique Notation en Turbo Pascal [Init]

Si Condition1 Alors traitement1 Sinon

Si Condition2 Alors traitement2 ..……….

Sinon

Si Condition n-1 Alors traitement n-1 Sinon traitement n FinSi

[Init] ;

If Condition1 Then traitement1 Else

If Condition2 then traitement2 ..……….

Else

If Condition n-1 Then traitement n-1 Else traitement n ;

2. A

PPLICATION

Ecrire un programme qui permet de saisir un caractère quelconque c et d’afficher son type (Lettre, chiffre ou symbole).

a. Analyse

Résultat = Ecrire ("Ce caractère est ", message) Message = [ ] Si Majus (car) Dans ["A".."Z"] Alors

Message  "une lettre"

Sinon Si car Dans ["0".."9"] Alors

Message  "un chiffre"

Sinon

Message  "symbole"

FinSi

car = Donnée("introduire un caractère")

(3)

message car

M C

Chaîne Caractère

Recevoir un message Saisie du caractère

b. Algorithme

0-

Début Type_car

1-

Ecrire (" Introduire un caractère : "), Lire (C)

2-

Si Majus(C) dans ["A".."Z"] Alors

M  " une lettre "

Sinon Si C dans ["0" .. "9"] Alors

M  " un chiffre "

Sinon

M  " un symbole"

FinSi

3-

Ecrire ("Ce caractère est ", M)

4-

Fin Type_car

C

. Traduction en Pascal Program

Type_car ;

Uses wincrt ; Var c :char ; M :string ; Begin

Writeln(‘introduire un caractere :’) ; readln(c) ; If upcase(c) in [‘A’..’Z’] then m:=’lettre’

Else if c in [‘0’..’9’] then m:=’chiffre’

Else m:=’symbole’;

Writeln(‘Ce caractere est un(e) : ‘,m);

End .

(4)

IV. STRUCTURES DE CHOIX

1. N

OTATION

Analyse et algorithmique Notation en Turbo Pascal

[Init]

Selon sélecteur Faire

Ensemble1 de valeurs : trait1 Ensemble2 de valeurs : trait2 ………

Ensemble n-1 de valeurs : trait n-1

Sinon trait n

FinSelon

[Init] ;

Case sélecteur OF

Ensemble1 de valeurs : trait1 ; Ensemble2 de valeurs : trait2 ; ………

Ensemble n-1 de valeurs : trait n-1 ;

Else trait n;

End ; 2. A

PPLICATION

Ecrire un programme qui saisie un numéro de mois n et affiche le nombre de jours nbj qui lui correspond.

a. Analyse

Résultat = Ecrire ("Ce mois contient ", nombre, "jours") nombre = [ ] Selon numéro Faire

1,3,5,7,8,10,12 : nombre  31 4,6,9,11 : nombre  30

2 : année = Donnée(‘’Donner une année’’) Si année MOD 4 = 0 Alors

Nombre  29 Sinon

Nombre  28 FinSi

FinSelon

numéro = Donnée("introduire un numéro de mois")

(5)

Algorithme

0-

Début nbre_jours

1-

Ecrire (" Introduire le numéro de mois : "), Lire (n)

2-

Selon n Faire

1,3,5,7,8,10,12

:

nbj  31 4,6,9,11

:

nbj  30

2

:

Ecrire (" Introduire l’année : "), Lire (a) Si a MOD 4 = 0 Alors

nbj  29 Sinon

nbj  28 FinSi

Sinon ecrire("erreur") FinSelon

3-

Ecrire ("le mois ",n, " contient ", nbj , "jours")

4-

Fin nbre_jours

TDO

Objet Nature Rôle

n a nbj

Entier Entier Entier

Saisie du n° du mois Saisie de l’année Contient le nombre de jours

d .Traduction en Pascal

Program nbre_jours ; Uses wincrt ;

Var a,nbj,n :integer ; begin

Writeln('introduire le numero du mois : ') ; readln(n) ; Case n of

1,3,5,7,8,10,12 : nbj :=31 ; 4,6,9,11 : nbj :=30 ; 2 : Begin

writeln('introduire l''annee : ') ; readln(a) ;

(6)

Else nbj:= 28;

End;

else

Writeln('Le mois ',n,' n''existe pas');

end;

Writeln('Le mois ',n,' contient ',nbj,' jours') End .

Références

Documents relatifs

Cas où le discriminant est strictement positif. Si D est strictement positif

Il s’agit de demander à l’utilisateur d’entrer les valeurs nécessaires, ainsi que de calculer les valeurs utiles. Cas où le discriminant est

Ecrire un programme en assembleur permettant d’effectuer les opérations suivantes sur un tableau de taille 15, dont le premier élément est placé à l’adresse $D000 :..

Ecrire un programme qui permet de saisir une chaine CH alphabétique majuscule et d’aficher si cette chaine est sommet palindrome ou non.. Une chaine est dite palindrome

Ecrire un programme qui lit deux variables de type enti` ´ ere, les affiche, ´ echange leur contenu et les affiche de nouveau.. Exercice

L’ann´ ee courante sera mise dans une variable.. Exercice

Ecrire un programme qui lit deux variables de type enti` ´ ere, les affiche, ´ echange leur contenu et les affiche de nouveau. On peut aussi exprimer des bool´ eens avec and, or et

Ecrire un programme qui lit deux variables de type enti` ´ ere, les affiche, ´ echange leur contenu et les affiche de nouveau.. Exercice