ВУЗ:
Составители:
Рубрика:
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
- …
- следующая ›
- последняя »