1 : $$$$ DEBP NOTICE SP204843 24/11/04 21:15:03 12063 2 : DATE 24/11/04 3 : 4 : Directive DEBPROC Voir aussi : FINP ARGU 5 : ----------------- RESP QUIT 6 : DEBPROC PROC1 (OBJ1?TYP1 OBJ2?TYP2 .... ) ; 7 : 8 : 9 : Objet : 10 : ------- 11 : 12 : La directive DEBPROC cree un objet de type PROCEDUR qui contient une 13 : suite d'instructions elementaires, dont la premiere est DEBPROC et la 14 : derniere est FINPROC. 15 : 16 : Commentaire : 17 : ------------- 18 : 19 : La procedure peut avoir une liste d'arguments types (OBJ1,OBJ2,...). 20 : ? peut prendre deux valeurs : 21 : 22 : * qui rend la donnee de l'argument obligatoire au 23 : moment de l'appel de la procedure, 24 : 25 : / qui la rend facultative. 26 : 27 : Les types d'objet possibles sont: 28 : 29 : 'MAILLAGE' 'AFFECTE ' 'DEFORME ' 30 : 'CHPOINT ' 'CHAMELEM' 'LISTREEL' 31 : 'RIGIDITE' 'BLOQSTRU' 'LISTENTI' 32 : 'ELEMSTRU' 'SOLUTION' 'CHARGEME' 33 : 'STRUCTUR' 'TABLE ' 'MODELE ' 34 : 'MAFFEC ' 'MSOSTU ' 'EVOLUTIO' 35 : 'IMATRI ' 'MJONCT ' 'SUPERELE' 36 : 'ATTACHE ' 'MMATRI ' 'LOGIQUE ' 37 : 'FLOTTANT' 'ENTIER ' 'MOT ' 38 : 'TEXTE ' 'LISTMOTS' 'VECTEUR ' 39 : 'VECTDOUB' 'POINT ' 'CONFIGUR' 40 : 'LISTCHPO' 'BASEMODA' 'PROCEDUR' 41 : 'BLOC ' 'MMODEL ' 'MCHAML ' 42 : 'MINTE ' 'NUAGE ' 'MATRIK ' 43 : 'LISTOBJE' 44 : 45 : Il faut bien noter qu'en presence de plusieurs arguments 46 : de Meme type seul l'ordre permet de les differencier. 47 : 48 : L'ensemble ?TYPi est facultatif. S'il est omis, DEBP essaie de 49 : recuperer un objet de n'importe quel type. Les objets de type 50 : inconnu doivent etre place a la fin de la liste des arguments 51 : a lire. 52 : 53 : Remarques : 54 : ----------- 55 : 56 : Une procedure a acces a tous les objets existants avant son 57 : appel mais ne peut pas les modifier. Tout objet dont le nom 58 : commence par ! ne sera pas initialise par un objet de meme nom 59 : defini en dehors de la procedure. 60 : 61 : Les objets crees lors de l'execution d'une procedure ne sont pas 62 : accessibles a l'exterieur de la procedure. 63 : 64 : 65 : 66 : Exemple de procedure de calcul de la fonction MODULO : 67 : ------------------------------------------------------ 68 : 69 : DEBPROC MODULO I*ENTIER J*ENTIER ; 70 : MODERR='$$$$$'; 71 : SI (J EGA 0) : 72 : MESSAGE ' ON NE PEUT FAIRE I MODULO ZERO '; 73 : RESPRO MODERR; 74 : QUITTER MODULO ; FINSI; 75 : K*ENTIER = I / J ; 76 : MOD = I - ( K * J ) ; 77 : FINPROC MOD; 78 : 79 : Exemple d'emploi de la procedure MODULO : 80 : ----------------------------------------- 81 : 82 : 83 : K = 8 MODULO 3 ; 84 : SI ( K NEG 2 ) ; 85 : MESSAGE ' ERREUR DANS LA RECOPIE DE L EXEMPLE |' ; 86 : FINSI; 87 : 88 : 89 : 90 : 91 : 92 :
© Cast3M 2003 - Tous droits réservés.
Mentions légales