0% ont trouvé ce document utile (0 vote)
19 vues18 pages

Info Tle D Module 3

Le document traite des algorithmes et de la programmation, en se concentrant sur les structures de contrôle algorithmiques, notamment les structures itératives et conditionnelles. Il présente également les types de structures de données, comme les tableaux, enregistrements, listes chaînées, piles et files. Enfin, il aborde les bases de la programmation en langage C, y compris la définition des langages de programmation et les outils nécessaires pour programmer.

Transféré par

Salmana Hanane
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
19 vues18 pages

Info Tle D Module 3

Le document traite des algorithmes et de la programmation, en se concentrant sur les structures de contrôle algorithmiques, notamment les structures itératives et conditionnelles. Il présente également les types de structures de données, comme les tableaux, enregistrements, listes chaînées, piles et files. Enfin, il aborde les bases de la programmation en langage C, y compris la définition des langages de programmation et les outils nécessaires pour programmer.

Transféré par

Salmana Hanane
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

MODULE III : ALGORITHME ET PROGRAMMATION

UA : LES STRUCTURES DE CONTRÔLE ALGORITHMIQUE

I. Généralités sur les Algorithmes


Retenons:
Algorithme : suite finie et ordonnée d’instructions permettant de résoudre un
problème donné.
Instruction : c’est un ordre donné à l’ordinateur qui doit etre exécuter à la lettre.
Structure de contrôle : C’est une instruction particulière pouvant modifier
l’exécution des instructions d’un programme
Structure itérative : ou boucle répète l‘exécution d‘une
instruction ou d‘un ensemble d‘instructions.

II. les structures algorithmiques


Il existe deux types de structure algorithmique : Les structures de contrôle et les
structures de données.
1- Les structures de contrôles

On distingue trois grands types de structure de contrôle à savoir : les structures


itératives, les structures conditionnelles et les structures séquentielles.
Nous allons nous étaler sur les structures itératives et conditionnelles.

 Les structures itératives ou répétitives

Encore appelé boucle, elles sont au nombre de 3 :

● La boucle « Pour …Faire… » :

Syntaxe :
Pour (Valeur initiale jusqu’à valeur finale) faire
Instructions
Finpour

Remarque : Cette boucle est utilisée lorsqu’on connait le nombre d’itérations (de tour) à effectuer.
● La boucle « tant que …faire… » :
Syntaxe:
Tantque (condition) faire
Instructions
FinTantque
Remarques :
- 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.


- La boucle est parcourue tant que la condition est vraie.

- On ne connait pas dès le départ le nombre de fois où la boucle va être réalisée.


Page 1 sur 18
● La boucle « répéter… jusqu’à ce que » :
Syntaxe :
Répéter
Instructions
Jusqu’à ce que (condition)

Remarque :

- 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é.

- La boucle est parcourue tant que la condition est fausse.

- On ne connait pas le nombre de fois où cette boucle sera réalisée.


Bon à savoir : Différence entre ces 3 boucles itératives
Boucle « pour » Boucle Boucle
« tantque » « répéter »
Nombre Nombre Nombre
d’itération d’itérations d’itérations
connue inconnus inconnus
La boucle peut La boucle peut La boucle est
ne pas être ne pas être parcourue au
parcourue parcourue moins une fois
La condition est La condition est La condition est
analysée à analysée à analysée à la fin
l’entrée l’entrée de la boucle
La boucle sera La boucle sera La boucle sera
parcourue tant parcourue tant parcourue tant
que la condition que la condition que la condition
est vrai est vrai est fausse

2. Les structure conditionnelles ou alternatives : Rappel

Elles permettent d’exécuter une portion de code lorsqu’une condition est respectée.
On a:

● La Boucle Si …alors (structure conditionnelle simple)

Syntaxe :
Si (condition) alors
Instructions
Finsi

Page 2 sur 18
Organigramma de la structure si….alors

