• Aucun résultat trouvé

Tests / branchements conditionnels Tests / branchements conditionnels

N/A
N/A
Protected

Academic year: 2022

Partager "Tests / branchements conditionnels Tests / branchements conditionnels"

Copied!
5
0
0

Texte intégral

(1)

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 11

En fonction d’une condition on agit En fonction d’une condition on agit

différemment … différemment …

Il y a 2 formes possibles pour un test Il y a 2 formes possibles pour un test::

Tests / branchements conditionnels Tests / branchements conditionnels

Si

Si booléen booléen Alors Alors

Instructions Instructions Finsi

Finsi

Si

Si booléen booléen AlorsAlors Instructions 1 Instructions 1 Sinon

Sinon

Instructions 2 Instructions 2 Finsi

Finsi

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 22

Booléen est une

Booléen est une expressionexpression dont la valeur dont la valeur est:

est:

VRAI ou FAUX.

VRAI ou FAUX.

Cela peut être:

Cela peut être:

une variable de type booléen une variable de type booléen une condition

une condition

Tests / branchements conditionnels Tests / branchements conditionnels

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 33

Une condition est une expression Une condition est une expression composée de trois éléments:

composée de trois éléments:

une valeur une valeur

un opérateur de comparaison un opérateur de comparaison une autre valeur

une autre valeur

Tests Tests

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 44

Tests imbriqués Tests imbriqués

Si

Si booléen1 booléen1 AlorsAlors instructions instructions Si

Si booléen2booléen2 Alors

Alors

instructions instructions Sinon

Sinon

instructions instructions Finsi

Finsi Finsi Finsi

Tests Tests

Les tests Les tests imbriqués sont imbriqués sont des outils de des outils de simplification et simplification et d'optimisation d'optimisation des algorithmes des algorithmes

(2)

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 55

Tests Tests

Sinon et Si Sinon et Si

peuvent être peuvent être fusionnés en fusionnés en un

un SinonSiSinonSi..

C'est un seul C'est un seul bloc de test, bloc de test, terminé par terminé par un seul FinSi un seul FinSi

SinonSi SinonSi

Si

Si booléen1 booléen1 AlorsAlors instructions instructions SinonSi

SinonSi booléen2 booléen2 alorsalors instructions

instructions sinon

sinon

instructions instructions Finsi

Finsi

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 66

Exercice 15 Exercice 15

Ecrire un algorithme qui demande deux nombres à l’utilisateur et l’informe ensuite si le produit est négatif, positif ou nul. On ne doit pas calculer le produit !

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 77

Exercice 16 Exercice 16

Ecrire un algorithme qui demande l’âge d’un enfant à l’utilisateur.

Ensuite, il l’informe de sa catégorie:

"Poussin" de 6 à 7 ans

"Pupille" de 8 à 9 ans

"Minime" de 10 à 11 ans

"Cadet" après 12 ans

Peut-on concevoir plusieurs algorithmes équivalents menant à ce résultat ?

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 88

Exercice 17 Exercice 17

Ecrire un algorithme qui lira au clavier l’heure et les minutes, et affichera l’heure qu’il sera une minute plus tard.

Si l'utilisateur tape 21 puis 32, l'algorithme doit répondre :

"Dans une minute, il sera 21 heure(s) 33".

On suppose que l'utilisateur entre une heure valide.

(3)

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 99

Exercice 18 Exercice 18

Un magasin de photocopie facture 0,50Dh les dix premières pages, 0,40Dh les vingt suivantes et 0,20Dh au-delà.

Ecrivez un algorithme qui demande à l’utilisateur le nombre de photocopies effectuées et qui affiche le montant à payer.

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 1010

Répéter des instructions tant qu’une Répéter des instructions tant qu’une condition est vérifiée

condition est vérifiée

une structure de boucle se présente ainsi:

une structure de boucle se présente ainsi:

TantQue booléen

Instructions

FinTantQue Etapes:

1.

1. Si Si booléenbooléen est VRAI, on exécute les instructions est VRAI, on exécute les instructions jusqu'à

jusqu'à FinTantQueFinTantQue..

2.

2. On retourne ensuite sur la ligne On retourne ensuite sur la ligne TantQueTantQue, on évalue , on évalue booléen

booléen, et ainsi de suite., et ainsi de suite.

3.

3. Si Si booléenbooléen est est FAUXFAUX on passe directement à la ligne on passe directement à la ligne après

après FinTantQueFinTantQue

Boucles / structures itératives Boucles / structures itératives

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 1111

Erreur classique:

Erreur classique:

booléen

