Cour Programation c[1]

38
Universit´ e Moulay Isma¨ ıl ECOLE SUPERIEURE DE TECHNOLOGIE MEKNES Le langage C Chakir LOQMAN 15/11/2011 Chakir LOQMAN EST Mekn` es

Transcript of Cour Programation c[1]

Page 1: Cour Programation c[1]

Universite Moulay IsmaılECOLE SUPERIEURE DE TECHNOLOGIE MEKNES

Le langage C

Chakir LOQMAN

15/11/2011

Chakir LOQMAN EST Meknes

Page 2: Cour Programation c[1]

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

Page 3: Cour Programation c[1]

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

Page 4: Cour Programation c[1]

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

Page 5: Cour Programation c[1]

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

Page 6: Cour Programation c[1]

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

Page 7: Cour Programation c[1]

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

Page 8: Cour Programation c[1]

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

Page 9: Cour Programation c[1]

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

Page 10: Cour Programation c[1]

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

Page 11: Cour Programation c[1]

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

Page 12: Cour Programation c[1]

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

Page 13: Cour Programation c[1]

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

Page 14: Cour Programation c[1]

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

Page 15: Cour Programation c[1]

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

Page 16: Cour Programation c[1]

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

Page 17: Cour Programation c[1]

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

Page 18: Cour Programation c[1]

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

Page 19: Cour Programation c[1]

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

Page 20: Cour Programation c[1]

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

Page 21: Cour Programation c[1]

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

Page 22: Cour Programation c[1]

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

Page 23: Cour Programation c[1]

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

Page 24: Cour Programation c[1]

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

Page 25: Cour Programation c[1]

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

Page 26: Cour Programation c[1]

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

Page 27: Cour Programation c[1]

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

Page 28: Cour Programation c[1]

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

Page 29: Cour Programation c[1]

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

Page 30: Cour Programation c[1]

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

Page 31: Cour Programation c[1]

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

Page 32: Cour Programation c[1]

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

Page 33: Cour Programation c[1]

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

Page 34: Cour Programation c[1]

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

Page 35: Cour Programation c[1]

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

Page 36: Cour Programation c[1]

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

Page 37: Cour Programation c[1]

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

Page 38: Cour Programation c[1]

Les structures de controleBoucle

Boucle PourBoucle tant queBoucle Repeter ... jusqu’a

Merci pour votre attention

Chakir LOQMAN EST Meknes