La Boucle Tantque

  • Published on
    27-May-2015

  • View
    822

  • Download
    2

Embed Size (px)

DESCRIPTION

lyce pilote medenine

Transcript

<ul><li> 1. L.P.M Chapitre N 3 Les structures de contrle itratives Dgager le traitement itratif Problme Nombre ditration ?? Inconnu lavanceConnu lavance La structure de contrle itrative complte La structure de contrle condition darrt </li></ul> <p> 2. La boucle Pour Pour i de Vi Vf faire Traitement Fin Pour Nombre ditration : Connu lavance For i:=Vi To Vf Do Begin Traitement ; End ; For i:=Vi DOWNTO Vf Do Begin Traitement ; End ; Type Du Compteur : Type Scalaire La valeur du compteur , valeur initiale et la valeur finale intouchable dans la boucle Nbre ditrations (compteur Entier) = | vf vi| +1 Nbre ditrations (compteur caractre , boolen, TSE) = | ord(vf) ord(vi)| +1 3. La boucle Rpter [init] Rpter Traitement Jusqu Condition(s) Nombre ditration : Inconnu lavance Nombre ditration Minimal : 1 La prsence dune instruction pour modifier ltat de condition est obligatoire La condition = Expression Boolenneinit; Repeat Traitement ; Until Condition(s); 4. La boucle Rpter init; Repeat Traitement ; Until Condition(s); i:=0; Repeat i:=2*i+1 ; until i &gt; 7 ; Nombre ditrations ? Ahlem Assala Dhekra Fadi Hamdi Hassan Marwan Nader Naji Hanen Oumayma Oussama Samar Souheil Yasmine3 f:=1 ;n:=4; Repeat f:=f*n; n:=n-1; Until n=1 ; Les Contenus Des Variables f = n = 24 1 5. i:= 1 ; // A Repeat // B Write(i); // C until i &gt; 5 ; O faut-il augmenter la variable i de 1 pour que cette boucle affiche 1 2 3 4 5 Ahlem Assala Dhekra Fadi Hamdi Hassan Marwan Nader Naji Hanen Oumayma Oussama Samar Souheil Yasmine i:= i + 1 ; Rle Du Programme i:= 0 ; Repeat i:=i+1 ; Ok:= t[i]=x ; until (ok) or (i=n); X = 5 T |2|3|1|2|15] X = 5 T |2|3|5|2|15] Ok = Faux Ok = Vrai Vrifier dexistence de X dans T 6. Activit 1 Ecrire un programme qui permet dafficher le PGCD de deux entiers donns a et b (avec a*b &gt;0 et a &gt; 0) Principe : Si a b alors PGCD(a,b) = Si b &gt; a PGCD(a , b-a) Sinon PGCD (a-b,b) Rpter le mme traitement jusqu a = b Sinon PCGD = a ( ou b ) Exemple 1 : A = 12 , B= 4 PGCD (12 , 4 ) = PGCD(8,4) = PGCD (4,4) = 4 Exemple 2 : A = 13 , B= 13 A = B alors PGCD = 13 Le Traitement Itratif Si a &gt; b alors a a-b Sinon b b-a Le nombre ditrations 2 Le Traitement Itratif Si a &gt; b alors a a-b Sinon b b-a Le nombre ditrations 0 7. Constatations Le Traitement Itratif Si a &gt; b alors a a-b Sinon b b-a Le nombre ditrations Inconnu lavance Le nombre ditrations Minimal 0 8. [Initialisation] Tant que Condition(s) Faire Instruction 1 Instruction 2 Instruction . . . Instruction n Fin Tant Que Traitement itratif Analyse &amp; Algorithme 9. Initialisation; While Condition(s) DO Instruction 1; Instruction 2; Instruction . . .; Instruction n; End ; En Pascal BEGIN 10. Excution de la boucle Tant que Tant que Si la condition est vraie Fin Tant que R-tester la condition Excution du traitement Tester La condition Si la condition est fausse Sortie de la boucle Faire 11. N.B: La dlimitation de "Traitement" est faite naturellement par les 2 termes de la structure Tant que et Fin tant que La condition est value avant de lentre dans la boucle. Condition d'arrt est une expression boolenne Condition dentre Il doit y avoir une action dans le qui modifie la valeur de la condition. On excute le corps de la boucle tant que la condition est vari. Si l'expression boolenne (condition ) est fausse ds le dbut, le traitement n'est jamais excute (nombre ditration minimal =0) 12. Pour mieux Assimiler Tournage la main dune boucle Tant que Ch := 'BAC MATH; CH1:='; While (pos(' ',ch) 0) Do Begin p:= pos(' ',ch); ch1:= copy(ch,1,p-1)+ ' ' + ch1; delete(ch,1,p); End; ch1:= ch + ' ' + ch1; Writeln(ch1); ch ch1 p Initialisation Condition = Condition = Varie BAC MATH Itration1 4Math BAC FAUSSE CH1 Math BAC Rle : Inverser une phrase 13. Analyse : Activit 1 14. Applications On se propose de dterminer le PGCD de deux entiers naturels m et n. Principe de Division : Si n MOD M = 0 alors pgcd = b Sinon on remplace a par b et b par a mod b On se propose de dterminer le PPCM de deux entiers naturels m et n. Ecrire un programme Pascal qui permet de calculer le PPCM Ecrire un programme Pascal qui permet dafficher les nombres premiers &lt; = N (n entier donn ) Ecrire un programme Pascal permettant de dcomposer un entier N donn (2 N 100) en produit de facteurs premiers et d'afficher N et le produit de ses facteurs trouvs. Exemple : Si n = 60 alors on affiche 60 = 2*2*3*5. </p>