● La boucle Si … sinon …alors (structure conditionnelle complète)

Syntaxe :
Si (condition1) alors
Instructions
Sinon si (condition2) alors
Instructions
Sinon
Instructions
Finsi

EXERCICES ET CORRIGES

Exercices
1.Écrire un algorithme permettant de faire la somme des n premiers entier naturel,
« n » étant le nombre entré par l’utilisateur.

2.Écrire un algorithme qui vérifie si le nombre entré par l’utilisateur est égale de 2025,
si tel est le cas, il affiche « Bienvenue en 2025 »

3.Pour aller de la ville Pour la campagne, un taxi porte plusieurs personnes au prix
total de 6000frs par tour c’est-à-dire aller et retour. Mozo est un taximan faisant cette
ligne, il souhaite gagner au 30 000frs. Ecrit un algorithme qui détermine le nombre de
tour qu’il doit faire.

CORRECTION

Page 3 sur 18
1 2.
3.
Algorithme :
.Algorithme : Algorithme :
Annee_Actuelle
Somme_des_n_entiers Nombre_de_tour
Var n, i, somme: entier Var nombre : entier
Var tour, gain :entier
Début : Début :
Début :
Somme = 0 ; Nombre = 0 Tour = 0 ;

Ecrire (‘’Entrer un nombre Tantque (nombre # 2025) Gain = 0 ;


entier n :’’) faire
Répéter
Lire (n) Ecrire (‘’Entrer un
nombre :’’) Gain = gain+6000 ;
Pour i allant de 0 à n faire
Lire nombre ; Tour = tour+1 ;
Somme = somme +1 ;
FintantQue jusqu’à ce que
I = i+1 ; (gain=30000)
Finpour Ecrire ‘’Bienvenue en
ecrire tour ;
2025’’ ;
Ecrire somme ;
Fin Fin
Fin

Page 4 sur 18
LEÇON : LES STRUCTURES DE DONNÉES ALGORITHMIQUE

Résume:
Une structure de données est une manière particulière de stocker et d’organiser des
données dans un ordinateur de façon à pouvoir être utilisées efficacement.

I- LES TYPES DE STRUCTURE DE DONNEES


Différents types de structures de données existent pour répondre à des problèmes très
précis. Parmi celles-ci nous pouvons citer : les tableaux, les enregistrements, les listes
chaînées, les piles et les files.
1. Les tableaux

Un tableau est une structure de donnée T qui permet de stocker un certain nombre

d’éléments T[i] repérés par un index i. Les tableaux sont des structures de données

séquentielles. Les tableaux vérifient généralement les propriétés suivantes :

- tous les éléments ont le même type de base ;

- le nombre d’éléments stockés est fixé ;

2. les enregistrements

Les enregistrements sont des structures de données dont les éléments peuvent être de

type différent. Pour créer des enregistrements, il faut déclarer un nouveau type (type

structuré), basé sur d'autres types existants.

Après avoir défini un type structuré, on peut l'utiliser comme un type normal en

déclarant une ou plusieurs variables de ce type.

NB: Les éléments qui composent un enregistrement sont appelés champs

3. Listes chainées
Une liste chainée est une structure de données représentant une collection ordonnée et
de taille arbitraire d’éléments de même type. Les listes chainées sont représentées dans
la mémoire de l’ordinateur par une succession de cellules faites d’un contenu et d’un
pointeur vers une autre cellule

NB : les listes chainées sont des structures linéaires

Page 5 sur 18
Contrairement aux tableaux et aux listes chaînées, les piles et les files se définissent

par leur comportement (en répondant à la question « qu'est-ce que cela fait ») ; on dit

que ce sont des structures de données abstraites.

4. Les piles

Une pile (stack en anglais) est une structure de données dynamique fondée sur le

principe « dernier arrivé, premier sorti » (en anglais LIFO pour Last In First Out).
Ceci veut dire en général que le dernier élément ajouté dans la pile est le premier à en

sortir..

5. Les files

Une file ou file d'attente, queue, est une structure de données dynamique basée sur le

principe « premier entré, premier sorti » désigné en anglais par l’acronyme FIFO pour

First In First Out. Ceci veut dire que les premiers éléments ajoutés à la file seront les

premiers à en être retirés.

II- UTILISATION D’UN TABLEAU


La déclaration d’un tableau peut se faire de plusieurs façons. Les plus utilisées

sont les suivantes :

- Variable nom_tableau : Tableau [ taille ] de type ;

- Ou bien Variable Tableau nom_tableau [ taille ] : type ;

- Ou encore Variable nom_tableau : Tableau [ indice_min .. indice_max ] de type ;

Rappelons que dans un tableau, chaque élément est repéré par son indice ; le premier

élément peut avoir pour indice 0 ou 1 selon le langage utilisé.

Exemple : On désire déclarer un tableau nommé Note de 4 éléments de type réel

Variable Note : Tableau [5] de Réel ;

Résultat :

Note 0 1 2 3 4
Dans cet exemple, le premier élément a pour indice 0 et le dernier 4
NB : ce tableau peut aussi être déclaré comme suit : Variable Note : Tableau [ 1 .. 5 ]
de Réel ; dans ce cas, le premier élément aura pour indice 1 et le dernier 5.

Page 6 sur 18
LEÇON: RECHERCHE SÉQUENTIELLE DANS UN TABLEAU

Compétences visées
- Ecrire l’algorithme de recherche séquentielle;
- Résoudre des problèmes concrets de recherche des données dans un tableau

Situation Problème

Étantdonné un tableau contenant 10 notes dont la structure est la suivante :

12 12.5 10 9.75 8 17 13 11 5.5 9


On désire écrire l’algorithme permettant de rechercher la note 17 et afficher
vrai si on a retrouvé la note.

INTRODUCTION

Il existe différentes méthodes algorithmiques plus ou moins futées pour chercher, dans
un tableau, un élément dont la valeur est donnée.

I. RECHERCHE SÉQUENTIELLE
C’est la méthode de recherche la plus simple. On parcourt le tableau du début à la fin
ou de la fin au début jusqu’à ce qu’on ait trouvé ce qu’on cherchait ou qu’on ait
entièrement parcouru le tableau.

Écrivons l’algorithme correspondant à la situation de notre problème. On suppose que


le tableau est déjà créé.
Algorithme recherche
Const n=10 ; //le nombre d’élément du tableau ou encore la taille du tableau
Var i : Entier ; // indice du parcours du tableau
ElemCherch : Réel ; //élément recherché dans le tableau
Trouve : Booléen ; // vrai si l’élément a été trouvé
Notes : Tableau [1..n] : Réel ;//déclaration du tableau
Début
// Lecture de l’élément recherché
Écrire (‘’entrez la note que vous recherchez’’) ;
Lire (ElemCherch) ;
//initiation des variables de contrôles
i1 ;
Trouvefaux ;
Tantque(i<=n) et (Trouve=faux) Faire//Parcours du tableau
Si Notes[i]=ElemCherchAlors//on a trouvé la note
Écrire (‘’vrai’’) ;
TrouveVrai ;
Sinon
Page 7 sur 18
TrouveFaux ;//on n’a pas trouvé la note, on passe à l’indice suivant
Finsi
ii+1 ;
Fintantque
Fin

II. EXÉCUTION D’UN ALGORITHME DE RECHERCHE SÉQUENTIELLE


Pour exécuter un algorithme, il suffit de conserver une trace des valeurs en cours des
différentes variables et d’exécuter une à une les opérations qui composent l’algorithme

(en respectant la sémantique des structures de contrôle) en reportant leur éventuel

impact sur les valeurs des différentes variables. Dans le cas présent, nous avons à faire

à un algorithme de recherche séquentielle dans un tableau utilisant un structure

itérative.

L’exécution de cet algorithme se présente sous la forme d’un tableausachant que la valeur recherchée est 17.

Notes ElemCherch i Notes[i]= ElemCherch Trouve Resultat


(Tableau (Élément (indice (On vérifie si l’élément (Vrai si
contenant recherché) de du tableau à l’élément
les notes) parcours l’indice i correspond à la est
du valeur recherchée) trouvé)
tableau)
12 17 1 12=17 Faux Faux /
12,5 17 1+1=2 12,5=17 Faux Faux /
10 17 2+1=3 10=17 Faux Faux /
9,75 17 3+1=4 9,75=17 Faux Faux /
8 17 4+1=5 8=17 Faux Faux /
17 17 5+1=6 17=17 Vrai Vrai Vrai
13 17 6+1=7 13=17 Faux Faux /
11 17 7+1=8 11=17 Faux Faux /
5,5 17 8+1=9 5,5=17 Faux Faux /
9 17 9+1=10 9=17 Faux Faux /

Page 8 sur 18
UA : PROGRAMMATION EN LANGAGE C

LEÇON : NOTIONS DE BASES DE LA PROGRAMMATION EN C


Compétences visées
 Citer quelques langages de programmation ;
 Citer quelques exemples d’IDE ;
 Installer un IDE ;
 Écrire la structure d’un programme C ;
Situation Problème
Votre avez écrit un algorithme permettant de résoudre une équation de second
degré dans R. Votre enseignant d’informatique vous informe que vous pouvez traduire
cet algorithme dans un langage de programmation dans votre machine de telle sorte à
l’exécuter à chaque fois que vous le voudrez juste en entrant les valeurs. Il vous
informe qu’il existe plusieurs langages de programmation parmi lesquels le C et que
c’est ce langage que vous allez utiliser.
Questions et réponses:
1. Définir langage de programmation? (un langage de programmation est un
langage utilisé en informatique pour écrire des programmes)
2. Citer les outils nécessaires pour programmer en C (pour programmer en C, il
faut installer un IDE)
3. Citer deux exemples de langages de programmation (C++, C#, python, PERL,
java..)

RETENONS
Programmer signifie réaliser des « programmes informatiques ». Les programmes
demandent à l'ordinateurd'effectuer des actions. L’ordinateur est rempli de
programmes en tous genres :
la calculatrice est un programme ; votre logiciel de « chat » est un programme ; les jeux vidéo
sont des programmes. Il existe de nombreux langages de programmation plus ou
moins de haut niveau en informatique dans lesquels on peut écrire des programmes. En
voici quelques-uns par exemple : C; C++ ; Java ; Visual Basic ; Delphi; PHP. JavaScript etc. Dans cette
leçon, nous allons étudier les notions élémentaires pour la programmation en C.

I. NOTION DE LANGAGE DE PROGRAMMATION

Définitions
Un langage de programmation: est ensemble de règles syntaxiques permettant
l’écriture des programmes.
Un programme: est ensemble d’instructions permettant à un ordinateur de
résoudre une ou plusieurs tâches.
Une instruction: est un ordre élémentaire interprétée et exécuté par le processeur

1) Types de langage de programmation


Il existe deux types de langage de programmation : les langages procéduraux et
les langages orientés objets.
Page 9 sur 18
 Un langage procédural : est un langage dans lequel les programmes sont
essentiellement composés de procédures.
 Un langage orienté objet : est langage dans lequel les composants du programme sont des objets.
( Langage Compilé / langage interprété)
- Dans un langage compilé, le compilateur traduit le programme entier une fois
avant son exécution. Exemples : C, C++, Java
- Dans un langage interprété, l’interpréteur traduire au fur et à mesure les instructions
du programme à chaque exécution. Exemples : PHP, java, JavaScript

2) Historique et caractéristiques du langage c


