Предмет: Информатика, автор: 6opMoTyH

на скрине представлен сортировка массива методом пузырька, дали задание, определить при каком j массив уже отсортирован, выйти из массива с помощью метки(label) и оператора "goto", и вывести на экран j при котором массив отсортировался, чтобы "не гонять зря компьютер", помогите кто шарит

Приложения:

Ответы

Автор ответа: kage1998
0
program gt;
label 1,2;
type ma=array[1..100000]of longint;
var  A:ma; 
 p,l,g,n,i,j:longint;
begin
read(n);
for i:=1 to n do
begin
read(A[i]);
end;
for i:=1 to n-1 do
begin
for j:=1 to n-i do
begin
p:=A[j];
l:=A[j+1];
if A[j]>A[j+1] then beginA[j]:=l;A[j+1]:=p;
end;
end;
for g:=1 to n-1 do
begin
if(A[g]>a[g+1])then goto 2;
end;
goto 1;
2:
end;
1:
writeln(i);
for i:=1 to n do
begin
write(A[i],' ');
end;
end.
Если по убыванию то if(A[g]<a[g+1])then goto 2;
Автор ответа: kage1998
0
у меня i и j наоборот
Автор ответа: 6opMoTyH
0
там вообще не отсортированный массив выдает, а 50 двоек, или 50 восьмерок
Автор ответа: 6opMoTyH
0
он выдает что на 47 j из 50 cортировка закончена, это норм?
Автор ответа: 6opMoTyH
0
все, работает, один begin лишний
Похожие вопросы
Предмет: Другие предметы, автор: Аноним