Что добавить в код, чтобы текст в окне вывода появился в файле и сохранился там? - Pascal
Формулировка задачи:
что добавить в код чтобы текст в окне вывода появился в файле и сохранился там?
const
n=9;
var
f: file of char;
c:char;
t:text;
a: array[2..n,2..n] of integer;
i,j: byte;
begin
assign (f, 'c:\file.txt');
rewrite (f);
writeln('Таблица умножения от 2 до 9');
write(' *|');
for i:=2 to n do write(i:4); writeln;
for i:=2 to n+1 do write('-----'); writeln;
for i:=2 to n do
begin
write(i:3,'|');
for j:=1 to n do
write(i*j:4);
writeln;
end;
readln;
end.Решение задачи: «Что добавить в код, чтобы текст в окне вывода появился в файле и сохранился там?»
textual
Листинг программы
const n = 9; var f: text; a: array[2..n, 2..n] of integer; i, j: byte; s:string; begin assign(f, 'c:\file.txt'); rewrite(f); writeln(f, 'Таблица умножения от 2 до 9'); write(f, ' *|'); for i := 2 to n do write(f, i:4);writeln(f); for i := 2 to n + 1 do write(f, '-----');writeln(f); for i := 2 to n do begin write(f, i:3, '|'); for j := 1 to n do write(f, i * j:4); writeln(f); end; close(f); reset(f); while not EoF(f) do begin readln(f,s); writeln(s); end; end.
Объяснение кода листинга программы
- В начале объявляются необходимые переменные: n, f, a, i, j, s.
- Задается путь к файлу, который будет использоваться для записи и чтения данных: assign(f, 'c:\file.txt');
- Выполняется перезапись файла: rewrite(f);
- Записывается заголовок таблицы умножения: writeln(f, 'Таблица умножения от 2 до 9');
- Записывается символ '' и пробел: write(f, ' |');
- Выполняется цикл, в котором вычисляются и записываются значения произведения чисел от 2 до n: for i := 2 to n do write(f, i:4);writeln(f);
- Выполняется цикл, в котором вычисляются и записываются разделители между числами: for i := 2 to n + 1 do write(f, '-----');writeln(f);
- Выполняется цикл, в котором вычисляются и записываются значения произведения чисел от 2 до n: for i := 2 to n do begin write(f, i:3, '|'); for j := 1 to n do write(f, i * j:4); writeln(f); end;
- Файл закрывается: close(f);
- Счетчик файла сбрасывается: reset(f);
- Выполняется цикл, в котором считываются строки из файла до конца файла или до тех пор, пока не будет достигнут конец файла: while not EoF(f) do begin readln(f,s); writeln(s); end;