Vous êtes sur la page 1sur 6

Module 1 : algorithmique et programmation

Chapitre 1 : écriture et exécution d’un algorithme intégrant les structures

de contrôle

Lecon1 : Structures de contrôle algorithmiques

Compétences : Décrire les structures de contrôle algorithmiques


Situation problème
Vous désirez écrire un algorithme qui demande un nombre à l’utilisateur puis calcule et
affiche le produit de ce nombre par les N premier entiers si ce nombre est positif. Si le nombre
est négatif le message suivant sera affiché : erreur sur le nombre nombre

Consignes
1. Définir algorithme, instruction
2. Donner les types de structures de contrôle
3. Donner le nom et le type de variable qui seront utilisés
4. Citer les structures de contrôle à utiliser
5. Ecrivez cet algorithme

Introduction
Une structure de contrôle est une instruction particulière pouvant modifier l'ordre
d’exécution des instructions d’un algorithme lorsqu’elle est présente. On distingue trois types
à savoir les structures alternatives ou conditionnelles, les structures répétitives ou itératives les
structures séquentielles.

I. La structure alternative
C’est une structure qui permet l’exécution d’une action selon qu‘un test est vrai ou faux.
On les classe en deux groupes : la structure alternative simple ou réduite et la structure
alternative complète dont les syntaxes sont :

structure alternative réduite alternative complète


Si (condition) alors Si (condition) alors
bloc instructions ; bloc instructions 1;
FinSi Sinon
bloc instructions 2;
FinSi
II. La structure à boucle
C’est une structure qui répète l‘exécution d‘une séquence d’instructions plusieurs fois
selon une condition. On peut citer ici :

 La boucle Pour : c’est une boucle dont le nombre de répétition ou d’itération est
connue. Sa syntaxe est
Pour compteur de val_initial à val_final faire
bloc instructions ;
FinPour
 Les boucles conditionnelles répéter... jusqu‘à et tant que... faire : elles sont utilisées
lorsque le nombre d’itération est inconnue. Les syntaxes sont :

Tantque (condition vraie) faire Repeter


bloc instructions ; bloc instructions;
FinTanque Jusqu‘à(condition vraie)
Remarque :
 Avec la boucle Tant que La condition est analysée à l’entrée de la boucle, si elle n’est
pas réalisée, la boucle ne sera jamais parcourue. Avec la boucle répétée par contre, La
condition est analysée à la fin de la boucle, la boucle sera parcourue au moins une fois
même si la condition n’est pas réalisée.
 Avec tant que La boucle est parcourue lorsque la condition est vraie alors qu’avec
répété La boucle est parcourue lorsque la condition est fausse
Jeu bilingue :

Français Anglais
Algorithme Algorithm
Instruction Instruction
Pour for
Tant que While
Répéter jusqu'a Repeat until

Leçon 2 : les structures de données et tableaux


Compétences :
 Définir et citer les structures de données
 Créer un tableau un tableau

Situation problème

