Chapitre I: Notion d’Algorithme et Instructions de Base
Chapitre II: Environnements et Bibliothèque de Fonction
Chapitre III : Les Structures de Contrôle et Programmation
Chapitre IV : Les Structures Répétitives et Programmation
Chapitre V : Les Tableaux et Programmation
Algorithmique et Programmation
Berlin DJIONANG
Institut Supérieur de l’Innovation et de Technologie
INSITEC
January 15, 2024
Niveau 1
Génie Logiciel
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 1 / 93
Chapitre I: Notion d’Algorithme et Instructions de Base
Chapitre II: Environnements et Bibliothèque de Fonction
Chapitre III : Les Structures de Contrôle et Programmation
Chapitre IV : Les Structures Répétitives et Programmation
Chapitre V : Les Tableaux et Programmation
Contents
1 Chapitre I: Notion d’Algorithme et Instructions de Base
2 Chapitre II: Environnements et Bibliothèque de Fonction
3 Chapitre III : Les Structures de Contrôle et Programmation
4 Chapitre IV : Les Structures Répétitives et Programmation
5 Chapitre V : Les Tableaux et Programmation
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 2 / 93
Chapitre I: Notion d’Algorithme et Instructions de Base
Chapitre II: Environnements et Bibliothèque de Fonction
Chapitre III : Les Structures de Contrôle et Programmation
Chapitre IV : Les Structures Répétitives et Programmation
Chapitre V : Les Tableaux et Programmation
Saviez-vous que vous pouviez en faire une carrière?
Développeur
Testeur
Analyste
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 3 / 93
Chapitre I: Notion d’Algorithme et Instructions de Base
Chapitre II: Environnements et Bibliothèque de Fonction
Chapitre III : Les Structures de Contrôle et Programmation
Chapitre IV : Les Structures Répétitives et Programmation
Chapitre V : Les Tableaux et Programmation
Organisation du Cours
COURS MAGISTRAL (30H)
TRAVAUX DIRIGES (12H)
TRAVAUX PRATIQUES (15H)
EXPOSES (4H)
CONTRÔLE CONTINU (2H)
EXAMEN (2H)
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 4 / 93
Chapitre I: Notion d’Algorithme et Instructions de Base
Chapitre II: Environnements et Bibliothèque de Fonction
Chapitre III : Les Structures de Contrôle et Programmation
Chapitre IV : Les Structures Répétitives et Programmation
Chapitre V : Les Tableaux et Programmation
Contrat Pour Rester De Bon Ami
Respecter les heures de cours;
Respecter vos camarades;
Vos téléphones doivent êtres éteints;
On ne mange pas en classe;
Partager vos incompréhensions avec les autres et l’enseignant;
Vos questions..?
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 5 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
1 Chapitre I: Notion d’Algorithme et Instructions de Base
2 Chapitre II: Environnements et Bibliothèque de Fonction
3 Chapitre III : Les Structures de Contrôle et Programmation
4 Chapitre IV : Les Structures Répétitives et Programmation
5 Chapitre V : Les Tableaux et Programmation
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 6 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Objectifs
Ce cours se donne pour objectif la maîtrise des COMPÉTENCES
suivantes :
Comprendre et examiner un algorithme préexistant, son
fonctionnement ou son but ;
Modifier un algorithme pour obtenir un résultat précis ;
Analyser une situation : identifier les données d’entrée et de sortie,
le traitement, les instructions... ;
Créer une solution algorithmique à un problème donné : comment
écrire un algorithme en langage courant en respectant un code,
identifier les boucles, les tests, les opérations d’écriture, d’affichage ;
Valider la solution algorithmique par des traces d’exécution et des
jeux d’essais simples ;
Adapter l’algorithme aux contraintes du langage de programmation :
identifier si nécessaire la nature des variables;
Valider un programme simple. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 7 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Omniprésence des Algorithmes
Quelques exemples d’algorithme :
Fonctions : étude numérique, étude asymptotique
Géométrie : affichage, positionnement et déplacement d’objets
géométriques simples (points, segments, cercles), colinéarité,
orthogonalité
Statistique : tris, détermination de certains indicateurs (moyenne,
médiane, quartiles)
Recette de Cuisine
Notice de montage d’un meuble en kit
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 8 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Exemple de recette
Comment cuire le riz?
remplir une casserole d’eau;
y ajouter une pincée de sel;
la mettre sur le feu;
attendre l’ébullition de l’eau;
mettre le riz dans la casserole;
le laisser cuire 10 à 20 minutes;
égoutter le riz. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 9 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Les outils
La mise en uvre d’algorithmes peut se faire à l’aide de nombreux
LOGICIELS :
Des logiciels dédiés : ALGOBOX, SCRATCH, EXECALGO,
LINOTTE...
Des langages de programmation : C, PYTHON...
Des logiciels liés au calcul scientifique : SCILAB, MATHLAB...
Des logiciels de calcul formel : XCAS, MAXIMA, WIRIS...
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 10 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Un peu d’histoire!
Le mot Algorithme tire son nom du mathématicien persan
Al-Khuwarizmi (né vers 780 - mort vers 850) qui a écrit en
langue arabe le plus ancien traité d’algèbre baptisé Abrégé de
calcul par la complétion et la simplification dans lequel il
décrivait des procédés de calcul à suivre étape par étape pour
résoudre des problèmes ramenés à des équations.
Il a vécu au 9ème siècle, était membre d’une académie des sciences à
Bagdad.
Toutefois, les algorithmes existent depuis plus longtemps : les
Mésopotamiens calculaient déjà en 1 800 avant J.-C. des valeurs
approchées des racines carrées à l’aide d’algorithmes.
Les Africains utilisaient les algorithmes avant .les. .autres
. . . . .peuples
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 11 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Pourquoi le cours d’algorithme?
Pour obtenir de la machine qu’elle effectue un travail à notre place
Problème: expliquer à la machine comment elle doit s’y prendre
Besoins :
savoir expliciter son raisonnement
savoir formaliser son raisonnement
concevoir (et écrire) des algorithmes:
séquence d’instructions qui décrit comment résoudre un problème
particulier
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 12 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Pourquoi le cours d’algorithme?
Savoir expliquer comment faire un travail sans la moindre ambiguïté
langage simple : des instructions (pas élémentaires)
suite finie d’actions à entreprendre en respectant une chronologie
imposée
L’écriture algorithmique : un travail de programmation à visée
universelle
un algorithme ne dépend pas du langage dans lequel il est implanté,
ni de la machine qui exécutera le programme correspondant.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 13 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Le schéma traitement d’une information
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 14 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Le schéma de résolution
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 15 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Définitions
Un Algorithme est une suite finie
d’instructions élémentaires
(règles), qui s’appliquent dans un
ordre déterminé à un nombre fini
de données pour fournir un résultat.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 16 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Définitions
Tout algorithme est caractérisé par:
un ensemble d’instructions à
exécuter
Un Algorithme est une suite finie
d’instructions élémentaires un ordre dexécution de ces
(règles), qui s’appliquent dans un différentes actions, déterminé
ordre déterminé à un nombre fini par la logique d’enchaînement
de données pour fournir un résultat. et conditionné par les structures
mises en uvre
un début et une fin
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 16 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Définitions
Un programme est une suite
d’instructions permettant à une
système informatique dexécuter
une tâche donnée
Un programme suite
d’instructions définies dans un
langage donné ;
Il est écrit dans un langage de
programmation compréhensible
(directement ou indirectement)
par un ordinateur.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 17 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Définitions
Un programme est une suite
d’instructions permettant à une
système informatique dexécuter
une tâche donnée
Un programme suite
d’instructions définies dans un
langage donné ;
Il est écrit dans un langage de
programmation compréhensible
(directement ou indirectement)
par un ordinateur.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 17 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Définitions
Un algorithme est un moyen pour un humain de présenter la
résolution par calcul d’un problème à une autre personne physique.
Un algorithme est un énoncé, dans un langage défini, d’une suite
d’opérations permettant de résoudre par calcul un problème.
Langage de programmation: ensemble de règle de vocabulaire et
de grammaire compréhensible par un ordinateur.
Un langage de programmation permet de définir les ensembles
d’instructions effectuées par un ordinateur lors de l’exécution d’un
programme.
Les langages de programmation permettent d’implémenter des
algorithmes.
un algorigramme: est la représentation graphique
. . . . l’algorithme
. . . . . . . . . . à
. . . . . .
l’aide de symboles normalisés . . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 18 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Différentes Problématique
Terminaison : terminera en un temps fini.
Complexité en temps: terminera en un temps borné(raisonnable).
Complexité en espace: terminera en utilisant une quantité de
mémoire bornée (raisonnable).
Correction: si l’algorithme termine en donnant une proposition de
solution, alors cette solution est correcte.
Complétude: pour un espace de problèmes donné, l’algorithme, s’il
termine, donnera toujours des propositions de solutions.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 19 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Les trois phases!
1 Préparation du traitement
Cette phase consiste à repérer les données, c’est-à-dire les éléments
nécessaires, voire indispensables, à la résolution;
l’algorithme se compose des déclarations de constantes, de variables
et de structures, qui correspondent à une liste exhaustive des
ressources utilisées et manipulées dans le corps de lalgorithme.
2 Traitement des données Il existe plusieurs types d’algorithmes,
déterminés selon le type d’exécution des instructions :
si les instructions s’exécutent en séquence, on parle d’algorithme
séquentiel ;
si les opérations s’exécutent sur plusieurs processeurs en parallèle, on
parle d’algorithme parallèle ;
si les instructions s’exécutent sur un réseau de processeurs, on parle
d’algorithme réparti ou distribué.
3 Sortie des résultats Les résultats obtenus, graphiques ou sonores,
peuvent être : affichés à l’écran, conservés dans un fichier, conservés
en mémoire jusqu’à la prochaine exécution . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 20 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Définitions
Une Variable est une donnée (emplacement) stockée dans la
mémoire de la calculatrice ou de l’ordinateur. C’est le nom d’un
espace mémoire donc le contenu peut changer pendant l’exécution
de l’algorithme. Elle est repérée par un identificateur (nom de la
variable constitué de lettres et/ou de chiffres, sans espace) et
contient une valeur dont le type (nature de la variable) peut être un
entier, un réel, un booléen, un caractère, une chaîne de caractères Il
ne faut pas confondre constante et variable.
Une Constante, comme une variable, peut représenter un chiffre, un
nombre, un caractère, une chaîne de caractères, un booléen.
Toutefois, contrairement à une variable dont la valeur peut être
modifiée au cours de l’exécution de l’algorithme, la valeur d’une
constante ne varie pas. Une constante est une donnée fixe qui ne
varie pas au cours de l’exécution d’un algorithme.
. . . . . . . . . . . . . . . . . . . .
Remarque . . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 21 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Déclaration variable et constante
Déclaration Constante
Const Nom_constante=valeur
Exemple: Const Pi=3,14; Const Mois="Février"
Déclaration variable
Var nom_variable: type
Exemple: var note: réel, nb_etudiant: entier, B: booléen
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 22 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Définitions
Un Opérateur est un outil qui permet d’agir sur une variable ou
deffectuer des calculs.
Une Opérante est une donnée utilisée par un opérateur.
Une expressions est un ensemble de valeurs reliées par les
opérateurs et équivalent à une seule valeur
Les types d’opérateurs: arithmétique, comparaisons, logique,
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 23 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Type d’opérateurs
Les opérateurs arithmétiques
Opérateurs élémentaires : +, -, x, /;
Élévation à la puissance :
Reste d’une division entière : %
Les opérateurs de comparaison: =, >, <, >=, <=
Les opérateurs logique: ET, OU, NON,
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 24 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Ordre de priorité
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 25 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
La lecture
La lecture est une instruction qui permet de lire les données tapées
par le clavier
la lecture de données correspond à l’opération qui permet de saisir
des valeurs pour qu’elles soient utilisées par le programme. Sa
syntaxe est la suivante:
lire(varaible1), lire(variable, variable2);
exemple: Lire(note), lire(B)
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 26 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
L’écriture
L’écriture est une instruction qui permet d’afficher les données sur
l’écran et ainsi de communiquer avec l’utilisateur
l’écriture des données permet l’affichage des valeurs des variables
après traitement. Sa syntaxe est la suivante:
écrire(varaible1), ecrire("message") , ecrire("message", variable);
exemple: ecrire(note), ecrire(B), ecrire("la valeur de note est :",
note)
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 27 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
L’affectation
L’affectation est une opération qui consiste à attribuer une valeur à
une variable. Elle est représentée par une flèche orientée à gauche
<–
Sa syntaxe est la suivante:
variable <– valeur ou expression;
exemple: note <– 17;
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 28 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Déclaration
un algorithme a trois parties:
l’entête
la partie déclarative
le corps
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 29 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Recommandations
Pour élaborer un algorithme, il faut suivre les étapes suivantes:
Lire et comprendre bien l’énoncé du problème
Décrire les résultats à obtenir
Décrire les données nécessaire pour obtenir le résultat;
Effectuer les traitements;
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 30 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Travaux Dirigés
1 Proposez un algorithme qui permet de calculer le prix toutes taxes
comprises d’un article après l’application d’une TVA à 19,6 % sur le
prix hors taxes.
2 Proposez un algorithme qui permet de donner la distance dans un
repère du plan, les coordonnées des points et étant renseignées par
l’utilisateur.
3 Proposez un algorithme qui calcule la moyenne de 3 notes, toutes au
même coefficient.
4 Proposez un algorithme qui demande la longueur et la largeur d’un
rectangle, puis calcule et affiche son périmètre et sa surface
5 Proposez un algorithme qui demande le rayon d’un cercle, puis
calcule et affiche son périmètre et sa surface . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 31 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Phases d’un algorithme
Chapitre II: Environnements et Bibliothèque de Fonction Constante et variable
Chapitre III : Les Structures de Contrôle et Programmation Expressions et Opérateurs
Chapitre IV : Les Structures Répétitives et Programmation Les instructions de bases
Chapitre V : Les Tableaux et Programmation La représentation d’un algorithme
Travaux Dirigés
Travaux Dirigés
Traitez la fiche de travaux dirigé donnée par l’enseignant!
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 32 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
1 Chapitre I: Notion d’Algorithme et Instructions de Base
2 Chapitre II: Environnements et Bibliothèque de Fonction
3 Chapitre III : Les Structures de Contrôle et Programmation
4 Chapitre IV : Les Structures Répétitives et Programmation
5 Chapitre V : Les Tableaux et Programmation
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 33 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Outils
Le développement en C dans la plupart des autres SEs met en uvre
principalement quatre types d’utilitaires :
1 L’éditeur de texte:NotePad++
2 Le compilateur: pour transformer ( compiler ) votre source en binaire
3 L’éditeur de lien:assure le regroupement des fichiers objet et des
bibliothèques pour fournir enfin le fichier exécutable.
4 Le Débogueur:pour vous aider à traquer les erreurs dans votre
programme
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 34 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Interpréteur =! Compilateur
Un langage interprété est un langage dont les implémentations
exécutent des instructions directement sans passer par une phase de
compilation (script shell, python, PHP, JavaScript)
Un langage compilé est un langage qui requiert un compilateur
pour traduire le code source en programme binaire compréhensible
par la machine. Une fois compilé, le programme peut être démarré
et distribué sur la même plateforme (C, C++, ... ).
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 35 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Langage Compilé
Avantages
Programme immédiatement
disponible à démarrer;
Plus rapide, car il est optimisé
pour le CPU;
Code source privée.
Inconvénients
Non multi-plateforme;
Nécessite des étapes
supplémentaires pour tester.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 36 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Langage Compilé
Avantages
Programme immédiatement
disponible à démarrer;
Plus rapide, car il est optimisé
pour le CPU;
Code source privée.
Inconvénients
Non multi-plateforme;
Nécessite des étapes
supplémentaires pour tester.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 36 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Langage Interprété
Avantages
Multi-plateforme;
Simple à tester;
Facile à débugger;
Code source public.
Inconvénients
Requiert un interpréteur;
Pour chaque exécution, le
programme doit être interprété
préalablement
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 37 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Langage Interprété
Avantages
Multi-plateforme;
Simple à tester;
Facile à débugger;
Code source public.
Inconvénients
Requiert un interpréteur;
Pour chaque exécution, le
programme doit être interprété
préalablement
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 37 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Langage C
Le langage C est un langage compilé
Le compilateur C utilisé sous Linux est gcc(Gnu Compiler
Collection). On peut également l’invoquer sous le nom cc, comme
c’est l’usage sous Unix, ou g++ si on compile du code C++. Il
existe aussi une version nommée egcs, il s’agit d’une implémentation
améliorée de gcc.
Le compilateur gcc permet de produire un fichier exécutable à
partir d’un programme écrit en langage C.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 38 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Compilation
Pour compiler et produire un fichier exécutable on tape la commande
gcc:
gcc nom_source.c ou nom_source.c est le fichier.c a compilé
Par défaut, la compilation produit en sortie un fichier exécutable
nommé [Link]. Pour donner un nom explicite au fichier exécutable,
on utilise l’option -o (out) de gcc.
Nouvelle commande: gcc nom_source.c -o nom_sortie.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 39 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Exécution
Pour la compilation par défaut
./[Link].
pour la compilation avec un nom explicite au fichier exécutable
./nom_sortie.
L’option -c de la commande gcc permet de produire un fichier objet du
fichier source (c-à-d elle effectue les trois premières étapes de la
compilation mais elle ne fait pas dédition de lien).
gcc -c programme.c -o programme.o.
programme.o c’est le fichier objet généré. Il contient des informations
codées en binaire (format presque exécutable) qui représentent le
programme contenu dans le fichier source.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 40 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
IDE
Les outils 4 en un Appelés IDE : Integrated Development
Environment (en français environnement de développement)
L’éditeur de texte: NotePad++
Le compilateur: pour transformer ( compiler ) votre source en binaire
L’éditeur de lien
Le Débogueur:pour vous aider à traquer les erreurs dans votre
programme
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 41 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Quelques IDE
Quelques exemples de IDE
Code::Blocks
Visual C++ Express
Dev-C++
NB: Code::Blocks et Dev-C++ sont presque identiques
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 42 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
IDE
DevC++ fonctionne suivant les notions de Projet , comme
désormais la plupart des environnements de programmation intégrés.
Un Projet contient des informations plus techniques relatives à la
programmation. C’est dans ce fichier que seront stockés le nom des
fichiers présents, les librairies utiles, etc.
Pour créer un nouveau projet , vous devez choisir le menu "Fichier"
puis "Nouveau" "Projet". OU cliquez sur l’icône Projet
La suite en travaux Pratiques
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 43 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Hello Word
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 44 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Explication
Les #include<stdio.h> indiquent que le programme a besoin des
outils stdio.;
Pour afficher un message dans le terminal, on utilise la fonction
printf("message");
Le premier paramètre est un entier, qui représente le nombre de
paramètres;
Le deuxième est un tableau de chaine de caractères (le premier
élément pointe toujours sur la chaine donnant le nom du
programme. Les autres éléments pointent sur les paramètres de la
ligne de commande)[int main(int n, char *params[])]
parems[0]=nom de la fonction, parems[i]= paramètre i passé en
ligne de commande
. . . . . . . . . . . . . . . . . . . .
Le return EXIT_SUCCESS; à la fin du main . .
permet
.
de spécifier le
. . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 45 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Séquence d’échappement
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 46 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Type
Les types disponibles:
pour les entiers :int, short, long, long long
pour les flottants :float, double
pour les caractères :char
Déclaration
int var1;
int var2, var3, var4;
int var5 = 42;
NB: Pour les entiers : possibilité de préfixer le type par unsigned. Les
variables sont alors non-signées (ie. positives). La taille d’une variable
entière (ie. le nombre de bits/octets) dépend de l’implémentation. Le
standard C ne spécifie que la taille minimum. Ainsi, un int doit faire au
moins 16 bits, alors que la plupart des implémentations modernes
utilisent 32 bits pour les int. .
. .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
.
.
. . .
. . .
.
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 47 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Affichage/lecture
Pour afficher :printf("%d exemple de %f format ", v1, v2);
Pour lire :scanf("%d%f", &v1, &v2);
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 48 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Opérateurs
Les opérateurs disponibles:
arithmétique :+, -, *, /, %
affectation :=, +=, -=, *=, /=, %=
incrémentation/décrémentation : ++, –
comparaison :<, <=, >, >=, ==, !=
logique : !, &&, ||
Aussi
sizeof qui donne le nombre d’octets qui constitue une variable/un
type
Les opérateurs bit à bit:
Opération sur les bits d’une variable décalage :«,»
OR :|, AND :&, XOR : , NOT :
affectation :«=, »=, |=, &=, =, ˆ = . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 49 / 93
Les outils
Chapitre I: Notion d’Algorithme et Instructions de Base
Les IDEs
Chapitre II: Environnements et Bibliothèque de Fonction
Creation d’un projet C avec Dev-C++
Chapitre III : Les Structures de Contrôle et Programmation
Premier programme
Chapitre IV : Les Structures Répétitives et Programmation
Déclaration des variables
Chapitre V : Les Tableaux et Programmation
Les Opérateurs et Expressions
Format d’expression
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 50 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
1 Chapitre I: Notion d’Algorithme et Instructions de Base
2 Chapitre II: Environnements et Bibliothèque de Fonction
3 Chapitre III : Les Structures de Contrôle et Programmation
4 Chapitre IV : Les Structures Répétitives et Programmation
5 Chapitre V : Les Tableaux et Programmation
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 51 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Introduction
Le traitement de données est parfois conditionné et se réalise de manière
spécifique. On parle alors de STRUCTURES DE CONTRÔLE. Ces
structures algorithmiques peuvent être organisées suivant quatre familles
principales :
les structures linéaires
les structures alternatives
les structures répétitives
les structures de choix
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 52 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Définition
Une Structure Linéaire se caractérise par une suite de traitements
à exécuter successivement, dans lordre énoncé.
Une Condition est une expression logique booléenne, prenant la
valeur vrai ou faux (c’est-à-dire oui ou non).
Une Structure alternative (ou Structure conditionnelle) n’offre
que deux issues possibles à la poursuite de l’algorithme, qui
s’excluent mutuellement. Selon qu’une condition est vraie ou fausse,
on effectue un traitement ou un autre.
Une Structure répétitive (ou Structure Itérative ou boucle)
répète l’exécution d’un traitement, dans un ordre précis, un nombre
déterminé ou indéterminé de fois.
Une Structure de Choix permet, en fonction de plusieurs
conditions de type booléen, d’exécuter des traitements .
. . .
différents .. .. .. ..
. . . . . . . . . . . . . .
. . . . . . . . . . . . .
.
selon les
Berlin DJIONANG valeurs que peut prendre une même
Algorithmique et Programmation variable. January 15, 2024 53 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Définition
une structure séquentielle ou linéaire est une structure donc les
instructions sont exécutées l’une après l’autre de façon à ce que l’ordre
des instructions soit respecté.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 54 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Définition
une structure alternative est une structure donc les instructions sont
exécutées selon les réponses de conditions
Écrire un algorithme qui calcule le maximum de deux nombres
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 55 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Définition
La résolution de certains problèmes nécessite parfois la mise en place
d’un test pour effectuer une tâche :
si le test est positif, on effectue un certain traitement ;
sinon, c’est-à-dire si le test est négatif, on effectue un autre
traitement.
En algorithmique, on traduit cette structure alternative à laide
d’INSTRUCTIONS CONDITIONNELLES
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 56 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Définition
une structure alternative est une structure donc les instructions sont
exécutées selon les réponses de conditions
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 57 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Exemple
Écrire un algorithme qui calcule le maximum de deux nombres ;
Écrire un algorithme qui demande un nombre à l’utilisateur et
l’informe ensuite s’il est positif ou négatif
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 58 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Définition
sa syntaxe est la suivante:
Écrire un algorithme qui demande un nombre à l’utilisateur et
l’informe ensuite s’il est positif ou négatif ou nul
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 59 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Exemple
Écrire un algorithme qui calcule les racines d’un polynôme de degré
2;
Écrire un algorithme qui demande un nombre à l’utilisateur et
l’informe ensuite s’il est positif ou négatif
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 60 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Définition
Lorsque l’imbrication des alternatives devient importante, l’utilisation de
la structure à choix multiple devient nécessaire
Écrire un algorithme qui donne la représentation en lettre des
chiffres de 0 à 9.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 61 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Exercice
Les habitants de Yaoundé paient l’impôt selon les règles suivantes :
les hommes de plus de 20 ans paient l’impôt
les femmes paient l’impôt si elles ont entre 18 et 35 ans
les autres ne paient pas d’impôt
L’algorithme demandera donc l’âge et le sexe du Yaoundéens, et se
prononcera donc ensuite sur le fait que l’habitant est imposable.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 62 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Branchement conditionnel
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 63 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Branchement multiple
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 64 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Explication
L’exécution du switch est réalisée selon les étapes suivantes :
l’expression est évaluée comme une valeur entière ;
les valeurs des case sont évaluées comme des constantes entières ;
l’exécution se fait à partir du case dont la valeur correspond à
lexpression. Elle s’exécute en séquence jusqu’à la rencontre dune
instruction break;
les instructions qui suivent la condition default sont exécutées
lorsqu’aucune constante des case n’est égale à la valeur retournée
par l’expression ;
l’ordre des case et du default n’est pas prédéfini par le langage mais
par les besoins du programme ;
l’exécution à partir d’un case continue sur les instructions des autres
case tant qu’un break n’est pas rencontré ;
plusieurs valeurs de case peuvent aboutir sur les mêmes instructions ;
le dernier break est facultatif.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 65 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Travaux Dirigés
Traitez la fiche de travaux dirigés donnée par l’enseignant!
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 66 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Structure Séquentielle
Chapitre II: Environnements et Bibliothèque de Fonction Structure Alternative Simple
Chapitre III : Les Structures de Contrôle et Programmation Structure Alternative Complète
Chapitre IV : Les Structures Répétitives et Programmation Structure Alternative Imbriquée
Chapitre V : Les Tableaux et Programmation Structure Alternative Multiple
Application en C
Travaux Pratique
Faire une mini calculatrice en C permettant d’effectuer les opérations
suivantes:
Addition
soustraction
division
multiplication
modulo
puissance
racine carré
pgcd
ppcm
...etc
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 67 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
1 Chapitre I: Notion d’Algorithme et Instructions de Base
2 Chapitre II: Environnements et Bibliothèque de Fonction
3 Chapitre III : Les Structures de Contrôle et Programmation
4 Chapitre IV : Les Structures Répétitives et Programmation
5 Chapitre V : Les Tableaux et Programmation
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 68 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
Travaux Dirigés
Les boucles servent à répéter l’exécution d’un groupe d’instructions un
certains nombres de fois, on distingue trois types de boucles en algorithme
1 les boucles TANTQUE: on répète les instructions tant qu’une
condition est réalisée
2 les boucles POUR ou avec compteur: on y répète les instructions
en faisant évoluer un compteur(variable particulière) entre une
valeur initiale et une valeur finale
3 les boucles REPETER..JUSQU’A: on répète les instructions
jusqu’à’a ce qu’une condition est réalisée
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 69 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
POUR
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 70 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
Exemple POUR
Écrire un algorithme permettant de calculer x puissance n, ou x est un
nombre réel non nul et n est une entier positif ou nul
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 71 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
TANTQUE
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 72 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
Exemple TANTQUE
1 Écrire un algorithme qui contrôle la saisie d’une lettre majuscule
jusqu’à’a ce que l”entrée saisie soit valable
2 Écrire un algorithme permettant de calculer x puissance n, ou x est
un nombre réel non nul et n est une entier positif ou nul entiers.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 73 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
RÉPÉTER
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 74 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
Exemple RÉPÉTER
1 Écrire un algorithme qui détermine le premier nombre entier N tel
que la somme de 1 à N dépasse strictement 100
2 Écrire un algorithme qui contrôle la saisie d’une lettre majuscule
jusqu’à’a ce que l’entrée saisie soit valable
3 Écrire un algorithme permettant de calculer x puissance n, ou x est
un nombre réel non nul et n est une entier positif ou nul entiers.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 75 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
RÉPÉTER
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 76 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
Travaux Dirigés
1 Écrire un algorithme qui demande un nombre de départ, et qui
calcule la somme des entiers jusqu’à ce nombre
2 Écrire un algorithme qui demande un nombre de départ, et qui
calcule sa factorielle.
3 On désire emballer N ufs dans NB boites de 12. Déterminer sans
effectuer de division de nombre NB ainsi que le nombre NR des ufs
restants (on simulera la division en effectuant des soustractions
successives)
4 Écrire un algorithme qui calcule la somme des entiers saisis par
l’utilisateur jusqu’à ce qu’il saisisse -1 (qui ne doit pas être pris en
compte dans la somme)
5 Écrire un algorithme permettant à l’utilisateur de saisir un entier n
puis calcule la somme des entiers saisis par l’utilisateur jusqu’à ce
qu’il saisisse -1 ou qu’il ait saisi n entiers. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 77 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
Structures
for(i=0; i<n; i++) { ... }
while (cond) {..}
do { ...; } while(cond);
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 78 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base La structure POUR
Chapitre II: Environnements et Bibliothèque de Fonction La structure TANTQUE
Chapitre III : Les Structures de Contrôle et Programmation La structure RÉPÉTER
Chapitre IV : Les Structures Répétitives et Programmation Choix du type de Boucle
Chapitre V : Les Tableaux et Programmation Travaux Dirigés
Application en C
Travaux Dirigés
Traitez la fiche de travaux dirigés donnée par l’enseignant!
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 79 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
1 Chapitre I: Notion d’Algorithme et Instructions de Base
2 Chapitre II: Environnements et Bibliothèque de Fonction
3 Chapitre III : Les Structures de Contrôle et Programmation
4 Chapitre IV : Les Structures Répétitives et Programmation
5 Chapitre V : Les Tableaux et Programmation
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 80 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Introduction
Imaginons que dans un programme, nous avons besoin d’un grand nombre
de variables, il devient difficile de donner un nom à chaque variable.
Écrire un algorithme permettant de saisir cinq notes et de les
afficher après avoir multiplié toutes les notes par trois.
La même instruction se répète cinq fois.
Imaginons que si l’on voudrait réaliser cet algorithme avec 1000
notes, cela deviendrait fastidieux
Comme les variables ont des noms différents, on ne peut pas utiliser
de boucle, ce qui allonge considérablement le code et le rend très
répétitif.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 81 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Définition
Un tableau est une suite d’éléments de même type. Il utilise
plusieurs cases mémoire à l’aide d’un seul nom. Comme toutes les
cases portent le même nom, elles se différencient par un numéro ou
un indice.
Nous pouvons représenter schématiquement un tableau nommé Note
composé de cinq cases, dans la mémoire comme suit :
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 82 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Déclaration
La déclaration d’un tableau permet d’associer à un nom une zone
mémoire composée d’un certain nombres de cases mémoires de
même type.
la syntaxe de déclaration est la suivante :
Var identificateur : tableau[indice_min .. indice_max] de type
Var identificateur : tableau[taille] de type
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 83 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Remarques
Le premier élément d’un tableau porte l’indice zéro ou l’indice 1
selon les langages.
La valeur d’un indice doit être un nombre entier
La valeur d’un indice doit être inférieure ou égale au nombre
d’éléments du tableau. Par exemple, avec le tableau tab[1 .. 20], il
est impossible d’écrire tab[0] et tab[21]. Ces expressions font
référence à des éléments qui n’existent pas.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 84 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Exercices
Déclarer deux tableaux nommés A et B composé chacun d’eux de 20
éléments de type chaîne
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 85 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Utilisation
Les éléments d’un tableau sont des variables indicées qui s’utilisent
exactement comme n’importe quelles autres variables classiques.
Elles peuvent faire l’objet d’une affectation, elles peuvent figurer
dans une expression arithmétique, dans une comparaison, elles
peuvent être affichées et saisies
L’utilisation de ces éléments se fait en suite, via le nom du tableau
et son indice. Ce dernier peut être soit une valeur (exemple :
Note[3]) , soit une variable (exemple : Note[i] ) ou encore une
expression (exemple : Note[i+1])
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 86 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Exercice Parcours
Écrire un algorithme permettant de saisir 30 notes et de les afficher
après avoir multiplié toutes ces notes par un coefficient fourni par
l’utilisateur
Écrire un algorithme qui calcul la somme des éléments d’un tableau.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 87 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Solution Exercice 1
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 88 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Définition
Reprenons l’exemple des notes en considérant cette fois qu’un
étudiant a plusieurs notes (une note pour chaque matière). Pour
quatre étudiants, nous aurions le tableau de relevés des notes
suivant :
Les tableaux à deux dimensions se représentent comme une matrice
ayant un certain nombre de lignes (première dimension) et un
certain nombre de colonnes (seconde dimension).
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 89 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Déclaration
la syntaxe de déclaration est la suivante :
Var identificateur : tableau[1..nb_lignes, 1..nb_colonnes] de
type
Var identificateur : tableau[nb_lignes, nb_colonnes] de type
L’instruction suivante déclare un tableau Note de type réel à deux
dimensions composé de 3 lignes et de 4 colonnes
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 90 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Utilisation
Pour accéder à un élément de la matrice (tableau à deux
dimensions), il suffit de préciser, entre crochets, les indices de la case
contenant cet élément.
Les éléments de la matrice peuvent être utilisés comme n’importe
quelle variable.
Quelles est l’instruction qui affecte à la variable X la valeur du
premier élément du tableau Note
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 91 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Parcours
Pour parcourir une matrice nous avons besoin de deux boucles, l’une
au sein de l’autre, c’est ce qu’on appelle les boucles imbriquées.
La première boucle par exemple est conçue pour parcourir les lignes
tandis que la deuxième est utilisée pour parcourir les éléments de la
ligne précisée par la boucle principale (la première boucle).
Écrire un algorithme permettant la saisie des notes dune
classe de 30 étudiants en 9 unités d’enseignements.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 92 / 93
Introduction
Chapitre I: Notion d’Algorithme et Instructions de Base Définition
Chapitre II: Environnements et Bibliothèque de Fonction Tableau à une Dimension
Chapitre III : Les Structures de Contrôle et Programmation Utilisation
Chapitre IV : Les Structures Répétitives et Programmation Tableau à deux Dimension
Chapitre V : Les Tableaux et Programmation Déclaration
Utilisation
Parcours d’un tableau à deux dimension
Solution
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
Berlin DJIONANG Algorithmique et Programmation January 15, 2024 93 / 93