Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КНИГА_Учимся программировать TURBO PASCAL 7.doc
Скачиваний:
32
Добавлен:
19.08.2019
Размер:
1.62 Mб
Скачать

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

77

22

11

Рис. 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.

Borland Pascal Version 7.0 Copyright (с) 1983, 92 Borland

International

qqwerr ttttt aaaa ss dddd

s d f g . h j

s d ffffff

Рис. 8.3. Результат работы PRG8_2 

Задача 8.3 Прочитать файл TWO и определить, сколько раз в нем встречается буква "а ".

PROGRAM PRG8_3;

Var Fl : text;

X: char;

К: INTEGER;

BEGIN

K:=0;

ASSIGN(F1, 'TWO');

RESET(F1);

WHILE NOT E0F(F1) DO

BEGIN

READ(F1, X);

IF (X = 'a') OR (X = 'A') THEN К := K+1;

END;

WRITELN('КОЛИЧЕCTBO БУКВ А :', K);

CLOSE(F1);

END.

Для решения задачи:

- формируем тело программы и описываем переменные;

- привяжем файл TWO к файловой переменной F1 и откроем его на чтение;

- организуем цикл по считыванию элементов файла F1 и под­счете количества букв "а" до тех пор, пока не будет найден конец файла F1 с помощью функции EOF(Fl);

- выводим результат;

- закрываем файл.

Переменные:

F1 - текстовый файл;

X - очередной элемент файла;

К - счетчик количества букв.

Borland Pascal Version 7.0 Copyright (с) 1983, 92 Borland

International

КОЛИЧЕСТВО БУКВ А : 2

Рис. 8.4. Результат работы PRG8_3

Задача 8.4 Прочитать файл ONE и найти сумму цифр, встречающихся в нем.

В данной задаче, чтобы определить численное значение эле­мента текстового файла, т. е. значение цифры, можно воспользо­ваться тем, что символы являются упорядоченным типом. Коды ASCII цифр следуют один за другим, и значение любой цифры может быть получено как

К := ORD(X)-ORD('0');

PROGRAM PRG8_4;