Une structure des données est une méthode utilisée pour stocker et organiser les données dans
un ordinateur de façon à les utiliser efficacement. Il existe plusieurs types :
Les Piles : ce sont des structures de données dans laquelle l’ajout et la suppression des
éléments se fait suivant la règle du dernier arrivé premier sorti (LIFO : Last In First Out
Les Files : ce sont des structures de données dans laquelle l’ajout et la suppression des
éléments se fait suivant du premier arrivé premier (FIFO : Last In First Out).
Les Listes chaînée: c’est un ensemble de cellules liées entre elles par des pointeurs. Chaque
cellule contient les données et un pointeur vers la cellule suivante.
Les Tableaux : Un tableau est une structure de donnée ayant une taille fixe et qui permet de
manipuler les données de même type
Les Enregistrements : Un enregistrement est un type de données qui permet de grouper un
nombre fini d'éléments (ou champs) de types éventuellement différents.
I. Les tableaux
1. Définition
Le tableau peut aussi se définir comme étant une structure de donnée séquentielle qui permet
de stocker un certain nombre d’éléments repérés par un index. Un tableau doit satisfaire les
propriétés :

 Tous les éléments sont de même type de base ;


 La taille du tableau (le nombre d’éléments stockés) est fixée ;
La déclaration d’un tableau se fait suivant l’une des syntaxes suivantes :

 Nom tableau = Tableau [indice min .. Indice max] de type élément ;


 Nom tableau = Tableau [taille] de type élément ;

Exemple Note=tableau [1 .. 10] de entier ;


2. Parcours et remplissage d’un tableau
Pour parcourir un tableau on utilise généralement la boucle Pour. Sachant que chaque élément
du tableau a un indice ou index le remplissage d’un tableau peut se faire avec les instructions
suivantes :

 Une affectation Exemple Note [4] =15 ;


 Une instruction d’entré ou de lecture : si l’on souhaite remplir l’élément d’indice i la
syntaxe est Lire (Nom_tableau[i]) ; exemple lire note [i]
 Une instruction d’affichage : Pour afficher les différents éléments d’un tableau de
taille n les uns après les autres, on écrira :
Pour i allant de 1 à n faire
Ecrire (Tab[i]) ;
FinPour
II. Les enregistrements
Les enregistrements ou structures sont des structures de données dont les éléments peuvent
être de différents types. Les éléments qui composent un enregistrement sont appelés champs.
Chaque champ étant un tableau. Un enregistrement est défini de la manière suivante.
Nom_enregistrement = Enregistrement
Nom_champ1 : type_champ1 ;
Nom_champ2 : type_champ2 ;
…..
Nom_champ n : type_champ n ;
Fin Enregistrement;
Exemple : un enregistrement regroupant les informations d’un élève est déclaré comme suit :

Pour accéder à un champs d’un enregistrement, on se sert du nom du champs et de celui de


l’enregistrement en utilisant la syntaxe suivante : Nom_enregistrement.Nom_du_Champ
Exemple pour accéder au champs Age de l’enregistrement Personne, on écrit :

Personne. Age
Remarque : tout comme pour les éléments d’un tableau, on peut appliquer sur les champs
d’un enregistrement les opérations d’affectation, de saisie, d’affichage…
Exercice :
1. Ecrire un algorithme qui calcule n !
2. Ecrire un algorithme qui affiche la table de multiplication d’un nombre
3. Ecrire un algorithme qui sauvegarde 50 nombres saisi par l’utilisateur dans un tableau puis
les affiche.
4. Créer type enregistrement qu’on peut utiliser pour sauvegarder les informations sur un
élève sachant que ce dernier possède un nom, un prénom, une date et lieu de naissance, l’âge
et le sexe.

Leçon 3 : Parcours et recherche dans un tableau

Compétences
 Parcourir un tableau à une dimension
 Résoudre des problèmes de recherche séquentielle dans un tableau
Situation problème
Introduction
Une fois les données remplies dans un tableau on peut les parcourir au moyen des structures,
faire des modifications et des recherches au moyen des structures de contrôle. On distingue
généralement deux types de recherche dans tableau, à savoir la recherche séquentielle et la
recherche dichotomique.
La recherche dichotomique est plus rapide car on ne consulte pas séquentiellement tous les
éléments du tableau. Elle consiste à couper en deux le tableau trié et de regarder dans quelle
partie du tableau se trouve l’élément cherché.

I. La recherche séquentielle ou linéaire


Aussi appelée recherche par balayage, le principe consiste à parcourir le tableau à partir du
premier élément, et à s'arrêter dès que l'on trouve l'élément cherché ou lorsque toutes les cases
aient été parcourues (dans ce cas l’élément recherché ne se trouve pas dans le tableau).

 La recherche séquentielle peut être utilisée pour : Chercher si une valeur appartient à
un tableau : L’algorithme de recherche séquentielle de l’élément x dans un tableau
nommé Tab déjà rempli et contenant n éléments est le suivant :

i=1;
Tantque (i<=n ET T [i]<>m) faire
Ii+1;
FinTanque
Si (i<=n) alors
Ecrire (" Elément en position", i) ;
Sinon
Ecrire (" Elément introuvable !") ;
FinSi

 La recherche du maximum ou du minimum dans un tableau : le principe pour


déterminer la valeur maximale dans un tableau est d’attribuer initialement à la variable
max la valeur se trouvant à l’indice 1. Lorsque la valeur à l’indice i est plus grande
que max, max devient alors la valeur à l’indice i. l’algorithme lorsque le tableau est
déjà rempli est le suivant :

max=TAB[1];
Pour (i allant de2 à n) faire
si (TAB[i]>max)
max⟵TAB[i];
finsi
finPour
Ecrire("Le plus grand est : ", max);
II. Notion de tri
Un algorithme de tri un algorithme qui permet d’organiser les données d’un tableau selon une
relation d'ordre déterminée (croissant ou décroissant). Il existe plusieurs méthodes de tri :
 Le tri par insertion : c’est considéré comme le tri le plus efficace sur des entrées de
petite taille.
 Le tri rapide :
 Le tri à bulle ou tri par propagation : consiste à comparer répétitivement les éléments
consécutifs d‘un tableau et à les permuter lorsqu‘ils sont mal triés
Leçon 4 : exécution d’un algorithme
Compétence :
Ecrire et exécuter un algorithme utilisant les structures de contrôle et de données
Situation problème

Consignes
1. Quelle est la taille du tableau T ?
2. Donner les indices du premier et du dernier élément de ce tableau.
3. Déclarer de deux façons le tableau T.
4. Ecrire le bout d’algorithme permettant de :
 Saisir la taille du tableau.
 Remplir et afficher le contenu du tableau.
5. En considérant le tableau T, déterminé :
 La position du minimum
 La position du maximum
 La valeur du maximum
 La valeur du minimum

Vous aimerez peut-être aussi