SlideShare une entreprise Scribd logo
La structure conditionnelles
25
Les structures alternatives
 Définition
 Elle exprime le choix entre deux séquences d’action en
fonction de la valeur d’une condition ou expression logique
Exercice 1
26
 Cet algorithme est destiné à prédire l'avenir
 Il lira au clavier l’heure et les minutes, et il affichera l’heure qu’il
sera une minute plus tard. Par exemple, si l'utilisateur tape 21
puis 32, l'algorithme doit répondre :
"Dans une minute, il sera 21 heure(s) 33".
 NB : on suppose que l'utilisateur entre une heure valide. Pas
besoin donc de la vérifier.
Exercice 2 :
27
 Un magasin de reprographie facture 0,10 E les dix
premières photocopies, 0,09 E les vingt suivantes et 0,08 E
au-delà. Ecrivez un algorithme qui demande à l’utilisateur le
nombre de photocopies effectuées et qui affiche la facture
correspondante.
Syntaxe
28
Si condition alors
instruction1
sinon
instruction2 ;
finsi
Structure conditionnelle à choix
multiple
29
 C’est une structure qui permet de choisir un choix parmi
plusieurs cheminements proposés.
Structure conditionnelle à choix
multiple
30
Syntaxe :
Selon ( expression entière ou caractère )
Cas choix1 : instruction1 ;
cas choix2 : instruction2 ;
...
cas choixN : instructionN ;
[autrement instruction]
Finselon
Exemple : Calcul d’une facture
31
 Ecrire un algorithme qui calcule le prix toute taxe comprise
(PTTC) d’un article, à partir du prix total hors taxe (PTHT)
et selon le code de laTVA .
32
Exercice 3
33
Les structures répétitives
34
 Les structures répétitives sont utilisées lorsque nous avons une
instruction ou un bloc d’instructions qui se répètent un certain
nombre de fois .
 En algorithmique, nous disposons de trois structures
 Tant que ……………….Faire ……
 Répéter ………………Jusqu’à ….
 Pour ………………..Faire ………
Structure POUR
35
 Cette structure permet une répétition d’instructions, le
NOMBRE DES RÉPÉTITIONS étant CONNU avant la première
exécution.
 Une variable va servir de test pour l'exécution de la boucle. Cette
variable est initialisée au démarrage de la boucle puis évolue, de
façon automatique, après chaque itération.
Syntaxe
36
Pour <variable de test> <- <valeur de départ> à
<valeur d’arrivée>
Instructions
Fin Pour
Exemple
37
 Ecrire l’algorithme qui permet de calculer S:
 S=1+2+3+………….+N
Exercice 1
38
 Ecrire l’algorithme qui permet de calculer S:
 S=1+1/2+1/3+1/4+……………….+1/n
Exercice 2
39
 Ecrire un algorithme qui demande un nombre de départ, et
qui calcule sa factorielle.
NB : la factorielle de 8, notée 8 !, vaut
1 x 2 x 3 x 4 x 5 x 6 x 7 x 8
Exercice 3
40
 Ecrire un algorithme qui demande un nombre de départ, et
qui calcule la somme des entiers jusqu’à ce nombre. Par
exemple, si l’on entre 5, le programme doit calculer :
1 + 2 + 3 + 4 + 5 = 15
NB : on souhaite afficher uniquement le résultat, pas la
décomposition du calcul.
Exercice 4
41
 Calculer Un
 U1=1 ; U2=2
 Un=2*Un-1 + 3*Un-2 Pour n >2
Structure TANT QUE
42
 Cette structure permet de répéter un groupe d’instructions, le
NOMBRE DES RÉPÉTITIONS étant INCONNU avant la
première exécution de la boucle.
 La condition doit être remplie pour que les instructions soient
exécutées (y compris la première fois) : ce type de condition est
appelé CONDITION DE CONTINUATION.
Syntaxe
43
Tant Que < condition de continuation > FAIRE
Instructions à exécuter si la condition est remplie
FinTant Que
Exemple :
44
 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.
Structure RÉPÉTER
45
 Cette structure permet de répéter un groupe d’instructions, le
NOMBRE DES RÉPÉTITIONS étant INCONNU avant la
première exécution de l’action concernée. Cette boucle sera
exécutée AU MOINS UNE FOIS car la condition est posée à la fin
de la boucle.
 L'exécution cesse lorsque la condition est remplie. Cette
