Cour Programation c[1]

Post on 25-Jul-2015

177 views 7 download

Transcript of Cour Programation c[1]

Universite Moulay IsmaılECOLE SUPERIEURE DE TECHNOLOGIE MEKNES

Le langage C

Chakir LOQMAN

15/11/2011

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Plan

1 Les structures de controleNotations de la selection simpleNotations de la selection completeNotations de la selection multiple

2 BoucleBoucle PourBoucle tant queBoucle Repeter ... jusqu’a

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Plan

1 Les structures de controleNotations de la selection simpleNotations de la selection completeNotations de la selection multiple

2 BoucleBoucle PourBoucle tant queBoucle Repeter ... jusqu’a

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Notations de la selection simple

Selection simple : notation algorithmique

Une condition est testee pour determiner si l’action ou le groupe d’actionssuivant doit etre execute.

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Notations de la selection simple

Selection simple : notation algorithmique

Une condition est testee pour determiner si l’action ou le groupe d’actionssuivant doit etre execute.

Si (condition) Alors

bloc−

instructions

Fin Si

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Notations de la selection simple

Selection simple : notation algorithmique

Une condition est testee pour determiner si l’action ou le groupe d’actionssuivant doit etre execute.

Si (condition) Alors

bloc−

instructions

Fin Si

Selection simple : notation C

