IDENTIFICATION DIVISION. PROGRAM-ID. conson. AUTHOR. OD. *----------------------------------------------* * PROGRAMME QUI CONSONNE UN MOT (NORMALEMENT) * *----------------------------------------------* ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. *--------------------------* * DEFINITION DES VARIABLES * *--------------------------* 77 MOT PICTURE X(30) VALUE SPACE. 77 RETOUR PICTURE X(30) VALUE SPACE. 77 RESULTAT PICTURE X(6) VALUE SPACE. 77 LETTRE PICTURE X VALUE SPACE. 77 CHIFFRE PICTURE 99 VALUE 2. 77 POINTEUR1 PICTURE 99 VALUE 2. 77 POINTEUR2 PICTURE 9 VALUE 2. 01 VOYELLES. 05 LTR-AMAJ PICTURE X VALUE "A". 05 LTR-EMAJ PICTURE X VALUE "E". 05 LTR-IMAJ PICTURE X VALUE "I". 05 LTR-OMAJ PICTURE X VALUE "O". 05 LTR-UMAJ PICTURE X VALUE "U". 05 LTR-YMAJ PICTURE X VALUE "Y". 05 LTR-AMIN PICTURE X VALUE "a". 05 LTR-EMIN PICTURE X VALUE "e". 05 LTR-IMIN PICTURE X VALUE "i". 05 LTR-OMIN PICTURE X VALUE "o". 05 LTR-UMIN PICTURE X VALUE "u". 05 LTR-YMIN PICTURE X VALUE "y". 01 ESPACES PICTURE X(12) VALUE SPACE. PROCEDURE DIVISION. *NOM DU PROGRAMME PRINCIPAL SECTION. DEBUT. PERFORM SAISIE. CORPS. PERFORM TRAITEMENT. FIN. DISPLAY "Mot consonné : " RESULTAT. DISPLAY "FIN DU TRAITEMENT". STOP RUN. *SAISIE DU MOT SAISIR SECTION. SAISIE. DISPLAY "Saisissez un mot : " WITH NO ADVANCING. ACCEPT MOT. *TRAITEMENT DU MOT TRAITER SECTION. TRAITEMENT. INSPECT MOT CONVERTING VOYELLES TO ESPACES AFTER MOT(1:1). MOVE MOT(1:1) TO RETOUR. PERFORM CONCATENER UNTIL CHIFFRE EQUAL TO 30. PERFORM TRANSMISSION. *CONCATENER LA CHAINE OBTENUE POUR SUPPRIMER LES ESPACES CONCATENER. MOVE MOT(CHIFFRE:1) TO LETTRE. IF (POINTEUR1 < 10) THEN MOVE POINTEUR1 TO POINTEUR2 END-IF SUBTRACT 1 FROM POINTEUR2. IF LETTRE IS EQUAL TO RETOUR(POINTEUR2:1) THEN MOVE SPACE TO LETTRE. IF (LETTRE IS NOT EQUAL TO SPACE OR POINTEUR1 IS EQUAL TO 6) THEN STRING LETTRE(1:1) INTO RETOUR WITH POINTER POINTEUR1 END-IF. ADD 1 TO CHIFFRE. *TRANSMET LE RESULTAT DES 6 PREMIERS CARACTERES A LA VARIABLE * RESULAT TRANSMISSION. MOVE RETOUR(1:6) TO RESULTAT.