1 : $$$$ REPE NOTICE PV090527 24/01/09 21:15:25 11817 2 : DATE 24/01/09 3 : 4 : Directive REPETER Voir aussi : ITER QUIT 5 : ----------------- FIN 6 : REPETER BLOC1 | (N1) ; 7 : | (List_objet) 8 : 9 : Objet : 10 : _______ 11 : 12 : L'objet BLOC1 (de type BLOC) est constitue de l'ensemble des 13 : instructions comprises entre la directive REPETER BLOC1 et 14 : la directive FIN BLOC1. 15 : 16 : La directive REPETER permet de repeter plusieurs fois 17 : l'execution de cet ensemble d'instructions. 18 : 19 : Si l'entier N1 est specifie, il faut le mettre apres le nom de la boucle, 20 : et la boucle est repetee N1 fois. Si N1 est negatif ou nul, la repetition 21 : se fait indefiniment. 22 : Un objet ENTIER s'appelant &BLOC1 est incremente a chaque iteration 23 : (compteur de la boucle valant 1 lors du premier passage). 24 : 25 : Si un LISTOBJE List_objet est specifie, la boucle est repetee pour 26 : chaque objet dans List_objet, et le nom &BLOC1 permet d'acceder a 27 : cet objet. 28 : 29 : 30 : ATTENTION : seules les 7 premieres lettres du nom BLOC1 sont mises 31 : derriere le caractere &. 32 : 33 : 34 : Remarque : 35 : __________ 36 : 37 : Si N1 est specifie, il faut le mettre apres le nom de la boucle. 38 : 39 : Si N1 est nul, le code de la boucle n'est jamais execute. 40 : 41 : Si N1 est negatif ou s'il n'est pas specifie, la repetition se fait 42 : indefiniment. 43 : 44 : Si N1 et List_objet ne sont pas specifies, la repetition se fait 45 : indefiniment. 46 : 47 : L'operateur ENUM permet de creer facilement un LISTOBJE. 48 : 49 : Il est possible dans tous les cas d'interrompre la repetition a 50 : l'aide de la directive QUITTER. L'instruction ITERER permet quant 51 : a elle de passer directement a l'iteration suivante, sans executer 52 : le reste du code present jusqu'a la fin du bloc. 53 : 54 : 55 : Exemple : 56 : _________ 57 : 58 : 59 : * Calcul de la constante d'Euler 60 : 61 : I=0 ; CRIT= 1E-5; CRITM= CRIT*-1; C=0. ; 62 : EPS1= 0 ; OK = FAUX ; 63 : 64 : REPETER BLOTO 100 ; 65 : 66 : I = I + 1; C = C + (1./ I) ; 67 : EPS = C - (LOG I) ; 68 : D = EPS - EPS1 ; 69 : 70 : SI ( (D < CRIT) ET (D > CRITM) ) ; 71 : 72 : OK = VRAI ; 73 : MESS ' constante d'euler atteinte au bout de ' &BLOTO 'iterations'; 74 : QUITTER BLOTO ; 75 : 76 : FINSI ; 77 : EPS1 = EPS ; 78 : 79 : FIN BLOTO ; 80 : 81 : SI OK ; 82 : LIST EPS ; 83 : SINON ; 84 : MESSAGE 'RATE' ; 85 : FINSI ; 86 : FIN; 87 :
© Cast3M 2003 - Tous droits réservés.
Mentions légales