a. Historique
Le langage C a été conçu en 1972 dans « Bell Laboratories » par Dennis Ritchie
avec l’objectif d’écrire un système d'exploitation (UNIX) .En 1978, une première
définition rigoureuse du langage C (standard K&R-C) a été réalisée par Kernighan et
Ritchie en publiant le livre « The C Programming Language ».
b. Caractéristiques
 Universel : n'est pas orienté vers un domaine d'application
Particulier (applications scientifiques, de gestion, …)
 Près de la machine : offre des opérateurs qui sont proches de ceux du langage
machine (manipulations de bits, d’adresses, …)
 Modulaire : peut-être découpé en modules qui peuvent être compilés séparément
 Portable : il est possible d'utiliser le même programme sur plusieurs systèmes
(hardware, système d’exploitation)

3 ) Notion d’IDE
De manière générale, pour programmer, on a besoin de trois éléments :
 un éditeur de texte : pour écrire le code source du programme ;
 un compilateur : pour transformer (« compiler ») votre source en binaire ;
 un débogueur : pour vous aider à traquer les erreurs dans votre programme.
Ces trois éléments peuvent être regroupés dans un seul programme appelé IDE
(Integrated Developpment Environnement) ou Environnement de Développement
intégré en français. Les IDE les plus connus sont : Dev-C++ ; Code ::Blocks. ; Visual
C++. ; Visual Studio Express.
Certains IDE intègrent leur propre compilateur, il suffit de les cocher au moment de
leur installation ; d’autres par contre doivent être installés indépendamment.

