| cours numéro 06 | |
|
+44modta nounou(saiad a.e.k) faycal belhocine khalil sadi tabti abdesselem maissour abdala benklouz boukhatem hayet ziane karima haddar meriem Yahia Hynd lalia marroki Belbachir fatima coucou oueld coucou benadjaimia ahmed siham louati Bakreti amina lahouel aicha bennouna fatiha Bachir Elezaar Faiza Benanteur soumia hadjoudj mohamed20 touir youcef larabi*maamar benchendikh mohamed Hattab Miloud lahcene.seddik213 BENACER BOUZID cherif_nawal Messah Nadir DAOUD HINDA wiam daadoua DERMECHE KARIMA hachelaf hayet haroual chenine afif nouredine Bouziane Mohamed DAOUD HINDA G 4 Bendref Belkacem zoubida DJAKMINE ABDELFATEH DJEFFAL KHEIR EDDINE KREIRI AKILA fatima abbou Admin 48 participants |
|
Auteur | Message |
---|
Admin Admin
Messages : 23 Points : 39 Réputation : 16 Date d'inscription : 15/03/2008 Age : 63 Localisation : MOSTAGANEM
| Sujet: cours numéro 06 Dim 16 Mar - 0:12 | |
| 13 Fév 2008 Cours No 06 de PASCAL TROISIEME PAS DANS PASCAL :
1. Les Structures de Contrôle:
Introduction : Pratiquement dans tous les problèmes qu'on traite sur ordinateur on trouve une répétition d'un certain schéma de calcul, et bien sûr les langages de programmation offrent des structures de contrôle qui permettent d'exprimer cette répétition de façon claire et aisée. Pascal offre à cette effet les trois structures de contrôle suivantes.
REPEAT ……………….UNTIL …………… WHILE ………………..DO ……………….. FOR …………TO……..DO ……………….
Bien que dans plusieurs situations le programmeur peut utiliser l'une des trois structures à son choix, on verra plus loin que chacune des trois structures se spécialise dans une situation de traitement répétitif.
a) L'instruction REPEAT …… UNTII.. :
sa forme générale est la suivante: REPEA T Instruction ; ………….. Instruction UNTIL condition;
*Les instructions comprises entre REPLAT et UNTIL sont exécutées de façon répétitive jusqu'à ce que la condition située après UNTIL soit égale à TRUE. * Le mot réservé UNTIL ne doit jamais être précédé d'un point virgule. * Après chaque exécution des instructions comprises entre REPEA T et UNTIL la condition située après UNTIL est évaluée de nouveau. * L'une au moins des instructions comprise entre REPEAT et UNTIL doit avoir un effet sur la condition d'arrêt, sinon il s'agira d'une boucle infinie, et c’est l’une des erreurs de programmations les plus courantes avec les boucles. * Les instructions comprises entre REPEAT et UNTIL sont exécutées au moins une fois.
Exemple : Calcul du pgcd de deux entiers A et B
Program PGCD; Var A, B, D : INTEGER ; Begin Readln (A, B) ; Repeat D := A mod B ; A:=B; B :=0 Until D=0 ; Writeln ('Pgcd = ',B); END.
b) L'instruction WHILE…. DO :
Sa forme générale est:
WHIILE condition DO
BEGIN
instruction ;
……… ;
instruction
END.
Règles d'utilisation de la boucle WHILE:
* Le corps de la boucle WHILE est exécuté de façon répétitive tant que la condition située entre WHILE et DO est égale à TRUE.
* Quand la condition prend la valeur FALSE l’exécution se poursuit à l’instruction suivante,
* L'évaluation de la condition de répétition est faite avant l’exécution du corps de la boucle WHILE, donc si la condition est FALSE au début alors le nombre de répétitions est égal à 0.
* Dans le cas ou la boucle WHILE comporte un seule instruction (ce qui est très rare), l’utilisation de BEGIN et END est facultative.
* Comme dans le cas de la boucle REPEAT, l'une au moins des instructions du corps de la boucle WHILE doit avoir un effet sur la condition de répétition.
Exemple : Calcul du PGCD de deux entiers A et B.
Program PGCD2 ; Var A,B,D : INTEGER; Begin Readln (A,B) ; D := A mod B ; WHILE D<>0 DO Begin A:=B; B :=D; D :=A mod B End; Writeln('Pgcd = ", B); End. c) L'instruction FOR... TO …..DO:
Les deux premières instructions de contrôle (REPEA T et WHILE) sont des instructions générales qu'on peut utiliser dans toutes les situations de répétitions. L’instruction FOR, par contre, est utilisée uniquement dans le cas de boucle contrôlée avec un compteur. L’instruction FOR a la particularité d'utiliser automatiquement un compteur de boucle.
- Première forme de la boucle FOR:
FOR v := EXP1 TO EXPR2 DO
Begin
instruction ;
…………..
Instruction
END;
v est une variable entière et EXPR1 et EXPR2 sont deux expressions entières.
Règles d'utilisation de la boucle FOR :
. v est appelée variable de contrôle de la boucle (ou compteur de la boucle), elle reçoit au début de l' exécution de la boucle la valeur de EXPR1.
. Avant l'exécution du corps de la boucle FOR la valeur de v est comparée à celle de EXPR2, Si v<=EXPR2 alors le corps de la boucle est exécuté, sinon l'exécution se poursuit à l'instruction suivante.
. Après chaque exécution du corps de la boucle FOR,la valeur de la variable de contrôle est augmentée (incrémentée) de 1, et sa valeur est à nouveau comparée à celle de EXPR2 en vue d'une nouvelle exécution du corps de la boucle,
. Il est incorrect de modifier la valeur de la variable de contrôle à l 'intérieur du corps de la boucle.
. Si le corps de la boucle est réduit à une seule instruction, l'utilisation des mots BEGlN et END est facultative ,
. Si au départ EXPR1 > EXPR2 aucune exécution du corps de la boucle WHILE n 'est effectuée.
Exemple: Calcul de S == 1 + 2 + 3 +…………. + N
Program Somme; Var I,S,N : INTEGER : BEGIN Readln(N); FOR I := 1 TO N DO S := S + I; Writeln('Somme=', S);
END.
- Deuxième forme de la boucle FOR (La boucle FOR régressive):
FOR v= EXPRl DOWNTO EXPR2 DO
Begin
instruction; ………….. ; Instruction
END ;
Cette seconde forme ne diffère de la première que dans le fait que dans la première forme les valeurs de la variable de contrôle sont croissantes et que dans la seconde forme les valeurs de la variable de contrôle sont décroissantes. | |
|
| |
cherfaou Invité
| Sujet: Re: cours numéro 06 Jeu 14 Jan - 18:30 | |
| |
|
| |
fatima abbou
Messages : 41 Points : 62 Réputation : 0 Date d'inscription : 16/01/2010 Localisation : mostaganem
| Sujet: slt Sam 16 Jan - 19:39 | |
| | |
|
| |
tima Invité
| Sujet: hi Sam 16 Jan - 20:02 | |
| salut att ; seeeeeeeeeeeeeeeeeeeeu benhalima fatima zahra gn:02 |
|
| |
KREIRI AKILA
Messages : 85 Points : 118 Réputation : 3 Date d'inscription : 09/12/2009 Age : 39 Localisation : mostaganem
| Sujet: salam Sam 16 Jan - 21:23 | |
| slt merci por me cour mon prof | |
|
| |
belhadji Invité
| Sujet: slm Sam 16 Jan - 22:32 | |
| slm je ss belhadji khadidja de groupe 01 |
|
| |
DJEFFAL KHEIR EDDINE
Messages : 133 Points : 136 Réputation : -2 Date d'inscription : 15/01/2010 Age : 34
| Sujet: salut Dim 17 Jan - 23:47 | |
| | |
|
| |
belhadji Invité
| Sujet: slm Mer 20 Jan - 22:22 | |
| belhadji khadidja de groupe 01 |
|
| |
DJEFFAL KHEIR EDDINE
Messages : 133 Points : 136 Réputation : -2 Date d'inscription : 15/01/2010 Age : 34
| Sujet: salut Mer 20 Jan - 23:40 | |
| bon nuit | |
|
| |
KREIRI AKILA
Messages : 85 Points : 118 Réputation : 3 Date d'inscription : 09/12/2009 Age : 39 Localisation : mostaganem
| Sujet: salam Jeu 21 Jan - 10:33 | |
| bjr mon prof dsl por le retar | |
|
| |
boukhoud Invité
| Sujet: salut Jeu 21 Jan - 13:01 | |
| salut prof c boukhoudmi zoubida g 04 |
|
| |
DJAKMINE ABDELFATEH
Messages : 112 Points : 117 Réputation : 0 Date d'inscription : 05/01/2010 Age : 35 Localisation : mostaganem
| Sujet: slt prof c djakmine abdelfateh g04 Jeu 21 Jan - 14:11 | |
| | |
|
| |
daadoua Invité
| Sujet: Re: cours numéro 06 Ven 22 Jan - 0:22 | |
| slt je ss daadoua wiam GN4 |
|
| |
DJAKMINE ABDELFATEH
Messages : 112 Points : 117 Réputation : 0 Date d'inscription : 05/01/2010 Age : 35 Localisation : mostaganem
| Sujet: salut c djakmine abdelfateh Ven 22 Jan - 12:53 | |
| | |
|
| |
cherfaou Invité
| Sujet: salam 3likom Ven 22 Jan - 14:01 | |
| |
|
| |
benhalim Invité
| Sujet: hi Ven 22 Jan - 15:25 | |
| hi 4 alllllllllll j ss benhalima fatima zahra gn :02 |
|
| |
berrabeh Invité
| Sujet: slt Ven 22 Jan - 19:16 | |
| |
|
| |
bousnane Invité
| Sujet: slt Ven 22 Jan - 19:20 | |
| |
|
| |
bekheira Invité
| Sujet: slt Ven 22 Jan - 19:22 | |
| |
|
| |
belhadji Invité
| Sujet: slm Ven 22 Jan - 20:13 | |
| je ss belhadji khadidja de groupe 01 |
|
| |
BOUAAZA Invité
| Sujet: SLM Ven 22 Jan - 20:14 | |
| |
|
| |
BAHLOULE Invité
| Sujet: SLM Ven 22 Jan - 20:16 | |
| |
|
| |
TAHRI IM Invité
| Sujet: SLM Ven 22 Jan - 20:21 | |
| |
|
| |
DJEFFAL KHEIR EDDINE
Messages : 133 Points : 136 Réputation : -2 Date d'inscription : 15/01/2010 Age : 34
| Sujet: salut Ven 22 Jan - 20:42 | |
| salut | |
|
| |
boukhoud Invité
| Sujet: Re: cours numéro 06 Sam 23 Jan - 11:34 | |
| bnj prof c boukhoudmi zoubida G03 |
|
| |
Contenu sponsorisé
| Sujet: Re: cours numéro 06 | |
| |
|
| |
| cours numéro 06 | |
|