PROGRAM PRG8J;
VAR F1, F2: TEXT; X: CHAR; BEGIN ASSIGN(F1, 'С: \E\ONE'); RESET(F1); ASSIGN(F2,' '); REWRITE(F2); WHILE NOT EOF(F1) DO BEGIN READ(F1, X); WRITE(F2, X + ' ' + X) END; WRITELN; CLOSE(F1); CLOSE(F2) END. Переменные: Fl, F2 - текстовые файлы; X - очередной элемент файла. Результат обработки файла ONE представлен на рис. 8.2. Обратите внимание, удваиваются через пробел все символы в файле - даже конец строки! Поэтому в файле-результате текстовые строки разделяются пустой строкой.
Borland Pascal Version 7.0 Copyright (с) 1983, 92 Borland International 11 33 55 66 77 88 22 33 33 33 33 44 66 44 44 44 22 22 22 22 22 22 55 11 11 11 11 11 11 66 55 66 66 66 66 66
Рис. 8.2. Результат работы PRG8_1 Задача 8.2 Считать файл TWO, удвоив все буквы "а".
PROGRAM PRG8_2; VAR F1, F2: TEXT; X: CHAR; BEGIN ASSIGN(F1, 'TWO'); RESET(F1); ASSIGN(F2, ' '); REWRITE(F2); WHILE NOT EOF(F1) DO BEGIN READ(F1, X); IF (X = 'a') OR (X = 'A') THEN WRITE(F2, X+X) ELSE WRITE(F2, X) END; WRITELN; CLOSE(F1); CLOSE(F2) END. Для решения задачи: - формируем тело программы и описываем переменные; - привяжем файл TWO к файловой переменной F1 и откроем его на чтение; - переменную F2 свяжем со стандартным устройством вывода - экраном дисплея и откроем его на вывод; - организуем цикл по считыванию элементов файла F1, записи их в файл F2 до тех пор, пока не будет найден конец файла F1 с помощью функции EOF(Fl); - если при этом будут обнаружены буквы «а», они при записи удваиваются; - закрываем оба файла. Переменные: Fl, F2 - текстовые файлы; X - очередной элемент файла. Результат обработки файла TWO представлен на рис. 8.3.
|