Вопрос задан 17.02.2019 в 11:13. Предмет Информатика. Спрашивает Абилгазыкызы Арайлым.

Дан массив mas[1..10]: = 1,3,-1,4,0,-4,-4,3,0,-4. Укажите, чему будет равно k после выполнения

алгоритма. В ответе укажите число. k:= 1; for i:= 9 downto 1 do for j:=1 to i do if mas[j] > mas[j+1] then begin tmp:= mas[j]; mas[j]:= mas[j+1]; mas[j+1]:= tmp; k:= k + 1; end; write('k = ', k); readln
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Пищевая Катерина.
Это разновидность сортировки обменом - худший её вариант с точки зрения скорости и самый простой для написания: сортировка методом пузырька. Ручной подсчет значения k - количества сделанных в процессе сортировки обменов местами элементов массива, достаточно утомителен, поэтому проще добавить необходимые операторы и выполнить программу.
Ответ: k=28
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Алгоритм, описанный в задаче, выполняет сортировку массива mas[1..10] по возрастанию с использованием метода пузырька. Переменная k используется для подсчета количества перестановок элементов массива, которые выполняются в процессе сортировки.

Алгоритм сортировки пузырьком

1. Инициализируем переменную k значением 1: `k := 1`. 2. Выполняем цикл от i = 9 до 1 с шагом -1: `for i := 9 downto 1 do`. 3. Внутри внешнего цикла выполняем вложенный цикл от j = 1 до i: `for j := 1 to i do`. 4. Внутри вложенного цикла проверяем, если mas[j] > mas[j+1], то выполняем перестановку элементов mas[j] и mas[j+1] с использованием временной переменной tmp: ``` if mas[j] > mas[j+1] then begin tmp := mas[j]; mas[j] := mas[j+1]; mas[j+1] := tmp; k := k + 1; end; ``` 5. После завершения внутреннего цикла, увеличиваем переменную k на 1: `k := k + 1`. 6. Выводим значение переменной k: `write('k = ', k);`.

Выполнение алгоритма на заданном массиве

Для выполнения алгоритма на заданном массиве mas[1..10] := [1,3,-1,4,0,-4,-4,3,0,-4], следуем шагам алгоритма:

1. Инициализируем переменную k значением 1: `k := 1`. 2. Выполняем цикл от i = 9 до 1 с шагом -1: - i = 9: - Внутренний цикл не выполняется, так как j = 1 > i. - i = 8: - Внутренний цикл выполняется для j = 1: - mas = 1, mas = 3: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 2: - mas = 3, mas = -1: Необходима перестановка. - Перестановка: mas = -1, mas = 3. - Увеличиваем k на 1: `k := k + 1`. - i = 7: - Внутренний цикл выполняется для j = 1: - mas = -1, mas = -1: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 2: - mas = -1, mas = -1: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 3: - mas = -1, mas = 4: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 4: - mas = 4, mas = 0: Необходима перестановка. - Перестановка: mas = 0, mas = 4. - Увеличиваем k на 1: `k := k + 1`. - i = 6: - Внутренний цикл выполняется для j = 1: - mas = -1, mas = -1: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 2: - mas = -1, mas = 0: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 3: - mas = 0, mas = 0: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 4: - mas = 0, mas = 4: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 5: - mas = 4, mas = -4: Необходима перестановка. - Перестановка: mas = -4, mas = 4. - Увеличиваем k на 1: `k := k + 1`. - i = 5: - Внутренний цикл выполняется для j = 1: - mas = -1, mas = -1: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 2: - mas = -1, mas = 0: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 3: - mas = 0, mas = 0: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 4: - mas = 0, mas = -4: Необходима перестановка. - Перестановка: mas = -4, mas = 0. - Увеличиваем k на 1: `k := k + 1`. - Внутренний цикл выполняется для j = 5: - mas = 0, mas = -4: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 6: - mas = -4, mas = -4: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 7: - mas = -4, mas = 3: Необходима перестановка. - Перестановка: mas = 3, mas = -4. - Увеличиваем k на 1: `k := k + 1`. - i = 4: - Внутренний цикл выполняется для j = 1: - mas = -1, mas = -1: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 2: - mas = -1, mas = 0: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 3: - mas = 0, mas = -4: Необходима перестановка. - Перестановка: mas = -4, mas = 0. - Увеличиваем k на 1: `k := k + 1`. - Внутренний цикл выполняется для j = 4: - mas = 0, mas = 3: Нет необходимости в перестановке. - Внутренний цикл выполняется для j = 5: - mas = 3, mas = -4: Необходима перестановка.

0 0

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

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

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