4 ) Structure d’un programme en C


Un programme en C se présente de la façon suivante :
[directives au préprocesseur]
[déclarations de variables externes]
[fonctions secondaires]
Int main()
{ déclarations de variables internes,
Page 10 sur 18
instructions
}
La ligne : int main () se nomme un "en-tête". Elle précise que ce qui sera décrit à sa
suite est en fait le ''programme principal". Elle peut avoir des paramètres formels.
Le programme (principal) proprement dit est constitué des variables internes et des
instructions et vient à la suite de cet en-tête. Il est délimité par les accolades "{" et "}".

Exercice
1. Quelle différence faites-vous entre un algorithme et un programme ?
2. Citer trois exemples de langage de programmation que vous connaissez.
3. Que signifie IDE ? donnez en deux exemples
4. Répondre par vrai ou faux :
a) Le C est un langage de programmation interprété
b) Le C est un langage portable c’est-à-dire qu’on peut l’utiliser sur plusieurs
systèmes.
c) Le noyau du système d’exploitation UNIX est écrit en C
Correction
1. Un algorithme est écrit dans un langage naturel proche du langage humain alors
qu’un programme est la traduction d’un algorithme dans un langage de
programmation ?
2. Trois exemples de langage de programmation : C, java, PHP, Delphi
3. IDE signifie : Integrated Developpment Environment .Deux exemples : DevC++,
Code::Blocks
4. Répondre par vrai ou faux :
a) Faux
b) Vrai
c) Vrai

Page 11 sur 18
LEÇON : LES STRUCTURES DE CONTRÔLE EN C

Problème
Soit le programme suivant qui affiche une décision sur la base de la moyenne obtenue
au BACCALAUREAT.
#include<stdio.h>
intmain(void)
{
Float moyenne= 12,50;
if(moyenne<10)
{
printf("recaler au Baccalaureat\n");
}else{

printf("admis au Baccalauréat\n");
}
Return
}

Consignes :
1. Identifier, puis relever dans le programmele critère qui permet d’indiquer qu’un
élève est admis au Baccalauréat.
Réponse : (Moyenne>=10)
2. Identifier, puis relever l’instruction qui est exécutée dans ce cas de figure.
Réponse
: printf("admis au Baccalauréat\n")
3. Relever la portion du programme qui contient les éléments de la question 1 et de la
question 2.
Réponse
else{
printf("admis au Baccalauréat\n");
}

4. Identifier, puis relever dans le programme la structure de contrôle utilisée.


Réponse :
Ils’agit de la structure alternative complète if avec else.

Page 12 sur 18
RETENONS
Notion de structure de contrôle
Les structures de contrôle définissent la suite dans laquelle les instructions sont
effectuées. On distingue comme structures de contrôle : conditionnelle ou alternative(
if(){} ) ; itérative ou boucle ( for(){}, while(){} ; et do {}while() ) en langage C.