i f ( condition ){

bloc_instructions ;

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Exemple

Exemple : algorithmique

x : entier ;x ← 0 ;Si (x = 0) Alors

x ← 1 ;Ecrire(x) ;

Fin Si

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Exemple

Exemple : algorithmique

x : entier ;x ← 0 ;Si (x = 0) Alors

x ← 1 ;Ecrire(x) ;

Fin Si

Exemple : en langage C

#inc l ude <stdio.h>

main (){

i n t x;

x=0;

i f (x==0){

x=1;

printf("%d",x);

}

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Notations de la selection complete

Selection complete : notation algorithmique

Si (condition) Alors

bloc−

instructions 1Sinon

bloc−

instructions 2Fin Si

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Notations de la selection complete

Selection complete : notation algorithmique

Si (condition) Alors

bloc−

instructions 1Sinon

bloc−

instructions 2Fin Si

Selection complete : notation C

i f (condition ){

bloc_instructions 1;

}

e l s e {

bloc_instructions 2;

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Exemple

Exemple : algorithmique

x : entier ;x ← 0 ;Si (x = 0) Alors

x ← 1 ;Ecrire(x) ;

Sinonx ← 2 ;Ecrire(x) ;

Fin Si

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Exemple

Exemple : algorithmique

x : entier ;x ← 0 ;Si (x = 0) Alors

x ← 1 ;Ecrire(x) ;

Sinonx ← 2 ;Ecrire(x) ;

Fin Si

Exemple : en langage C

#inc lude <stdio.h>

main (){

i n t x;

x=0;

i f (x==0){

x=1;

printf("%d",x);}

e l s e {

x=2;

printf("%d",x);}

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Exemple :

#inc lude <stdio.h>

#inc lude <stdlib.h>

#inc lude <math .h>

main (){

double a, b, c ;

double r;

delta = (b*b ) -4.0*(a*c)

i f (delta < 0)

printf ("Pas de solutions reelles ");

e l s e i f (delta == 0)

printf("Une solution double :" ,(-b /(2.0* a));

e l s e {

r=sqrt (delta);

printf("La solution x1=%f :" ,(-b-r )/(2.0* a));

printf("La solution x2=%f :" ,(-b+r )/(2.0* a));

}

system ("PAUSE");

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Notations de la selection multiple

Definition

La selection multiple permet de faire plusieurs tests de valeurs sur le contenud’une meme variable. Ce branchement conditionnel simplifie beaucoup le testde plusieurs valeurs d’une variable

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Notations de la selection multiple

Definition

La selection multiple permet de faire plusieurs tests de valeurs sur le contenud’une meme variable. Ce branchement conditionnel simplifie beaucoup le testde plusieurs valeurs d’une variable

Selection multiple : notation algorithmique

Selon que< Condition 1 > : < Action 1 > ;< Condition 2 > : < Action 2 > ;< ................. > : < ............ > ;< Condition n > : < Action n > ;

Fin Selon que

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Switch

sw i tch(<nom variable >)

{

case <valeur 1> : <instructions 1> ; break ;

case <valeur 2> : <instructions 2> ; break ;

/* .... */

case <valeur n> : <instructions n> ; break ;

d e f a u l t : /* instructions */

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Exemple :Switch

Nous voulons afficher le nom d’un mois en fonction de son numero :

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Notations de la selection simpleNotations de la selection completeNotations de la selection multiple

Exemple :Switch

Nous voulons afficher le nom d’un mois en fonction de son numero :

sw i tch(numeroMois )

{

case 1 : printf("janvier "); break ;

case 2 : printf("fevrier "); break ;

case 3 : printf("mars "); break ;

case 4 : printf("avril"); break ;

case 5 : printf("mai") ; break ;

case 6 : printf("juin "); break ;

case 7 : printf("juillet "); break ;

case 8 : printf("aout "); break ;

case 9 : printf(" septembre "); break ;

case 10 : printf("octobre "); break ;

case 11 : printf(" novembre "); break ;

case 12 : printf(" decembre "); break ;

d e f a u l t : printf("Je connais pas ce mois ...");

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Plan

1 Les structures de controleNotations de la selection simpleNotations de la selection completeNotations de la selection multiple

2 BoucleBoucle PourBoucle tant queBoucle Repeter ... jusqu’a

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Boucles :

Definition

C’est une technique permettant de repeter les memes instructions plusieurs fois.

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Boucles :

Definition

C’est une technique permettant de repeter les memes instructions plusieurs fois.

Types des boucles

Il y a principalement deux types de boucles

Les boucles pour repeter une instruction un certain nombre de fois, ils’agit de la boucle Pour

Les boucles pour repeter une instruction jusqu’a une condition d’arret, ils’agit de bouclesTant que

Le passage dans une boucle est appele iteration

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Boucle Pour :

Definition

Les boucles pour permettent de repeter une instruction un nombre donnede fois.

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Boucle Pour :

Definition

Les boucles pour permettent de repeter une instruction un nombre donnede fois.

Boucle Pour : notation algorithmique

Pour variable de valeur−

initiale a valeur−

finale [de pas p] faire

instructions ;Fin Pour

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Boucle Pour :

Definition

Les boucles pour permettent de repeter une instruction un nombre donnede fois.

Boucle Pour : notation algorithmique

Pour variable de valeur−

initiale a valeur−

finale [de pas p] faire

instructions ;Fin Pour

Boucle Pour : notation C

f o r (i=valeur_initiale ; i<= valeur_finale ; i=i+p){

instructions ;

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Exemple

Exemple : algorithmique

Pour i de 0 a 10 faire

Ecrire(i) ;Fin Pour

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Exemple

Exemple : algorithmique

Pour i de 0 a 10 faire

Ecrire(i) ;Fin Pour

Exemple : en langage C

#inc lude <stdio.h>

main ( ){

i n t i;

f o r (i=1; i <=5; i++)

printf("%d",i);

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Boucle tant que :

Definition

Les boucles tant que permettent d’effectuer des iterations tant qu’unecertaine condition est verifiee.

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Boucle tant que :

Definition

Les boucles tant que permettent d’effectuer des iterations tant qu’unecertaine condition est verifiee.

Boucle tant que : notation algorithmique

Tant que (condition) faire

bloc−

instructions ;Fin Tant que

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Boucle tant que :

Definition

Les boucles tant que permettent d’effectuer des iterations tant qu’unecertaine condition est verifiee.

Boucle tant que : notation algorithmique

Tant que (condition) faire

bloc−

instructions ;Fin Tant que

Boucle tant que : notation C

whi l e (condition ){

instructions ;

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Exemple

Exemple : algorithmique

x : entier ;x ← 1 ;Tant que (x ≤ 5) faire

x ← x+1 ;ecrire(”Valeur x=”,x) ;

Fin Tant que

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Exemple

Exemple : algorithmique

x : entier ;x ← 1 ;Tant que (x ≤ 5) faire

x ← x+1 ;ecrire(”Valeur x=”,x) ;

Fin Tant que

Exemple : en langage C

#inc l ude <stdio .h>

main (){

i n t x;

x=1;

whi l e (x <=5){

x=x+1;

printf("Valeur x=%d",x);

}

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Exemple

Exemple : algorithmique

Algorithme SaisieVariable n : Entier ;Debut

lire(n) ;Tant que (n > 0) faire

ecrire(”entrer un nomber :”) ;lire(n) ;

Fin Tant que

Fin

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Exemple

Exemple : algorithmique

Algorithme SaisieVariable n : Entier ;Debut

lire(n) ;Tant que (n > 0) faire

ecrire(”entrer un nomber :”) ;lire(n) ;

Fin Tant que

Fin

Exemple : en langage C

#inc lude <stdio.h>

#inc lude <stdlib.h>

main (){

i n t n;

scanf("%d" ,&n);

whi l e (n >0){

printf("entrer un nombre");

scanf("%d" ,&n);

}

system("pause");

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Boucle Repeter ... jusqu’a :

Boucle Repeter ... jusqu’a : notation algorithmique

Repeter

bloc−

instructions ;jusqu’a ce que (condition)

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Boucle Repeter ... jusqu’a :

Boucle Repeter ... jusqu’a : notation algorithmique

Repeter

bloc−

instructions ;jusqu’a ce que (condition)

Boucle Repeter ... jusqu’a : notation C

do

{

bloc_instructions ;

}

whi l e (condition );

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Exemple

Exemple : algorithmique

x : entier ;x ← 0 ;Repeter

x ← x+1 ;Ecrire(”Valeur x=”,x) ;

jusqu’a ce que (x < 6)

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Exemple

Exemple : algorithmique

x : entier ;x ← 0 ;Repeter

x ← x+1 ;Ecrire(”Valeur x=”,x) ;

jusqu’a ce que (x < 6)

Exemple : en langage C

#inc lude <stdio.h>

#inc lude <stdlib.h>

main (){

i n t x;

x=0;

do{

x=x+1;

printf("Valeur x=%d",x);

}

whi l e (x <6)

}

system("pause");

}

Chakir LOQMAN EST Meknes

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Merci pour votre attention

Chakir LOQMAN EST Meknes