ВУЗ:
Составители:
Рубрика:
27
Если заданного формата не хватило, то он проигнорируется. При не-
корректном задании формата для чисел типа real (например: var x:real
writeln (x:3:4)) игнорируется только его первый параметр, а число знаков по-
сле точки устанавливается, сколько задано, но не превышает точности типа.
Можно выводить вещественные числа без дробной части:
Write (123.456: 6: 0); {′123′}
Можно задавать выравнивание по левому краю (в этом случае значение
пишется с текущей порции без предшествующих пробелов). При этом зани-
мается поле = длина значения, никаких пробелов справа не дописывается.
Для задания такого режима следует ближайшее поле задать отрицательное:
Writeln (123.456: -6: 1, 15: -8); {′123.5′ и ′15′}
Форматы имеют смысл лишь при работе с текстовыми файлами, при-
чем нельзя задавать форматы-шаблоны, как в Фортране или в Бейсике.
Пример:
Запись n чисел в текстовый файл и выдача n натуральных чисел на
принтер. Принтер воспринимается как текстовый файл. В модуле принтера
есть описание var lst:txt, которое связывает имя lst с каналом устройства
LPT1.
Uses printer;
var i, n: integer;
zahl:text;
begin
writeln(′ввод n′); readln(n);
assign(zahl, ′zahl.txt′);
rewrite(zahl);
for i=1 to n do begin
writeln(lst, i:i); {вывод на принтер}
writeln(zahl, i:i); {запись числа i в файл}
end;
close(zahl);
end.
28
Практические задания на создание и обработку тек-
стовых файлов
1. В текстовом файле d переписать все четные числа из файла f.
2. Сформировать текстовый файл d из файла f, включая в него стро-
ки, которые начинаются на гласную букву.
3. Пусть текстовый файл t разбит на непустые строки. Написать про-
грамму для подсчета числа строк, которые оканчиваются буквой z.
4. Написать программу, которая находит максимальную (минималь-
ную) длину строк текстового файла t.
5. Написать программу, переписывающую содержимое текстового
файла t2 в текстовый файл t1 (с сохранением деления на строки).
6. Написать программу, которая подсчитывает количество пустых
строк в текстовом файле t.
7. В текстовом файле t записана непустая последовательность веще-
ственных чисел, разделенных пробелами. Написать программу для
нахождения
а) наибольшего из этих чисел;
б) наименьшего из чисел записи.
8. Пусть текстовый файл t разбит на непустые строки. Написать про-
грамму для подсчета числа строк, которые начинаются с буквы d.
9. Пусть текстовый файл t разбит на непустые строки. Написать про-
грамму для подсчета числа строк, которые начинаются и оканчиваются одной
и той же литерой.
10. Пусть текстовый файл t разбит на непустые строки. Написать про-
грамму для подсчета числа строк, которые состоят из одинаковых литер.
11. В текстовом файле t1 записана последовательность целых чисел,
разделенных пробелами. Написать программу, записывающую в текстовый
файл t2
а) все положительные числа;
б) все отрицательные числа;
в) неповторяющиеся числа;
г) числа кратные пяти из файла t1
12. Написать программу, которая построчно печатает содержимое не-
пустого текстового файла t, вставляя в начало каждой печатаемой строки ее
порядковый номер (он должен занимать 4 позиции), и пробел.
Практические задания на создание и обработку тек-
Если заданного формата не хватило, то он проигнорируется. При не- стовых файлов
корректном задании формата для чисел типа real (например: var x:real
writeln (x:3:4)) игнорируется только его первый параметр, а число знаков по- 1. В текстовом файле d переписать все четные числа из файла f.
сле точки устанавливается, сколько задано, но не превышает точности типа.
2. Сформировать текстовый файл d из файла f, включая в него стро-
Можно выводить вещественные числа без дробной части:
ки, которые начинаются на гласную букву.
Write (123.456: 6: 0); {′123′}
3. Пусть текстовый файл t разбит на непустые строки. Написать про-
Можно задавать выравнивание по левому краю (в этом случае значение грамму для подсчета числа строк, которые оканчиваются буквой z.
пишется с текущей порции без предшествующих пробелов). При этом зани- 4. Написать программу, которая находит максимальную (минималь-
мается поле = длина значения, никаких пробелов справа не дописывается. ную) длину строк текстового файла t.
Для задания такого режима следует ближайшее поле задать отрицательное: 5. Написать программу, переписывающую содержимое текстового
Writeln (123.456: -6: 1, 15: -8); {′123.5′ и ′15′} файла t2 в текстовый файл t1 (с сохранением деления на строки).
Форматы имеют смысл лишь при работе с текстовыми файлами, при- 6. Написать программу, которая подсчитывает количество пустых
чем нельзя задавать форматы-шаблоны, как в Фортране или в Бейсике. строк в текстовом файле t.
7. В текстовом файле t записана непустая последовательность веще-
Пример:
Запись n чисел в текстовый файл и выдача n натуральных чисел на ственных чисел, разделенных пробелами. Написать программу для
принтер. Принтер воспринимается как текстовый файл. В модуле принтера нахождения
есть описание var lst:txt, которое связывает имя lst с каналом устройства а) наибольшего из этих чисел;
LPT1. б) наименьшего из чисел записи.
8. Пусть текстовый файл t разбит на непустые строки. Написать про-
Uses printer; грамму для подсчета числа строк, которые начинаются с буквы d.
var i, n: integer;
zahl:text; 9. Пусть текстовый файл t разбит на непустые строки. Написать про-
begin грамму для подсчета числа строк, которые начинаются и оканчиваются одной
writeln(′ввод n′); readln(n); и той же литерой.
assign(zahl, ′zahl.txt′); 10. Пусть текстовый файл t разбит на непустые строки. Написать про-
rewrite(zahl); грамму для подсчета числа строк, которые состоят из одинаковых литер.
for i=1 to n do begin
writeln(lst, i:i); {вывод на принтер} 11. В текстовом файле t1 записана последовательность целых чисел,
writeln(zahl, i:i); {запись числа i в файл} разделенных пробелами. Написать программу, записывающую в текстовый
end; файл t2
close(zahl); а) все положительные числа;
end.
б) все отрицательные числа;
в) неповторяющиеся числа;
г) числа кратные пяти из файла t1
12. Написать программу, которая построчно печатает содержимое не-
пустого текстового файла t, вставляя в начало каждой печатаемой строки ее
порядковый номер (он должен занимать 4 позиции), и пробел.
27 28
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »
