Вопрос задан 25.07.2023 в 15:28. Предмет Информатика. Спрашивает Madrid Real.

Задача. Дан массив. Рассортировать элементы массива по убыванию. program sortirovka; var n, k, z,

x : integer; a : array[1..50] of integer; begin write('введи размер массива: '); readln(n); for k:=1 to n do a[k]:=random(10)-7; writeln('Исходный массив:'); for k:=1 to n do write(a[k],' '); for z:=1 to n-1 do for k:=1 to n-z do if a[k] then begin x:=a[k]; a[k]:=a[k+1]; a[k+1]:=x end; writeln; writeln('Рассортированный массив:'); for k:=1 to n do write(a[k],' '); end.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Калабина Света.

program sortirovka;

var n, k, z, x : integer;

a : array[1..50] of integer;

begin

write('введи размер массива: '); readln(n);

for k:=1 to n do a[k]:=random(10)-7;

writeln('Исходный массив:');

for k:=1 to n do write(a[k],' ');

for z:=1 to n-1 do

for k:=z+1 to n do

if a[k]>a[z] then begin

x:=a[k];

a[k]:=a[z];

a[z]:=x

end;

writeln;

writeln('Рассортированный массив:');

for k:=1 to n do write(a[k],' ');

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Данная программа на языке Pascal сортирует элементы массива по убыванию с использованием метода пузырьковой сортировки. Однако, есть несколько ошибок в коде:

  1. В строке if a[k] then условие не определено, это приведет к синтаксической ошибке. Необходимо сравнивать элементы массива с его соседями, чтобы определить, нужно ли менять их местами.

  2. После исправления первой ошибки, сортировка будет происходить по возрастанию, в то время как задача требует сортировку по убыванию.

Вот исправленный код для сортировки по убыванию:

pascal
program sortirovka; var n, k, z, x: integer; a: array[1..50] of integer; begin write('Введи размер массива: '); readln(n); for k := 1 to n do a[k] := random(10) - 7; writeln('Исходный массив:'); for k := 1 to n do write(a[k], ' '); for z := 1 to n - 1 do for k := 1 to n - z do if a[k] < a[k + 1] then begin x := a[k]; a[k] := a[k + 1]; a[k + 1] := x; end; writeln; writeln('Рассортированный массив по убыванию:'); for k := 1 to n do write(a[k], ' '); end.

Теперь код должен корректно сортировать массив по убыванию. Он использует алгоритм пузырьковой сортировки, который многократно проходит по массиву, меняя местами соседние элементы, если они стоят в неправильном порядке.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос