Structures Conditionnelles en Langage C

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 24

Syrine KHIARI - Wafa NEJI – Salma HAJJEM

ESPRIT
2012-2013

1
Problématique

• La résolution de certains problèmes algorithmique ne


peut se faire que sous condition et pour chaque condition un
traitement spécifique sera déclenché et exclura les
traitements des autres conditions
• Exemple:
- On veut afficher le résultat d’un étudiant (Echec, Succès) à partir de sa
moyenne.
 Besoin d’une structure qui évalue la condition de sa réussite !

• On doit alors utiliser une structure algorithmique capable de


prendre en charge ce traitement.

Une telle structure est appelée structure conditionnelle


2
Contexte et objectifs

• Dans le cadre de ce cours, l’objectif visé est la


maîtrise des structures conditionnelles en C

• On distingue plusieurs formes de structures


conditionnelles:
– 1. Structure conditionnelle à un seul choix.
– 2. Structure conditionnelle à deux choix.
– 3. Structure conditionnelle imbriquée.
– 4. Structure conditionnelle à choix multiple.
3
1.Structure conditionnelle à un choix

• Définition :
– Il s’agit d’un traitement qui ne peut s’exécuter
que si une condition logique est satisfaite ; dans
le cas contraire, rien ne devrait se passer.
Les structures
conditionnelles à
un choix…?

4
1.Structure conditionnelle à un choix

• Organigramme
– Les conditions s'expriment avec des opérateurs
logiques ou des opérateurs de comparaisons

Oui Condition Non


Vrai?
instruction1
instruction2
……

Suite du programme

5
1.Structure conditionnelle à un choix

• Syntaxe:

Toutes les conditions


En Algorithmique En Langage C sont entre des
parenthèses
Si (condition) alors if (condition)
{ Si la condition est vraie
Instruction1 alors l'instruction ou le
Instruction1;
Instruction2 bloc d'instructions qui
Instruction2;
…… suit le "if" est exécuté
……
Finsi }
S'il y a plusieurs
instructions après le "if",
on les encadre par des
accolades : { }
6
1.Structure conditionnelle à un choix

