Вопрос от пользователя: Плакида
Написать программу на ABC Pascal:
Дан текстовый файл f. Найти слова, заканчивающие на of
Ответ: Власий
Const
n=50;
var
f:Text;
s:string;
ss:array of string;
a:array[1 … n] of string;
i, j:integer;
begin
Assign (f,’input. txt’); Reset (f);
j:=0;
while not Eof (f) do begin
Readln (f, s);
ss:=s. Split (‘ ‘);
for i:=0 to Length (ss) — 1 do
if Length (ss[i]) >1 then
if RightStr (ss[i],2) = ‘of’ then
begin Inc (j); a[j]:=ss[i] end;
end;
Close (f);
for i:=1 to j do Write (a[i],’ ‘);
Writeln
end.
Тестовое решение:
123of asdfdsof dasof
Есть решение и покороче, но совсем не уровня начинающих:
uses
System. Text. RegularExpressions;
const
n=50;
var
f:Text;
s:string;
a:array[1 … n] of string;
i, j:integer;
begin
Assign (f,’input. txt’); Reset (f);
j:=0;
while not Eof (f) do begin
Readln (f, s);
foreach var m:Match in Regex. Matches (s,’/b/S+of/b’) do
begin Inc (j); a[j]:=m. Value end;
end;
Close (f);
for i:=1 to j do Write (a[i],’ ‘);
Writeln
end.