Паскаль: обробка текстів, Детальна інформація
Паскаль: обробка текстів
якщо текст, починаючи від доступного символу, містить послідовність символів:
eol 1 2 . 1 eol l e s s o n eol x eol y eol eol
Указати також доступний символ тексту після читання.
5. Читання тексту з рядками обмеженої довжини
У багатьох текстах довжина рядків неоднакова, але обмежена, як правило, числом, що не перевищує 255 – максимальну довжину рядків типу string. Використання змінних цього типу дозволяє дуже просто описувати читання текстів.
Алгоритми розв’ язання задач із обробки таких текстів часто мають загальний вигляд
while not eof(f) do
begin
readln(f, s); {s має тип string}
обробка рядка s;
end.
Приклад 5. Написати процедуру копіювання тексту за умови, що рядки тексту мають довжину не більше 80, а рядки порожні або такі, що містять лише пpопуски, не копіюються.
Після читання чергового рядка початкового тексту треба визначити, чи є в ньому хоча б один символ, відмінний від пропусків. Тільки в цьому випадку він копіюється в текст g:
procedure cpnonemp(var f, g : text);
var s : string[80];
k : integer; emp : boolean;
begin
while not eof(f) do
begin
readln(f, s); k:=1; emp:=true;
while (k<= length(s)) and emp do
if s[k]<>' ' then emp:=false
else k:=k+1;
if not emp then writeln(g, s)
end
end;
Задача
>
D
\x00A8
eol 1 2 . 1 eol l e s s o n eol x eol y eol eol
Указати також доступний символ тексту після читання.
5. Читання тексту з рядками обмеженої довжини
У багатьох текстах довжина рядків неоднакова, але обмежена, як правило, числом, що не перевищує 255 – максимальну довжину рядків типу string. Використання змінних цього типу дозволяє дуже просто описувати читання текстів.
Алгоритми розв’ язання задач із обробки таких текстів часто мають загальний вигляд
while not eof(f) do
begin
readln(f, s); {s має тип string}
обробка рядка s;
end.
Приклад 5. Написати процедуру копіювання тексту за умови, що рядки тексту мають довжину не більше 80, а рядки порожні або такі, що містять лише пpопуски, не копіюються.
Після читання чергового рядка початкового тексту треба визначити, чи є в ньому хоча б один символ, відмінний від пропусків. Тільки в цьому випадку він копіюється в текст g:
procedure cpnonemp(var f, g : text);
var s : string[80];
k : integer; emp : boolean;
begin
while not eof(f) do
begin
readln(f, s); k:=1; emp:=true;
while (k<= length(s)) and emp do
if s[k]<>' ' then emp:=false
else k:=k+1;
if not emp then writeln(g, s)
end
end;
Задача
>
D
\x00A8
The online video editor trusted by teams to make professional video in
minutes
© Referats, Inc · All rights reserved 2021