HP Pascal/iX Reference Manual (31502-90022)

12- 46
have any effect.
Example
PAGE 1 HEWLETT-PACKARD ... (C) HEWLETT-PACKARD CO. 1986 ...
0 1.000 0
0 2.000 0
0 3.000 0 PROGRAM sort (infile,outfile,output);
0 4.000 0
0 5.000 0 VAR
0 6.000 0 infile : text;
1 7.000 0 outfile : text;
2 8.000 0
** 8.100 0 (* This line and the next three are not compiled:
** 8.200 0 CONST
** 8.300 0 max_array_size = 20000;
** 8.400 0 *)
2 9.000 0 CONST
2 10.000 0 max_array_size := 4000;
^
**** ERROR # 1 FOUND UNEXPECTED ":=" (025)
3 11.000 0 TYPE
3 12.000 0 data_type = integer;
4 13.000 0
4 14.000 0 VAR
4 15.000 0 data_array = array [1..max_array_size] OF data_type;
^
**** ERROR #2 FOUND UNEXPECTED "=" (025)
5 16.000 0
5 17.000 0 array_size : 0..max_array_size;
6 18.000 0
6 19.000 0 $PAGE$
PAGE 2 HEWLETT-PACKARD ... (C) HEWLETT-PACKARD CO. 1986 ...
0 20.000 0 PROCEDURE read_data;
1 21.000 1 BEGIN
1 22.000 1 reset(infile);
2 23.000 1 array_size := 0;
3 24.000 1
3 25.000 1 WHILE ((NOT eof(infile))
4 26.000 1 AND
4 27.000 2 (array_size < max_array_size)) DO BEGIN
4 28.000 2
4 29.000 2 array_size := array_size + 1;
5 30.000 2 readln(infile,data_array[array_size]);
6 31.000 2 END;
6 32.000 1
6 33.000 2 IF (NOT eof(infile)) THEN BEGIN
7 34.000 2 writeln('Too many data points for sort program.');
8 35.000 2 writeln('Sorting partial list only.');
9 36.000 2 END;
9 37.000 1
9 38.000 1 close(infile);
10 39.000 1 END;
10 40.000 0
0 41.000 0 $PAGE$
PAGE 3 HEWLETT-PACKARD ... (C) HEWLETT-PACKARD CO. 1986 ...
0 42.000 0 PROCEDURE write_data;
1 43.000 0 VAR
1 44.000 0 index : 0..max_array_size;
2 45.000 1 BEGIN
2 46.000 1 rewrite(outfile);
3 47.000 1
3 48.000 1 FOR index := 1 TO array_size DO
4 49.000 1 writeln(outfile,'data_array[index]);