Написать программу на 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,bS+ofb) do
    begin Inc(j); a[j]:=m.Value end;
  end;
  Close(f);
  for i:=1 to j do Write(a[i], );
  Writeln
end.

Оцени ответ
Подпишись на наш канал в телеграм. Там мы даём ещё больше полезной информации для школьников!

Загрузить картинку