Var f:text; ars:array of string; s,s1:string; min,n,i:integer; begin n:=1; min:=integer.MaxValue; assign(f,'text.txt'); reset(f); while not(Eof(f)) do begin readln(f,s); s1:=s; s:=s.Trim; i:=1; while i<>length(s) do if (s[i]=' ') and (s[i+1]=' ') then delete(s,i,1) else inc(i); if ((s.split).length<=min) and ((s.split).length<>0) then begin if (s.split).length=min then begin inc(n); setlength(ars,n); ars[n-1]:=s1; end else begin n:=1; setlength(ars,n); ars[n-1]:=s1; end; min:=(s.split).length; end; end; close(f); assign(f,'text1.txt'); rewrite(f); for i:=0 to n-1 do writeln(f,ars[i]); close(f); end.
Программа поиска элемента в произвольном массиве: const n=10; var a:array[1..n+1] of integer; p,i:integer; begin Randomize; writeln('Исходный массив:'); for i:=1 to n do begin a[i]:=random(21); write(a[i]:4); end; writeln; write('p = '); readln(p); a[n+1]:=p; i:=1; while a[i]<>p do i:=i+1; if i<=n then writeln('Искомый элемент найден, его номер = ',i) else writeln('Искомый элемент не найден'); end.
Пример 1: Исходный массив: 7 17 16 13 0 1 19 20 12 5 p = 13 Искомый элемент найден, его номер = 4
Пример 2: Исходный массив: 20 4 5 12 14 10 11 16 18 20 p = 15 Искомый элемент не найден
Var
f:text;
ars:array of string;
s,s1:string;
min,n,i:integer;
begin
n:=1;
min:=integer.MaxValue;
assign(f,'text.txt');
reset(f);
while not(Eof(f)) do
begin
readln(f,s);
s1:=s;
s:=s.Trim;
i:=1;
while i<>length(s) do
if (s[i]=' ') and (s[i+1]=' ') then delete(s,i,1) else inc(i);
if ((s.split).length<=min) and ((s.split).length<>0) then
begin
if (s.split).length=min then
begin
inc(n);
setlength(ars,n);
ars[n-1]:=s1;
end
else
begin
n:=1;
setlength(ars,n);
ars[n-1]:=s1;
end;
min:=(s.split).length;
end;
end;
close(f);
assign(f,'text1.txt');
rewrite(f);
for i:=0 to n-1 do
writeln(f,ars[i]);
close(f);
end.
Содержимое файла text.txt:
Хей патимейкер
уличный
денсер
шейкер шейкер
Содержимое файла text1.txt:
уличный
денсер
const n=10;
var a:array[1..n+1] of integer;
p,i:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
begin
a[i]:=random(21);
write(a[i]:4);
end;
writeln;
write('p = '); readln(p);
a[n+1]:=p;
i:=1;
while a[i]<>p do i:=i+1;
if i<=n
then writeln('Искомый элемент найден, его номер = ',i)
else writeln('Искомый элемент не найден');
end.
Пример 1:
Исходный массив:
7 17 16 13 0 1 19 20 12 5
p = 13
Искомый элемент найден, его номер = 4
Пример 2:
Исходный массив:
20 4 5 12 14 10 11 16 18 20
p = 15
Искомый элемент не найден