\begin{programs}* \WITH TEXT\_IO; \USE TEXT\_IO; \PROCEDURE NUMEROTATION (FICHIER\_ENTREE : \IN STRING; FICHIER\_SORTIE : \IN STRING := "") IS \SUBTYPE LONGUEUR\_LIGNE \IS INTEGER \RANGE 1..255; FICHIER\_IN : FILE\_TYPE; FICHIER\_OUT : FILE\_TYPE; COMPTEUR : NATURAL := 0; LIGNE : STRING (LONGUEUR\_LIGNE); FIN\_DE\_LIGNE : NATURAL; \BEGIN OPEN (FILE => FICHIER\_IN, MODE => IN\_FILE, NAME => FICHIER\_ENTREE); \IF FICHIER\_SORTIE = "" \THEN CREATE (FILE => FICHIER\_OUT, MODE => OUT\_FILE, NAME => FICHIER\_ENTREE \& ".num"); \ELSE CREATE (FILE => FICHIER\_OUT, MODE => OUT\_FILE, NAME => FICHIER\_SORTIE); \END \IF; RESET (FICHIER\_IN); \WHILE \NOT END\_OF\_FILE (FICHIER\_IN) \LOOP GET\_LINE (FILE => FICHIER\_IN, ITEM => LIGNE, LAST => FIN\_DE\_LIGNE); COMPTEUR := COMPTEUR + 1; PUT\_LINE (FILE => FICHIER\_OUT, ITEM => NATURAL'IMAGE (COMPTEUR) \& " " \& LIGNE (1..FIN\_DE\_LIGNE)); \END \LOOP; CLOSE (FILE => FICHIER\_IN); CLOSE (FILE => FICHIER\_OUT); \END NUMEROTATION; \WITH TEXT\_IO; \USE TEXT\_IO; \WITH NUMEROTATION; \PROCEDURE TEST\_NUMEROTATION \IS CARACTERES : NATURAL; NOM\_FICHIER : STRING (1..50); \BEGIN PUT ("quel fichier voulez-vous "); PUT ("numeroter ? "); GET\_LINE (NOM\_FICHIER,CARACTERES); NUMEROTATION (NOM\_FICHIER (1..CARACTERES)); PUT\_LINE ("C'est fini"); \END TEST\_NUMEROTATION; \end{programs} % Local Variables: % mode: latex % TeX-master: t % End: