diff --git a/jour05/test.cob b/jour05/jour5-prem.cob similarity index 76% rename from jour05/test.cob rename to jour05/jour5-prem.cob index 20fa859..b86fd97 100644 --- a/jour05/test.cob +++ b/jour05/jour5-prem.cob @@ -8,7 +8,6 @@ ORGANIZATION LINE SEQUENTIAL. DATA DIVISION. - FILE SECTION. FD FILE1. 01 INPUT-FILE. @@ -26,20 +25,24 @@ OPEN INPUT FILE1. PERFORM UNTIL EOF READ FILE1 RECORD INTO MY-FILE + * Lorsqu’on arrive à la fin du fichier, on met Y pour le signaler AT END MOVE 'Y' TO FILE-STATUS NOT AT END CALL "parse-str" USING BY CONTENT MY-STR, BY REFERENCE NB-NICE + * On passe par référence NB-NICE pour l’incrémenter END-CALL END-READ END-PERFORM. DISPLAY "Nombre de bonnes chaines : " NB-NICE. CLOSE FILE1. STOP RUN. - - END PROGRAM jour-cinq-prem-part. ****************************************************************** + * parse-str : parse la chaine de caractères pour voir le nombre de + * bonnes chaines. Prend en paramètres 2 arguments : + * STR : chaine de caractères de taille 16. Sera parser. + * NB : (REFERENCE) le nombre de bonnes chaines. Sera incrémenter. IDENTIFICATION DIVISION. PROGRAM-ID. parse-str. @@ -47,7 +50,7 @@ DATA DIVISION. WORKING-STORAGE SECTION. 77 CHAR PIC A. - 88 VOY VALUE 'a','e','i','o','u','y'. + 88 VOY VALUE 'a','e','i','o','u'. 77 I PIC 99. 88 END-P VALUE 17. 77 NB-VOY PIC 99. @@ -55,6 +58,14 @@ 77 TMP PIC AA. 88 BAD VALUE 'ab', 'cd', 'pq', 'xy'. 77 DOUBLE PIC X. + + * NB-VOY contient le nombre de voyelles + * PRED le caractère précédent + * TMP forme la chaine contenant le caractère précédent et courant + * BAD les mauvaises formes de chaines + * DOUBLE est mit à Y lorsque CHAR = PRED + * + * LINKAGE SECTION contient les paramètres du programme parse-str LINKAGE SECTION. 77 STR PIC A(17). @@ -94,5 +105,9 @@ THEN ADD 1 TO NB END-IF. - + EXIT PROGRAM. END PROGRAM parse-str. + + ************************************************************************* + + END PROGRAM jour-cinq-prem-part.