1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
\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:
|