Создать в паскале одномерный массив из 30 элементов (рандомом). Найти все максимальные значения массива и удалить их. Вывести получившийся массив.
Answers & Comments
sellsaccountvar a, b, c, i, j, n, ch:integer; s, p:array [1..10000] of integer; begin n:=30; for i:=1 to n do s[i]:=random(64000)-32000; writeln('Данный массив'); for i:=1 to n do write (s[i],' '); a:=s[1]; for i:=1 to n do if s[i]>a then a:=s[i]; for i:=1 to n do if s[i]=a then begin j:=j+1; p[j]:=i; end; c:=j; writeln; writeln('Полученный массив'); for i:=1 to n do begin ch:=0; for j:=1 to c do if i=p[j] then inc(ch); if ch=0 then write (s[i],' '); end; end. P.S. Надеюсь на благодарность и лучший ответ.
Answers & Comments
s, p:array [1..10000] of integer;
begin
n:=30;
for i:=1 to n do
s[i]:=random(64000)-32000;
writeln('Данный массив');
for i:=1 to n do
write (s[i],' ');
a:=s[1];
for i:=1 to n do
if s[i]>a then
a:=s[i];
for i:=1 to n do
if s[i]=a then
begin
j:=j+1;
p[j]:=i;
end;
c:=j;
writeln;
writeln('Полученный массив');
for i:=1 to n do
begin
ch:=0;
for j:=1 to c do
if i=p[j] then inc(ch);
if ch=0 then write (s[i],' ');
end;
end.
P.S. Надеюсь на благодарность и лучший ответ.