Отсортировать элементы стоящие после первого максимального методом пузырька PASCAL ABC

0 голосов
97 просмотров

Отсортировать элементы стоящие после первого максимального методом пузырька
PASCAL ABC


Информатика (150 баллов) | 97 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Const n=10;
var i,j,k,mx,ind: integer;
    a: array[1..n] of integer;
begin
  writeln('исходный массив:');
  randomize;
  mx:=0;
  for i:=1 to n do
  begin
    a[i]:=random(2*n)-n;
    write(a[i],' ');
    if a[i]>mx then
    begin
      mx:=a[i];
      ind:=i;
    end;  
  end;
  writeln;
  for i:=ind+1 to n-1 do
  for j:=i+1 to n do
    if a[i]>a[j] then
    begin
       k:=a[i];
       a[i]:=a[j];   
       a[j]:=k;
    end;
  writeln('новый массив:');  
  for i:=1 to n do write(a[i],' ');
end.

исходный массив:
3 7 7 5 5 -2 -8 -9 -8 6 
новый массив:
3 7 -9 -8 -8 -2 5 5 6 7 

(9.7k баллов)
0

Неизвестный идентификатор swap

0

Это не идентификатор, это процедура swap(a,b) - обменивает значения переменных a b, a=b, b=a. Вместо нее можно записать так: k:=a[i]; a[i]:=a[j]; a[j]:=k; только нужно описать k в var k: integer;

0

Естественно, эти три оператора нужно поместить в блок begin end; , т.е. вместо строки if a[i]>a[j] then swap(a[i],a[j]); записываете следующее: if a[i]>a[j] then begin k:=a[i]; a[i]:=a[j]; a[j]:=k; end;

0

Спасибо

0

Можете еще эту решить

0
0 голосов
Элемент - k . Он нужен для того чтобы поменять два элемента массива местами.
Скачать вложение Текст (TXT)
(26 баллов)
0

Надо после максимального отсортировать,а не просто