2 { use string array and use procedure }
3 { tips for fpc - "fpc -mTP name_prog.pas" }
5 IN_FILE_PATH
= 'task_15.in';
6 OUT_FILE_PATH
= 'task15_2.out';
12 END_PHONE
= MAX_LENGTH_LINE
;
14 result_line_type
= string[MAX_LENGTH_LINE
];
15 in_lines_type
= array [1..MAX_LINES
] of string[MAX_LENGTH_LINE
];
17 in_file
, out_file
: text;
19 in_lines
: in_lines_type
;
20 family_line
, phone_line
: result_line_type
;
22 procedure find_min( i
, START_PIECE
, END_PIECE
: integer; var result_line
: result_line_type
);
30 in_t
:= copy( in_lines
[i
], START_PIECE
, END_PIECE
);
31 res_t
:= copy( result_line
, START_PIECE
, END_PIECE
);
33 result_line
:= in_lines
[i
];
36 result_line
:= in_lines
[i
];
40 assign( in_file
, IN_FILE_PATH
);
42 assign( out_file
, OUT_FILE_PATH
);
45 for i
:=1 to MAX_LINES
do
47 {START read from in_file and write in out_file}
48 readln( in_file
, in_lines
[i
]);
49 writeln( out_file
, in_lines
[i
]);
51 find_min( i
, START_FAMILY
, END_FAMILY
, family_line
);
52 find_min( i
, START_PHONE
, END_PHONE
, phone_line
);
57 writeln( out_file
,'Result');
58 writeln( out_file
, 'min family');
59 writeln( out_file
, family_line
);
60 writeln( out_file
, 'min phone');
61 writeln( out_file
, phone_line
);