booléen n'est jamais n'est jamais VRAIVRAI. Le . Le

programme ne rentre alors jamais dans programme ne rentre alors jamais dans la boucle…

la boucle…

booléen

booléen ne devient jamais ne devient jamais FAUXFAUX. . L'ordinateur tourne alors dans la L'ordinateur tourne alors dans la boucle et n'en sort plus, C'est la boucle et n'en sort plus, C'est la

"boucle infinie"

"boucle infinie"

Boucles / structures itératives Boucles / structures itératives

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 1212

Répéter des instructions un nombre de fois…

Répéter des instructions un nombre de fois…

une autre structure de boucle:

une autre structure de boucle:

Pour Compteur Compteur Initial à à FinalFinal Pas Pas ValeurDuPasValeurDuPas

Instructions Instructions

Compteur Compteur suivantsuivant

TantQue : on ne connaît pas d'avance le nombre TantQue : on ne connaît pas d'avance le nombre de fois

de fois

Pour : le programmeur connaît d'avance le nombre Pour : le programmeur connaît d'avance le nombre de fois

de fois

Boucles / structures itératives

Boucles / structures itératives

(4)

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 1313

Boucles imbriquées mais

Boucles imbriquées mais pas croiséespas croisées Variables Truc, Trac en Entier Variables Truc, Trac en Entier Début

Début

Pour Truc ← 1 à 15 Pour Truc ← 1 à 15

Ecrire "Il est passé par ici"

Ecrire "Il est passé par ici"

Pour Trac ← 1 à 6 Pour Trac ← 1 à 6

Ecrire "Il repassera par là"

Ecrire "Il repassera par là"

Trac Suivant Trac Suivant Truc Suivant Truc Suivant Fin

Fin

Boucles / structures itératives Boucles / structures itératives

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 1414

à éviter ! à éviter !

Examinons l'algorithme suivant : Examinons l'algorithme suivant :

Variable T en Entier Variable T en Entier Début

Début

Pour T ← 1 à 15 Pour T ← 1 à 15

T ← T * 2 T ← T * 2

Ecrire "Passage numéro : ", T Ecrire "Passage numéro : ", T T Suivant

T Suivant Fin

Fin

Boucles Boucles

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 1515

Exercice 19 Exercice 19

Ecrire un algorithme qui demande un nombre compris entre 10 et 20,

jusqu’à ce que la réponse convienne.

En cas de réponse supérieure à 20, on fera apparaître un message :

«Plus petit !», et inversement, «Plus grand !» si le nombre est inférieur à 10.

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 1616

Exercice 20 Exercice 20

Ecrire un algorithme qui demande un nombre de départ, et qui ensuite affiche les dix nombres suivants. Par exemple, si l'utilisateur entre le

nombre 17, le programme affichera

les nombres de 18 à 27.

(5)

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 1717

Exercice 21 Exercice 21

Ecrire un algorithme qui demande un nombre de départ, et qui ensuite écrit la table de multiplication de ce

nombre, présentée comme suit (l'utilisateur entre le nombre 7):

Table de 7 : 7 x 1 = 7 7 x 2 = 14

7 x 10 = 70

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 1818

Exercice 22 Exercice 22

Ecrire un algorithme qui demande un nombre de départ, et qui calcule sa factorielle.

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 1919

Exercice 23 Exercice 23

Ecrire un algorithme qui demande successivement 20 nombres à

l’utilisateur, et qui lui dise ensuite quel était le plus grand parmi ces 20

nombres et sa position

FSR

FSR -- M. HIMMI 2012M. HIMMI 2012 2020

Références

Documents relatifs

[r]

[r]

La fonction ET renvoie vrai si tous les arguments sont vrais……….. La fonction Ou renvoie

Écrire un programme qui demande à l'utilisateur deux nombres et l'informe ensuite si leur produit est négatif ou positif.. Attention : on ne doit pas calculer le produit des

Si une fonction polynomiale du second degré n’a pas de racine, alors la parabole qui la repré- sente ne coupe pas l’axe des abscisses.. Résoudre algébriquement (c’est à dire

Nous allons donc voir dans un premier temps les portes logiques, qui sont les circuits électroniques utilisés aussi bien pour fabriquer l’unité arithmétique

Nous allons donc voir dans un premier temps les portes logiques, qui sont les circuits électroniques utilisés aussi bien pour fabriquer l’unité arithmétique et logique, que la

Dans ce paragraphe nous pr´esentons deux fonctions n´ecessaires pour calculer un estimateur du quantile g´eom´etrique conditionnel.. La premi`ere fonction not´ee