Задание 19

ТЕМА 19

"Обработка массивов"

Пример 1

В программе используется одномерный целочисленный массив A с индексами от 0 до 9. Значения элементов равны 5, 1, 4, 8, 3, 5, 8, 9, 7, 9 соответственно, т.е. A[0] = 5, A[1] = 1, A[2] = 4 и т.д.

Определите значение переменной c после выполнения следующего фрагмента этой программы, записанного ниже на пяти языках программирования.

Решение

В программе реализован цикл с параметром (выполняется 9 раз), внутри которого работает условие.

Условие если A[i] < A[i-1], записанное в цикле, означает сравнение двух соседних элементов в массиве поочередно. Если предыдущий элемент больше последующего, то происходит перестановка их местами: сначала предыдущий элемент сохраняется в переменной t, на его место присваивается следующий за ним элемент массива, а сохраненное значение в переменной t, предыдущего элемента записывается на место последующего. После каждой перестановки значение переменной с увеличивается на 1 (с := с + 1). Таким образом, в переменной с накапливается количество перестановок, соответствующих условию в цикле. Рассмотрим этот процесс на элементах массива:

Таких перестановок будет 5, поэтому с = 5.

Ответ: 5

Пример 2

Представленный ниже на пяти языках программирования фрагмент программы обрабатывает элементы одномерного целочисленного массива A с индексами от 0 до 9. Перед началом выполнения данного фрагмента эти элементы массива имели значения 1, 3, 5, 3, 7, 4, 2, 6, 3, 9 (т. е. A[0] = 1, A[1] = 3, A[2] = 5, …, A[9] = 9). Определите значение переменной s после выполнения фрагмента.

Решение

В программе реализован цикл с параметром (выполняется 9 раз), внутри которого работает условие: если A[i-1] > A[i]. При проверке условия поочередно сравниваются два соседних элемента: если предыдущий элемент массива A[i-1] больше последующего A[i], то значение A[i] увеличивается на 2. После этого к переменной s прибавляется значение увеличенного элемента. Таким образом, в переменной s накапливается сумма значений элементов, увеличенных на 2. Рассмотрим этот процесс на элементах массива:

В процессе обработки массива изменены четыре элемента. Их сумма равна переменной s.

s = 5 + 6 + 4 + 5 = 20

Ответ: 20

Пример 3

Ниже представлен фрагмент программы, обрабатывающей одномерный целочисленный массив с индексами от 0 до 9. Значения элементов равны 4; 7; 2; 5; 1; 8; 1; 3; 3; 9 соответственно, т. е. A[0] = 4; A[1] = 7 и т. д. Определите значение переменной S после выполнения следующего фрагмента программы.

Решение

В программе реализован цикл с параметром (выполняется 9 раз), внутри которого накапливается сумма разностей двух соседних элементов массива:

S1 = S0 + A[1] – A[0]

S2 = S1 + A[2] – A[1]

S3 = S2 + A[3] – A[2]

S4 = S3 + A[4] – A[3]

S9 = S8 + A[9] – A[8]

Получаем: S = A[1] – A[0] + A[2] – A[1] + A[3] – A[2] + … + A[9] – A[8] = A[9] – A[0]

Значит, в программе вычисляется разность между последним и первым элементом в массиве:

S = 9 – 4 = 5

Ответ: 5

  • Примеры, рассмотренные на этой странице в формате pdf: скачать
  • Решенные задачи по теме других авторов: скачать
  • ссылка на видеоурок по теме: смотреть

Комментарии, отзывы и предложения Вы можете направить на e-mail, указанный в контактах или оставить в гостевой книге, указав тему вопроса: перейти в гостевую книгу