Паскаль: обробка текстів, Детальна інформація

Паскаль: обробка текстів
Тип документу: Реферат
Сторінок: 17
Предмет: Комп`ютерні науки
Автор: Олексій
Розмір: 33.1
Скачувань: 1104
repeat readln(s1); until isword(s1);

nlin:=1;

while getlex1(f, s2) do if pos(s1, s2)<>0 then writeln(s2, ' ', nlin);

Функція getlex1 відрізняється від getlex збільшенням глобальної у ній змінної nlin. Воно відбувається, коли читається символ, що задає кінець рядка. Ми "забудемо" про те, що цим символом у мові Турбо Паскаль є chr(13), і скористаємося функцією eoln. Зверніть увагу, що її виклик передує читанню символу, оскільки за його виконання аналізується доступний, ще не прочитаний, символ тексту:

function getlex1(var f:text; var lex:string):boolean;

const ch : char=' '; var isl : boolean;

begin

lex:=''; getlex1:=false;

while not eof(f) and not isletter(ch) do

begin

while eoln(f) and not eof(f) do

begin nlin:=nlin+1; readln(f) end;

read(f, ch);

end;

{eof(f) or isletter(ch)}

if isletter(ch) then

begin

getlex1:=true; lex:=lex+ch; isl:=true;

while not eof(f) and isl do

begin

if eoln(f) then exit;

read(f,ch);

if isletter(ch) then lex:=lex+ch

else isl:=false

end;

{eof(f) or not isl}

end;

end;

Написання повної програми також залишаємо вправою.

Приклад 8. Коментар – це послідовність символів, що починається символами '(*', закінчується символами '*)' і не містить '*)' усередині. Написати програму читання та копіювання тексту з вилученням коментарів.

The online video editor trusted by teams to make professional video in minutes