I- LA STRUCTURE ALTERNATIVE
1- LA STRUCTURE ALTERNATIVE RÉDUITE (if sans else qui signifie « si sans sinon »))
Permet d’exécuter une liste d’instructions sur la base d’une condition préalablement
fixée.
Syntaxe :
La syntaxe de la structure if sans else est la suivante :
if (/* Condition */)
{
/* instruction ou Bloc d'instructions */
}
Exemple :
#include<stdio.h>
intmain(void)
{
Int i= -5;
If (i<0)
{
Printf ("ce nombre est négatif\n");
}
Return 0;
}
Résultat : ce nombre est négatif

2- LA STRUCTURE ALTERNATIVE COMPLÈTE ( if avec else qui signifie « si avec sinon »))
Syntaxe : La condition est testée et la liste d’instructions 1 est exécutée lorsque cette
condition est vraie. Dans le cas contraire, c’est plutôt la liste d’instructions 2 qui est
exécutée.
La syntaxe de la structure if avecelseest la suivante.
if (/* Condition */)
{
/* instruction 1 ou Bloc d'instructions 1*/
}else{

/* instruction 2 ou Bloc d'instructions 2*/


}

Page 13 sur 18
Exemple :
#include<stdio.h>
intmain(void)
{
inti=7;
if(i<0)
{
printf("ce nombre est négatif\n");
}else{
printf("ce nombre est positif\n");
}
return0;
}
Résultat : ce nombre est positif

3- LA STRUCTURE ALTERNATIVE COMPLÈTE ( if – else if - …- elsequi signifie « si-sinon si-…-


sinon »))
En combinant plusieurs structures if-else en une expression nous obtenons une
structure qui est très courante pour prendre des décisions entre plusieurs alternatives.
Syntaxe : La syntaxe de la structure if – else if - …- else est la suivante.
if (/* Condition 1 */)
{
/* instruction 1 ou Bloc d'instructions 1*/
}elseif (/* Condition 2 */)
{
/* instruction 2 ou Bloc d'instructions 2*/
}elseif (/* Condition N */)

/* instruction N ou Bloc d'instructions N*/


} else {
/* instruction n+1 ou Bloc d'instructions n+1*/
}

Exemple :
#include<stdio.h>
intmain(void)
{
int x, y;
printf("Entrer deux nombres entiers\n");

Page 14 sur 18
scanf("%d %d",&x,&y) ;
if(x > y)
{
printf("%d est plus grand que %d\n",x,y);
}else if( x < y){ printf("%d est plus petit que %d\n",x,y);
}else{
printf("%d est égal à %d\n",x,y);
}
return0;
}
Résultat : pour x=2 et y= 3, ce programme affiche 2 est plus petit que 3.

II- LA NOTION DE BOUCLE


Une boucle est un moyen de répéter des instructions suivant le résultat d’une

Structure itérative Action


Répète une suite d’instructions tant qu’une condition est
while…
respectée.
Répète une suite d’instructions tant qu’une condition est
do… while… respectée. Le groupe d’instructions est exécuté au moins une
fois.
for… Répète un nombre fixé de fois une suite d’instructions.

condition . Ces structures, dîtes itératives, que nous allons voir sont les suivantes.

1- LA BOUCLE WHILE (qui signifie « tant que »)


