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

Значения элементов массива а, состоящего из 10 элементов, равны соответственно: 5, 7, 6, 0, 3, т. е. а[0] = 5, a[1] = 7 и т. д. в результате выполнения фрагмента программы

Показать ответ
Ответ:
Davidovaliza
Davidovaliza
04.10.2019 07:30

рассмотрим, что делает эта программа.

  c : = 0; // начальное значение счётчика

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

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

      c : = c + 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 обменов, c = 6.

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