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.
bugaevnicky
15.03.2020
Const n=5;m=10; var b:array[1..n,1..m]of integer; i,j,k,buf,l:integer; begin for i:=1 to n do begin writeln; for j:=1 to m do begin b[i,j]:=random(50); write(b[i,j]:4); end; end; writeln; for j:=1 to m do begin k:=0; for i:=1 to n-1 do if b[i,j]<b[i+1,j]then k:=k+1; if k=n-1 then buf:=buf+1; end; k:=0; for l:=2 to m do if l mod 2=0 then for i:=1 to n-1 do for j:=i+1 to n do if b[i,l]>b[j,l]then begin k:=b[i,l]; b[i,l]:=b[j,l]; b[j,l]:=k; end; writeln('увеличилось ',m div 2-buf); for i:=1 to n do begin writeln; for j:=1 to m do write(b[i,j]:4); end; end.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Какое значение принимает логическое выражение не ((x <= 5) и (y <> 2)) и (x + y > 3) при значениях переменных x = 4 и y = 1?
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.