program
FileOfInteger;
{$APPTYPE CONSOLE}
uses
Windows, SysUtils;
const
DATA_FILE_NAME =
'datafile.int'
;
MULT_FILE_NAME =
'multfile.int'
;
procedure
WriteStr(S:
String
);
var
Dst:
Array
[
0..255
]
Of
Char
;
begin
AnsiToOem(
PChar
(S), Dst);
Writeln
(Dst);
end
;
function
FmtVal(X:
Integer
):
String
;
begin
Result := Format(
'%6d'
, [X]);
end
;
var
NumCount :
Integer
;
F1, F2 :
File
of
Integer
;
X, Y :
Integer
;
i :
Integer
;
begin
WriteStr(
'Введите число элементов (0 - выход):'
);
Readln(NumCount);
if
NumCount =
0
then
Halt;
Randomize;
Writeln
;
WriteStr(
'Генерация и запись в файл:'
);
AssignFile(F1, DATA_FILE_NAME);
Rewrite(F1);
for
i :=
0
to
NumCount -
1
do
begin
X := Random(
10
);
Writeln
(FmtVal(X));
Write
(F1, X);
end
;
CloseFile(F1);
Writeln
;
WriteStr(
'Суммирование и запись в файл:'
);
AssignFile(F1, DATA_FILE_NAME);
Reset(F1);
AssignFile(F2, MULT_FILE_NAME);
Rewrite(F2);
Read(F1, X);
for
i :=
1
to
NumCount -
1
do
begin
Read(F1, Y);
Write
(FmtVal(X) +
' * '
+ FmtVal(Y) +
' = '
);
X := X * Y;
Writeln
(FmtVal(X));
Write
(F2, X);
X := Y;
end
;
CloseFile(F1);
CloseFile(F2);
Writeln
;
WriteStr(
'Нажмите Enter.'
);
Readln;
end
.