La première des boucles que nous allons étudier est la boucle while (qui signifie « tant
que »). Celle-ci permet de répéter un bloc d’instructions tant qu’une condition est
remplie.
Syntaxe :
La syntaxe de notre boucle while est assez simple.
while (/* Condition */)
{
/* Bloc d'instructions à répéter */

Exemple :
#include<stdio.h>
intmain(void)
{
inti = 0;
Page 15 sur 18
while (i<4)
{
printf("La variable ivaut %d\n", i);
i++;
}
return0;
}

Résultat :
La variable i vaut 0
La variable i vaut 1
La variable i vaut 2
Le fonctionnement est simple à comprendre :
Au départ, notre variable i vaut zéro. Étant donné que zéro est bien inférieur à cinq, la
condition est vraie, le corps de la boucle est donc exécuté.
La valeur de i est affichée.
i est augmentée d’une unité et vaut désormais un.
La condition de la boucle est de nouveau vérifiée.
Ces étapes vont ainsi se répéter pour les valeurs un, deux, trois et quatre. Quand la
variable i vaudra cinq, la condition sera fausse, et l’instruction while sera alors passée.

2- LA BOUCLE DO-WHILE(qui signifie « repeter »).

La boucle do while fonctionne comme la boucle while, à un petit détail près : elle
s’exécutera toujours au moins une fois, alors qu’une boucle while peut ne pas
s’exécuter si la condition est fausse dès le départ.

Syntaxe
À la différence de la boucle while, la condition est placée à la fin du bloc d’instruction
à répéter, ce qui explique pourquoi celui-ci est toujours exécuté au moins une fois.
Remarquez également la présence d’un point-virgule à la fin de l’instruction qui est
obligatoire.
do
{
/* Bloc d'instructions à répéter */
} while (/* Condition */);
Exemple
Voici le même code que celui présenté avec l’instruction while.
#include<stdio.h>
intmain(void)
{
inti = 0;
do
{
printf("La variable ivaut %d\n", i);
Page 16 sur 18
++i;
} while (i <3);
return0;
}

Résultat :
La variable i vaut 0
La variable i vaut 1
La variable i vaut 2

3- LA BOUCLE FOR (qui signifie « Pour »)


Syntaxe
for (/* Expression/Déclaration */; /* Condition */; /* Expression */)
{
/* Instructions à répéter */
}
Une boucle for se décompose en trois parties (ou trois clauses) :
une expression et/ou une déclaration qui sera le plus souvent l’initialisation d’une
variable ;
une condition ;
une seconde expression, qui consistera le plus souvent en l’incrémentation d’une
variable.
Techniquement, une boucle for revient en fait à écrire ceci.
/* Expression/Déclaration */
while (/* Condition */)
{
/* Bloc d'instructions à répéter */
/* Expression */
}

Exemple:
#include<stdio.h>
intmain(void)
{
for (inti = 0; i<3; ++i)
printf("la variable ivaut %d\n", i);

return0;
}
Résultat
variable vaut 0
variable vaut 1
variable vaut 2
Exercice : Soit le programme suivant :
Page 17 sur 18
#include<stdio.h>
intmain(void)
{
inti=0,n, som= 0;
do
{
printf(" Entrer un nombre entier\n");
scanf("%d",&n) ;
som= som + n;
i=i+1;
} while (i=4);
return0;
}
Ecrire un programme C réalisant exactement la même chose, en utilisant :
a) La structure for ;
b) La structure while
Resolution exercise :
a) Structure for
#include<stdio.h>
intmain(void)
{
inti,n, som= 0;
for(i = 0; i<4;i++)
{
printf(" Entrer un nombre entier\n");
scanf("%d",&n) ;
som= som + n;
}
return0;
}
b) Structure while
#include<stdio.h>
intmain(void)
{
inti=0,n, som= 0;
while(i<4)
{
printf(" Entrer un nombre entier\n");
scanf("%d",&n) ;
som= som + n;
i=i+1;
}return

Page 18 sur 18

Vous aimerez peut-être aussi