condition est donc appelée CRITÈRE D’ARRÊT.
Syntaxe
46
Répéter
Instructions à exécuter
Jusqu’à <critère d’arrêt>
Exemple :
47
 Ecrire un algorithme qui demande à l’utilisateur un nombre
compris entre 1 et 3 jusqu’à ce que la réponse convienne.
48
Algorithme nombre_verifier ;
Variable i : entier ;
Debut
Repeter
Ecrire (‘donner un nombre compris entre 1 et 3 :‘) ;
Lire(i) ;
Jusque ( i>=1 et i<=3 ) ;
Fin.
Les tableaux
02/03/2015
49
 Supposons que nous avons besoin de calculer la moyenne de 12
notes d’un étudiant.
 la seule solution dont nous disposons consiste à déclarer douze
variables, appelées par exemple: X1, X2, X3,…X12.
 La première étape est de lire les valeurs de toute ces variables une
par une, ce qui nous fait douze instructions de lecture et après
calculer la moyenne par l’instruction:
 Moy ← (X1+X2+X3+X4+X5+NX6+X7+X8+X9+X10+X11+X12)/12
Les tableaux(suite)
02/03/2015
50
 C’est pourquoi l’algorithmique (la programmation) nous permet
de rassembler toutes ces variables en une seule, au sein de
laquelle chaque valeur sera désignée par un numéro.
Un ensemble de valeurs portant le même nom de variable et repérées par
un nombre, s’appelle un tableau, ou encore une variable indicée.
Le nombre qui, au sein d’un tableau, sert à repérer chaque valeur s’appelle
l’indice.
Chaque fois que l’on doit désigner un élément du tableau, on fait figurer le
nom du tableau, suivi de l’indice de l’élément, entre parenthèses.
Ex: Nom_tableau(5)
Les tableaux(suite)
02/03/2015
51
 Notation et utilisation algorithmique
 Dans notre exemple, nous créerons donc un tableau appelé Note.
 Tableau Note(12) : Entier
 On peut créer des tableaux contenant des variables de tous types :
tableaux de numériques, tableaux de caractères, tableaux de
booléens, tableaux de tout ce qui existe dans un langage donné
comme type de variables.
 L’énorme avantage des tableaux, c’est qu’on va pouvoir les traiter en
faisant des boucles.
Les tableaux(suite)
02/03/2015
52
 Notation et utilisation algorithmique
Tableau Note(12) : Entier
Variables i, Som : Entier
Variable Moy : Réel
Pour i ← 0 à 11
Ecrire (“Entrez la note n°”, i)
Lire( Note(i))
FPour
Som ← 0
Pour i ← 0 à 11
Som = Som + Note(i)
Fpour
Moy = Som / 12
Les tableaux(suite)
02/03/2015
53
 Remarque générale : l’indice qui sert à désigner les
éléments d’un tableau peut être exprimé directement
comme un nombre en clair, mais il peut être aussi une
variable, ou une expression calculée.
 La valeur d’un indice doit toujours :
 être égale au moins à 0 (dans quelques rares langages, le premier
élément d’un tableau porte l’indice 1). Mais nous avons choisi ici de
commencer la numérotation des indices à zéro, comme c’est le cas
en langage C.
 être un nombre entier. Quel que soit le langage.
 être inférieure ou égale au nombre d’éléments du tableau
(moins 1, si l’on commence la numérotation à zéro).
Exercices
02/03/2015
54
 Écrire un algorithme qui déclare et remplisse un tableau de 7
valeurs numériques en les mettant toutes à zéro.
 Écrire un algorithme qui déclare et remplisse un tableau
contenant les six voyelles de l’alphabet latin.
 On saisit des entiers et on les range dans un tableau (maximum
50) Écrire un programme qui affiche le maximum, le minimum
et la valeur moyenne de ces nombres.
Exercices
02/03/2015
55
 Écrivez un algorithme permettant à l’utilisateur de saisir un
nombre quelconque de valeurs, qui devront être stockées dans
un tableau. L’utilisateur doit donc commencer par entrer le
nombre de valeurs qu’il compte saisir. Il effectuera ensuite cette
saisie. Enfin, une fois la saisie terminée, le programme affichera
le nombre de valeurs négatives et le nombre de valeurs positives.
Exercices
02/03/2015
56
 Que produit l’algorithme suivant ?
