В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
babikovserega2
babikovserega2
12.10.2021 09:26 •  Информатика

Впрограмме используется одномерный целочисленный массив а с индексами от 0 до 9. значения элементов равны 1,2,4,3,5,6,8,7,3,4,т.е а(0)=1 и тд. определите значение переменной s после выполнения следующего фрагмента программы: s: =0 for i: =1 to 9 do if a[i-1] a[i]: =a[i-1]+1 s: =s+1 end

Показать ответ
Ответ:
2002anna2
2002anna2
09.10.2020 00:19

s := 0; (начальное значение счётчика)

 for i := 1 to 9 do  (цикл по i)

if A[i - 1] < A[i] then begin (если текущий элемент больше предыдущего,

 s := s + 1; то увеличиваем счётчик на 1)

     t := A[i]; (меняем текущий элемент местами с предыдущим)

     A[i] := A[i - 1];

     A[i - 1] := t

   end;

Последние три строчки перед end - обычный алгоритм обмена значениями между двумя переменными (t = a; a = b; b = t).

Итак, моделируем, что делает программа и считаем число обменов.

0) 6 9 7 2 1 5 0 3 4 8 - исходный массив

1) 6 9 7 2 1 5 0 3 4 8 -> 9 6 7 2 1 5 0 3 4 8 ОБМЕН

2) 9 6 7 2 1 5 0 3 4 8 -> 9 7 6 2 1 5 0 3 4 8 ОБМЕН

3) 9 7 6 2 1 5 0 3 4 8 ОК

4) 9 7 6 2 1 5 0 3 4 8 ОК

5) 9 7 6 2 1 5 0 3 4 8 -> 9 7 6 2 5 1 0 3 4 8 ОБМЕН

6) 9 7 6 2 5 1 0 3 4 8 ОК

7, 8, 9) Ноль будет "всплывать" в конец, 3 ОБМЕНА

Всего будет 6 обменов, s = 6.

ответ: 6

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота