Задание 5. Тип заданий 19: программирование, массивы.
  • Задание:

    В программе используется одномерный целочисленный массив А с индексами от 1 до 10. Значения элементов равны 4, 5, 8, 6, 4, 5, 1, 7, 15, 8 соответственно, т.е. A[1] = 4, A[2] = 5 и т.д. Определите значение переменной s после выполнения следующего фрагмента программы:

    Pascal:

    s := 0;
    for i:=1 to 9 do
      s := s — A[i] + A[i+1];

  • Решение:

    Для решения данного задания надо понять, по какому принципу изменяется значение переменной s.

    Массив состоит из десяти элементов.

    Каждый повтор цикла от переменной s отнимается значение элемента с индексом i, и прибавляется значение элемента с индексом i+1, то есть значение следующего элемента.

    Однако, в каждом следующем повторе цикла этот прибавленный элемент снова будет вычтен. Рассмотрим два повтора цикла для данного массива:

    1. s := s-a[1]+a[1+1] = 0-4+5 = 1

    2. s := s-a[2]+a[2+1] = 1-5+8 = 4

    Таким образом, к переменной s будут прибавляться, а затем снова отниматься элементы 2..9:

    1 2 3 4 5 6 7 8 9 10
    4 5 8 6 4 5 1 7 15 8

    Красным подсвечены элементы, которые будут прибавлены к переменной s, а затем вычтены из неё. Первый же элемент будет вычтен в первом повторе цикла, но прибавлен не будет. Последний элемент будет прибавлен, но не будет вычтен.

    Получается, что значение переменной s равно:

    s := s-4+8 = 4

    Ответ: 4

Поделиться:
 
Комментарии (0)

Нет комментариев. Ваш будет первым!

Перевести число из в Результат: 510 = 1012