Tableau Nb(6) : Entier
Variable i en Entier
Début
Pour i ← 0 à 5
Nb(i) ← i * i
FPour
Pour i ← 0 à 5
Écrire Nb(i)
FPour
Fin
 Peut-on simplifier cet algorithme avec le même résultat ?
Exercices
02/03/2015
57
 Que produit l’algorithme suivant ?
Tableau N(7) en Entier
Variables i, k en Entier
Début
N(0) ← 1
Pour k ← 1 à 6
N(k) ← N(k-1) + 2
FPour
Pour i ← 0 à 6
Ecrire N(i)
FPour
Fin
 Peut-on simplifier cet algorithme avec le même résultat ?
Organigramme
02/03/2015
58
 Définition
 un organigramme est la représentation schématique qui permet de
faire apparaître d’une façon claire et logique l’enchaînement des
différentes opérations.
 Les symboles utilisés pour construire un organigramme
Symbole général traitement
Symbole début-fin-interruption
Symbole embranchement(choix)
Symbole commentaire
Les lignes de
liaison
Organigramme
02/03/2015
59
Exemple :
Condition
Instruction 1
Instruction 2
suite
 Exemple
60
Organigramme
02/03/2015
61
Exemple :Le branchement conditionnel
instruction1
condition
instruction2
Organigramme
02/03/2015
62
Exemple : répéter … jusqu’à
instruction
condition
F
V
Organigramme
02/03/2015
63
Exemple : Tant que
instruction
condition
F
V
Notions de sous-algorithme
02/03/2015
64
 Définition
 Un sous-algorithme est un élément d’algorithme nommé et
éventuellement paramétré que l’on définit afin de pouvoir
ensuite l’appeler par son nom en affectant, s’il y a lieu, des
valeurs aux paramètres.
 Intérêt :
 Réaliser un découpage d’une tâche en sous-tâche.
 Effectuer une seule description d’une tâche commune
 Concevoir une application de manière descendante en entrant de plus en
plus dans les détails
 Structure : un sous-algorithme est composé
 D’une tête nom sous-algorithme, paramètres(arguments) avec leur type
 D’un corps des déclarations d’objets locaux aux sous-algorithme,
instructions à exécuter
Notions de sous-algorithme
02/03/2015
65
 Sous-algorithme Nom(liste des paramètres)
déclarations des variables locales
Début
Corps du sous-algorihtme
Fin
 Algorithme Nom
Déclaration des variables
Début
Instructions
Appel du sous-algorithme
Instructions
Fin
Procédures & Fonctions
02/03/2015
66
 Procédures
 Syntaxe
Procédure nom_procédure(var:type;var:type)
Variable interne
Début procédure
Instructions
Finprocédure
Procédures & Fonctions
02/03/2015
67
 Fonctions
 Syntaxe
Fonction nom_fonction(var:type;var:type):type
Variable interne;
Début fonction
Instructions;
Retourner variable;
Fin fonction
Procédure & Fonction
02/03/2015
68
Rep1,Rep2 : caractère
Fonction RepOuiNon() : caractères
variable Rep ← ""
TantQue Rep <> "Oui" et Rep <> "Non"
Ecrire( "Tapez Oui ou Non")
Lire (Rep)
FinTantQue
Renvoyer Rep
Fin
Début
Ecrire( "Etes-vous marié ?")
Rep1 ← RepOuiNon()
Ecrire( "Avez-vous des enfants ?" )
Rep2 ← RepOuiNon()
Fin

Contenu connexe

PPT
COURS ALGOgithmique et programmation ofppt.ppt
PDF
Chapitre 1 rappel
PDF
Chapitre 1 rappel
PPTX
Séance bb 1-8.pptx
PDF
"Guide Fondamental : Les Bases de l'Algorithme"
PDF
Cours_Algorithm Cours_Algorithm_GE.E2_S2.pdf
PPT
coursalgorithmique9-10.ppt
PDF
Algorithmique_et_programmation_I_Plan_du.pdf
COURS ALGOgithmique et programmation ofppt.ppt
Chapitre 1 rappel
Chapitre 1 rappel
Séance bb 1-8.pptx
"Guide Fondamental : Les Bases de l'Algorithme"
Cours_Algorithm Cours_Algorithm_GE.E2_S2.pdf
coursalgorithmique9-10.ppt
Algorithmique_et_programmation_I_Plan_du.pdf