• Exemple
– On veut donner une prime pour les salariés mariés
ayant plus de 3 enfants
#include <stdio.h>
void main()
{
int Nbr_Enfants;
/* Saisie de Nbr_Enfants */
printf("Combien avez-vous d’enfants? \n ");
scanf("%d",&Nbr_Enfants);

/* Structure SI ALORS */
if (Nbr_Enfants >3) {
printf(« Vous avez une prime! \n");
}
}
7
1.Structure conditionnelle à un choix

• Exercice d’application
– Ecrire un algorithme permettant de résoudre
l’équation de 1er degré : ax+b=0
• (on suppose que a >0)

8
2.Structure conditionnelle à deux choix

• Définition :
– Il s’agit d’un traitement qui ne peut s’exécuter
que si une condition logique est satisfaite ;
dans le cas contraire, un autre traitement sera
exécuté.
Les structures
conditionnelles à
deux choix…??

9
2.Structure conditionnelle à deux choix

• Organigramme
– Les conditions s'expriment avec des opérateurs
logiques ou des opérateurs de comparaisons

Oui Condition Non


Vrai?
instruction1 instruction1’
instruction2 instruction2’
…… ……

Suite du programme

10
2.Structure conditionnelle à deux choix

• Syntaxe:
En Algorithmique En Langage C
Si la condition est vraie
alors l'instruction ou le
if (condition)
Si (condition) alors bloc d'instructions qui
{ suit le "if" est exécuté,
Instruction1 sinon ou le bloc
Instruction1;
Instruction2 d'instructions qui suit le
Instruction2;
…… "else" est exécuté
……
Sinon
} else {
Instruction1’
Instruction1’;
Instruction2’ S'il y a plusieurs
Instruction2’;
…… instructions après le "if"
……
Finsi ou après le "else" , on
} les encadre par des
accolades : { }
11
2.Structure conditionnelle à deux choix

• Exemple
– On veut afficher le maximum de deux nombres
entiers a et b
#include <stdio.h>
void main()
{ int a,b;
/* Saisie de a et de b */
printf("Donnez les valeurs de a et de b ");
scanf("%d %d",&a,&b);

/* Structure SI ALORS SINON */


if (a>b){
printf("a=%d est supérieur à b=%d \n",a,b);

} else {
printf("b=%d est supérieur ou égal à a=%d \n",b,a);
}
} 12
2.Structure conditionnelle à deux choix

• Exercice d’application
– Écrire un programme en C qui affiche si
l'utilisateur est majeur (>= 18 ans) ou mineur.

13
3.Structure conditionnelle imbriquée

• Définition :
– Il s’agit d’un traitement qui ne peut s’exécuter que si
une condition logique est satisfaite ; dans le cas
contraire, un autre traitement sera exécuté.
– Les différents traitements ne comportent plus
uniquement des actions simples mais on peut leur
imbriquer des structures conditionnelles.
Les structures
conditionnelles
imbriquées…??

14
3.Structure conditionnelle imbriquée

• Organigramme
Oui Condition1 Non
Vrai?

Oui Condition2 Non


instruction1 … Vrai?

Oui Non
instruction 2… Condition n-1
Vrai?
instruction n-1
instruction n

Suite du programme

15
3.Structure conditionnelle imbriquée
• Syntaxe:
En Algorithmique En Langage C

Si (condition1) alors if (condition1) { -Les tests sont effectués


Instruction1; chacun leur tour et s’ils
Instruction1 ……
ne sont pas satisfait, on
…… passe au test suivant.
Sinon si (condition2) } else if (condition2) {
Instruction2; -Si aucun test n’est
Instruction2 satisfait, alors c’est la
……
……. dernière clause "else"
Sinon si (condition3) } else if (condition3) { qui est exécutée.
Instruction3;
Instruction3
…… - Ce dernier "else" est
……. facultatif (donc si on ne
Sinon } else { le met pas, il est
Instruction n Instruction n; possible que rien ne soit
……. …… exécuté)
Finsi }
16
3.Structure conditionnelle imbriquée

• Exemple
– On veut afficher affiche la mention d'un étudiant en fonction
de sa moyenne
#include <stdio.h>
void main()
{ float moyenne;
/* Saisie de la moyenne*/
printf(" Quel est votre moyenne ? \n");
scanf("%f",&moyenne);

if(moyenne < 12) {


printf("Passable \n");
}else if(moyenne < 14) {
printf("Assez Bien \n");
}else if(moyenne < 16) {
printf("Bien \n");
} else if(moyenne >= 16) {
printf(" Très Bien \n");
}
17
}
3.Structure conditionnelle imbriquée

• Exercice d’application
– Ecrire un programme en C qui demande un
nombre à l'utilisateur et l'informe ensuite si ce
nombre est positif, négatif ou nul

18
4.Structure conditionnelle à choix multiple

• Définition :
– Une structure à choix multiple est une structure qui à
partir d’un choix va se positionner sur le bon traitement
sans passer par les autres

Les structures
conditionnelles à
choix multiples…??

19
4.Structure conditionnelle à choix multiple

• Organigramme *
Oui Expression Non
= valeur1?

Oui Expression Non


instruction1 … = valeur2?

Oui Non
instruction2 … Expression
= valeur3?
instruction3 … Instruction par
défaut

Suite du programme

* Cet organigramme est relatif à l’exemple en C mentionné dans le Diapo 21 20


4.Structure conditionnelle à choix multiple
• Syntaxe:
En Langage C
En Algorithmique
Le mot
switch (expression) {
Selon (expression) Faire clé "break" indique la
case valeur1 : sortie de la structure
valeur1 : Instruction 1 conditionnelle.
Instruction1; break;
valeur2 : Instruction 2
case valeur2 :
valeur3 : Instruction 3 Instruction2; break;
…… case valeur3 :
Sinon Le mot
Instruction3; break;
Traitement par défaut clé "default" précède
…… la liste d'instructions
Finselon default : qui sera exécutée si
Instruction par défaut l'expression n'est
} jamais égale à une
des valeurs..

21
3.Structure conditionnelle imbriquée

• Exemple
#include <stdio.h>
void main()
{ char choix;
printf("\n\n\t\t tapez a , b , c ou d \n ");
/* saisie de la touche */
choix=getchar();

/* Structure de choix switch*/


switch(choix)
{
case 'a': printf("Exécution de l'ACTION1");break;
case 'b': printf("Exécution de l'ACTION2");break;
case 'c': printf("Exécution de l'ACTION3");break;
case 'd': printf("Exécution de l'ACTION4");break;
default : printf("Mauvaise touche, pas d'ACTION");
}
}
22
4.Structure conditionnelle à choix multiple

• Exercice d’application

– Ecrire un programme en C qui permet de lire


la valeur d’une température de l’eau et
d’afficher son état : liquide, solide ou gaz.

23
Merci Pour
votre
attention!

24

Vous aimerez peut-être aussi