![]() |
![]() |
![]() |
Les structures Conditionnelles
Mise à jour le : 01/11/2004
Énoncé
Écrire un programme Pascal qui lit l'ordre de
mois et affiche le nombre de jours correspondant.
I) La préanalyse :
II) L'analyse :
Nom = NBRE_JOURS |
||
| Séquences | Liste des définitions Explicites | Objets Utilisés |
| 3 | Résultat = Ecrire(NBRJ) | |
| 2 | NBRJ = Si (M=1) ou (M=3) ou (M=5) ou (M=7) ou (M=8) ou (M=10) ou (M=12) |
|
| Alors | ||
NBRJ ß
|
||
| Sinon | M | |
| Si (M=4) ou (M=6) ou (M=9) ou (M=11) | NBRJ | |
| Alors | A | |
|
NBRJ ß |
||
| Sinon | ||
| Répéter | ||
| Lire(A) | ||
| Jusqu'à A>0 | ||
| Si (A Mod 4=0) | ||
| Alors | ||
|
NBRJ ß |
||
| Sinon | ||
|
NBRJ ß |
||
| Finsi | ||
| FinSi | ||
| Finsi | ||
| 1 | Répéter | |
| Lire(M) | ||
| Jusqu'à (M>=1) et (M<=12) | ||
| 4 | Fin NBRE_JOURS | |
| Objets Utilisés | Nature/Type | Rôle |
| M | Variable/Entier | L'ordre du mois |
| A | Variable/Entier | L'année |
| NBRJ | Variable/Entier | Nombre de jours |
IV) L'algorithme :
| 0- | Début NBRE_JOURS |
| 1- | Répéter |
| Lire(M) | |
| Jusqu'à (M>=1) et (M<=12) | |
| 2- | Si (M=1) ou (M=3) ou (M=5) ou (M=7) ou (M=8) ou (M=10) ou (M=12) |
Alors |
|
NBRJ ß
|
|
Sinon |
|
| Si (M=4) ou (M=6) ou (M=9) ou (M=11) | |
| Alors | |
|
NBRJ ß |
|
| Sinon | |
| Répéter | |
| A = Donnée | |
| Jusqu'à A>0 | |
| Si (A Mod 4=0) | |
| Alors | |
|
NBRJ ß |
|
| Sinon | |
|
NBRJ ß |
|
| Finsi | |
| FinSi | |
Finsi |
|
| 3- |
Ecrire(NBRJ) |
| 4- |
Fin NBRE_JOURS |
V) La traduction en turbo pascal :
Program NBRE_JOURS;
uses Wincrt;
Var M, NBRJ, A : Integer;
Begin
Repeat
Write('Mois :');
Readln(M);
Until (M>=1) And (M<=12);
If (M=1) or (M=3) or (M=5) or (M=7) or (M=8) or (M=10) or (M=12)
Then
NBRJ : = 31
Else
Si (M=4) or (M=6) or (M=9) or (M=11)
Then
NBRJ : = 30
Else
Begin
Repeat
Write('Année :');
Readln(A);
Until A>0;
If A Mod 4=0
Then
NBRJ : = 29
Else
NBRJ : = 28;
End;
Write('Le nombre de jours est : ',NBRJ);
End.
V) La traduction en langage C++ :
| Page d'index | Série structures conditionnelles | Haut |