Similaire à cours-algorithmique-ensam-partie2_compress.pdf (20)

PPTX
Initiation à l'algorithmique
PDF
Algorithmique et programmation en Pascal (résumé)
PDF
algo-imsi-2.pdf
PPTX
Algorithmique
PPTX
Algorithmique
PDF
Algorithmique programmation2018
PDF
Algorithmique Amp Programmation (R Sum
PPTX
UNIVERSTE LA FRANCOPHONIE DE NDJAMENA.pptx
PPTX
UNIVERSTE LA FRANCOPHONIE DE NDJAMENA.pptx
PPTX
UNIVERSTE LA FRANCOPHONIE DE NDJAMENA.pptx
PDF
Algorithmique
DOCX
¨ cours sur les recherche dans un tableau et les trisprogrammation.docx
PPTX
Initiation à l’Algorithmique coirs .pptx
PDF
Cours - TC - Histoire Algorithmique.pdf
PPTX
algorithme chapitre 1 et 2 (1).pptx
PDF
Coursalgorithmique
PDF
Algorithmique de base.pdf
PDF
Chapitre 2 Les strucutures conditionnelles_18-19.ppt [Mode de compatibilité].pdf
PDF
Algorithmique et Programmation I - Lilia Ayadi.pdf
PDF
chap3_les instructions iteratives_boucles.pdf
Initiation à l'algorithmique
Algorithmique et programmation en Pascal (résumé)
algo-imsi-2.pdf
Algorithmique
Algorithmique
Algorithmique programmation2018
Algorithmique Amp Programmation (R Sum
UNIVERSTE LA FRANCOPHONIE DE NDJAMENA.pptx
UNIVERSTE LA FRANCOPHONIE DE NDJAMENA.pptx
UNIVERSTE LA FRANCOPHONIE DE NDJAMENA.pptx
Algorithmique
¨ cours sur les recherche dans un tableau et les trisprogrammation.docx
Initiation à l’Algorithmique coirs .pptx
Cours - TC - Histoire Algorithmique.pdf
algorithme chapitre 1 et 2 (1).pptx
Coursalgorithmique
Algorithmique de base.pdf
Chapitre 2 Les strucutures conditionnelles_18-19.ppt [Mode de compatibilité].pdf
Algorithmique et Programmation I - Lilia Ayadi.pdf
chap3_les instructions iteratives_boucles.pdf
Publicité

Dernier (20)

PPT
le-subjonctif-présent, Grammaire, français
PDF
🎓 Le Secret des Profs Captivants - 💡 2. Hygiène vocale et santé professionnel...
PDF
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️ Exemples rédigés - 📈 SES - Extrait
PDF
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️Exemples rédigés - Spécialité: 💻 NSI -...
PPTX
Copie de Présentation Personal Branding J2025.pptx_20250610_120558_0000.pptx
PPTX
plus que ´parfait--.-.-.-..-.--.-..-.-.-.-.
PPT
calcul---électrique--et--chutes de tension.ppt
PPTX
SESSION2-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
PPTX
Le rendez-vous de l'été.pptx Film français
PPTX
SESSION5-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
PPTX
SESSION3-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
PPT
Formation ESPACESCONFINES_ Rôle et responsabilité.ppt
PDF
CLASE 2 TRAIN voacublaire en rancaise.pdf
PPTX
Devenir Inspecteur HSE _ Chp1_ L1....pptx
PDF
Formation SSIAP _ Gestion et contrôle .pdf
PPTX
Présentation Personal Branding J2025.pptx_20250218_132749_0000.pptx_20250610_...
PPTX
Le rendez-vous de l'été.pptx Film français
PPTX
le subjonctif présent, Conjugaison français
PDF
585-developpement-d-une-application-avec-python-fr-en-business.pdf
PDF
🎓 Le Secret des Profs Captivants - 💡 3.1. Anatomie de la respiration — VOIX, ...
le-subjonctif-présent, Grammaire, français
🎓 Le Secret des Profs Captivants - 💡 2. Hygiène vocale et santé professionnel...
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️ Exemples rédigés - 📈 SES - Extrait
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️Exemples rédigés - Spécialité: 💻 NSI -...
Copie de Présentation Personal Branding J2025.pptx_20250610_120558_0000.pptx
plus que ´parfait--.-.-.-..-.--.-..-.-.-.-.
calcul---électrique--et--chutes de tension.ppt
SESSION2-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
Le rendez-vous de l'été.pptx Film français
SESSION5-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
SESSION3-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
Formation ESPACESCONFINES_ Rôle et responsabilité.ppt
CLASE 2 TRAIN voacublaire en rancaise.pdf
Devenir Inspecteur HSE _ Chp1_ L1....pptx
Formation SSIAP _ Gestion et contrôle .pdf
Présentation Personal Branding J2025.pptx_20250218_132749_0000.pptx_20250610_...
Le rendez-vous de l'été.pptx Film français
le subjonctif présent, Conjugaison français
585-developpement-d-une-application-avec-python-fr-en-business.pdf
🎓 Le Secret des Profs Captivants - 💡 3.1. Anatomie de la respiration — VOIX, ...
Publicité

cours-algorithmique-ensam-partie2_compress.pdf

  • 1. La structure conditionnelles 25 Les structures alternatives  Définition  Elle exprime le choix entre deux séquences d’action en fonction de la valeur d’une condition ou expression logique
  • 2. Exercice 1 26  Cet algorithme est destiné à prédire l'avenir  Il lira au clavier l’heure et les minutes, et il affichera l’heure qu’il sera une minute plus tard. Par exemple, si l'utilisateur tape 21 puis 32, l'algorithme doit répondre : "Dans une minute, il sera 21 heure(s) 33".  NB : on suppose que l'utilisateur entre une heure valide. Pas besoin donc de la vérifier.
  • 3. Exercice 2 : 27  Un magasin de reprographie facture 0,10 E les dix premières photocopies, 0,09 E les vingt suivantes et 0,08 E au-delà. Ecrivez un algorithme qui demande à l’utilisateur le nombre de photocopies effectuées et qui affiche la facture correspondante.
  • 5. Structure conditionnelle à choix multiple 29  C’est une structure qui permet de choisir un choix parmi plusieurs cheminements proposés.
  • 6. Structure conditionnelle à choix multiple 30 Syntaxe : Selon ( expression entière ou caractère ) Cas choix1 : instruction1 ; cas choix2 : instruction2 ; ... cas choixN : instructionN ; [autrement instruction] Finselon
  • 7. Exemple : Calcul d’une facture 31  Ecrire un algorithme qui calcule le prix toute taxe comprise (PTTC) d’un article, à partir du prix total hors taxe (PTHT) et selon le code de laTVA .
  • 8. 32
  • 10. Les structures répétitives 34  Les structures répétitives sont utilisées lorsque nous avons une instruction ou un bloc d’instructions qui se répètent un certain nombre de fois .  En algorithmique, nous disposons de trois structures  Tant que ……………….Faire ……  Répéter ………………Jusqu’à ….  Pour ………………..Faire ………
  • 11. Structure POUR 35  Cette structure permet une répétition d’instructions, le NOMBRE DES RÉPÉTITIONS étant CONNU avant la première exécution.  Une variable va servir de test pour l'exécution de la boucle. Cette variable est initialisée au démarrage de la boucle puis évolue, de façon automatique, après chaque itération.
  • 12. Syntaxe 36 Pour <variable de test> <- <valeur de départ> à <valeur d’arrivée> Instructions Fin Pour
  • 13. Exemple 37  Ecrire l’algorithme qui permet de calculer S:  S=1+2+3+………….+N
  • 14. Exercice 1 38  Ecrire l’algorithme qui permet de calculer S:  S=1+1/2+1/3+1/4+……………….+1/n
  • 15. Exercice 2 39  Ecrire un algorithme qui demande un nombre de départ, et qui calcule sa factorielle. NB : la factorielle de 8, notée 8 !, vaut 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8
  • 16. Exercice 3 40  Ecrire un algorithme qui demande un nombre de départ, et qui calcule la somme des entiers jusqu’à ce nombre. Par exemple, si l’on entre 5, le programme doit calculer : 1 + 2 + 3 + 4 + 5 = 15 NB : on souhaite afficher uniquement le résultat, pas la décomposition du calcul.
  • 17. Exercice 4 41  Calculer Un  U1=1 ; U2=2  Un=2*Un-1 + 3*Un-2 Pour n >2
  • 18. Structure TANT QUE 42  Cette structure permet de répéter un groupe d’instructions, le NOMBRE DES RÉPÉTITIONS étant INCONNU avant la première exécution de la boucle.  La condition doit être remplie pour que les instructions soient exécutées (y compris la première fois) : ce type de condition est appelé CONDITION DE CONTINUATION.
  • 19. Syntaxe 43 Tant Que < condition de continuation > FAIRE Instructions à exécuter si la condition est remplie FinTant Que
  • 20. Exemple : 44  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.
  • 21. Structure RÉPÉTER 45  Cette structure permet de répéter un groupe d’instructions, le NOMBRE DES RÉPÉTITIONS étant INCONNU avant la première exécution de l’action concernée. Cette boucle sera exécutée AU MOINS UNE FOIS car la condition est posée à la fin de la boucle.  L'exécution cesse lorsque la condition est remplie. Cette condition est donc appelée CRITÈRE D’ARRÊT.
  • 23. Exemple : 47  Ecrire un algorithme qui demande à l’utilisateur un nombre compris entre 1 et 3 jusqu’à ce que la réponse convienne.
  • 24. 48 Algorithme nombre_verifier ; Variable i : entier ; Debut Repeter Ecrire (‘donner un nombre compris entre 1 et 3 :‘) ; Lire(i) ; Jusque ( i>=1 et i<=3 ) ; Fin.
  • 25. Les tableaux 02/03/2015 49  Supposons que nous avons besoin de calculer la moyenne de 12 notes d’un étudiant.  la seule solution dont nous disposons consiste à déclarer douze variables, appelées par exemple: X1, X2, X3,…X12.  La première étape est de lire les valeurs de toute ces variables une par une, ce qui nous fait douze instructions de lecture et après calculer la moyenne par l’instruction:  Moy ← (X1+X2+X3+X4+X5+NX6+X7+X8+X9+X10+X11+X12)/12
  • 26. Les tableaux(suite) 02/03/2015 50  C’est pourquoi l’algorithmique (la programmation) nous permet de rassembler toutes ces variables en une seule, au sein de laquelle chaque valeur sera désignée par un numéro. Un ensemble de valeurs portant le même nom de variable et repérées par un nombre, s’appelle un tableau, ou encore une variable indicée. Le nombre qui, au sein d’un tableau, sert à repérer chaque valeur s’appelle l’indice. Chaque fois que l’on doit désigner un élément du tableau, on fait figurer le nom du tableau, suivi de l’indice de l’élément, entre parenthèses. Ex: Nom_tableau(5)
  • 27. Les tableaux(suite) 02/03/2015 51  Notation et utilisation algorithmique  Dans notre exemple, nous créerons donc un tableau appelé Note.  Tableau Note(12) : Entier  On peut créer des tableaux contenant des variables de tous types : tableaux de numériques, tableaux de caractères, tableaux de booléens, tableaux de tout ce qui existe dans un langage donné comme type de variables.  L’énorme avantage des tableaux, c’est qu’on va pouvoir les traiter en faisant des boucles.
  • 28. Les tableaux(suite) 02/03/2015 52  Notation et utilisation algorithmique Tableau Note(12) : Entier Variables i, Som : Entier Variable Moy : Réel Pour i ← 0 à 11 Ecrire (“Entrez la note n°”, i) Lire( Note(i)) FPour Som ← 0 Pour i ← 0 à 11 Som = Som + Note(i) Fpour Moy = Som / 12
  • 29. Les tableaux(suite) 02/03/2015 53  Remarque générale : l’indice qui sert à désigner les éléments d’un tableau peut être exprimé directement comme un nombre en clair, mais il peut être aussi une variable, ou une expression calculée.  La valeur d’un indice doit toujours :  être égale au moins à 0 (dans quelques rares langages, le premier élément d’un tableau porte l’indice 1). Mais nous avons choisi ici de commencer la numérotation des indices à zéro, comme c’est le cas en langage C.  être un nombre entier. Quel que soit le langage.  être inférieure ou égale au nombre d’éléments du tableau (moins 1, si l’on commence la numérotation à zéro).
  • 30. Exercices 02/03/2015 54  Écrire un algorithme qui déclare et remplisse un tableau de 7 valeurs numériques en les mettant toutes à zéro.  Écrire un algorithme qui déclare et remplisse un tableau contenant les six voyelles de l’alphabet latin.  On saisit des entiers et on les range dans un tableau (maximum 50) Écrire un programme qui affiche le maximum, le minimum et la valeur moyenne de ces nombres.
  • 31. Exercices 02/03/2015 55  Écrivez un algorithme permettant à l’utilisateur de saisir un nombre quelconque de valeurs, qui devront être stockées dans un tableau. L’utilisateur doit donc commencer par entrer le nombre de valeurs qu’il compte saisir. Il effectuera ensuite cette saisie. Enfin, une fois la saisie terminée, le programme affichera le nombre de valeurs négatives et le nombre de valeurs positives.
  • 32. Exercices 02/03/2015 56  Que produit l’algorithme suivant ? Tableau Nb(6) : Entier Variable i en Entier Début Pour i ← 0 à 5 Nb(i) ← i * i FPour Pour i ← 0 à 5 Écrire Nb(i) FPour Fin  Peut-on simplifier cet algorithme avec le même résultat ?
  • 33. Exercices 02/03/2015 57  Que produit l’algorithme suivant ? Tableau N(7) en Entier Variables i, k en Entier Début N(0) ← 1 Pour k ← 1 à 6 N(k) ← N(k-1) + 2 FPour Pour i ← 0 à 6 Ecrire N(i) FPour Fin  Peut-on simplifier cet algorithme avec le même résultat ?
  • 34. Organigramme 02/03/2015 58  Définition  un organigramme est la représentation schématique qui permet de faire apparaître d’une façon claire et logique l’enchaînement des différentes opérations.  Les symboles utilisés pour construire un organigramme Symbole général traitement Symbole début-fin-interruption Symbole embranchement(choix) Symbole commentaire Les lignes de liaison
  • 37. Organigramme 02/03/2015 61 Exemple :Le branchement conditionnel instruction1 condition instruction2
  • 38. Organigramme 02/03/2015 62 Exemple : répéter … jusqu’à instruction condition F V
  • 39. Organigramme 02/03/2015 63 Exemple : Tant que instruction condition F V
  • 40. Notions de sous-algorithme 02/03/2015 64  Définition  Un sous-algorithme est un élément d’algorithme nommé et éventuellement paramétré que l’on définit afin de pouvoir ensuite l’appeler par son nom en affectant, s’il y a lieu, des valeurs aux paramètres.  Intérêt :  Réaliser un découpage d’une tâche en sous-tâche.  Effectuer une seule description d’une tâche commune  Concevoir une application de manière descendante en entrant de plus en plus dans les détails  Structure : un sous-algorithme est composé  D’une tête nom sous-algorithme, paramètres(arguments) avec leur type  D’un corps des déclarations d’objets locaux aux sous-algorithme, instructions à exécuter
  • 41. Notions de sous-algorithme 02/03/2015 65  Sous-algorithme Nom(liste des paramètres) déclarations des variables locales Début Corps du sous-algorihtme Fin  Algorithme Nom Déclaration des variables Début Instructions Appel du sous-algorithme Instructions Fin
  • 42. Procédures & Fonctions 02/03/2015 66  Procédures  Syntaxe Procédure nom_procédure(var:type;var:type) Variable interne Début procédure Instructions Finprocédure
  • 43. Procédures & Fonctions 02/03/2015 67  Fonctions  Syntaxe Fonction nom_fonction(var:type;var:type):type Variable interne; Début fonction Instructions; Retourner variable; Fin fonction
  • 44. Procédure & Fonction 02/03/2015 68 Rep1,Rep2 : caractère Fonction RepOuiNon() : caractères variable Rep ← "" TantQue Rep <> "Oui" et Rep <> "Non" Ecrire( "Tapez Oui ou Non") Lire (Rep) FinTantQue Renvoyer Rep Fin Début Ecrire( "Etes-vous marié ?") Rep1 ← RepOuiNon() Ecrire( "Avez-vous des enfants ?" ) Rep2 ← RepOuiNon() Fin