Демоверсия егэ по информатике 2020. Задание 19

Задание 19. Программирование: массивы и матрицы: Демоверсия егэ по информатике 2020: объяснение и решение


*** КАНАЛ ЮТЬЮБ ***
 
ЕГЭ по информатике -> ЕГЭ 2020 -> ЕГЭ 2020
 

Разбор 19 задания. Демоверсия егэ по информатике 2020, ФИПИ:

В программе используется одномерный целочисленный массив A с индексами от 0 до 11. Значения элементов равны 20, 19, 17, 41, 23, 12, 24, 16, 4, 13, 6, 15 соответственно, т.е. A[0]=20, A[1]=19 и т.д.

Определите значение переменной s после выполнения следующего фрагмента этой программы:
  
Паскаль:

1
2
3
4
5
6
7
8
9
10
s := 0;
n := 0;
for i := 0 to 11 do
if A[i] <= A[n] then
 begin
   s := s + i;
   t := A[i];
   A[i] := A[n];
   A[n] := t
 end;
Бейсик:

s = 0
n = 0
FOR i = 0 TO 11
  IF A(i) <= A(n) THEN
    s = s + i
    t = A(i)
    A(i) = A(n)
    A(n) = t
  END IF
NEXT i
Python:

s = 0
n = 0
for i in range(12):
   if A[i] <= A[n]:
     s += i
     t = A[i]
     A[i] = A[n]
     A[n] = t
С++:

s = 0;
n = 0;
for (int i = 0; i < 12; i++)
   if (A[i] <= A[n]){
      s += i;
      t = A[i];
      A[i] = A[n];
      A[n] = t;
   }

📹 Видеоразбор 19 задания ЕГЭ демоверсии 2020

✍ Решение:
 

    Алгоритм:

  • В программе присутствует цикл for со счетчиком, который используется для прохода по всем элементам массива (от нулевого до 11-го).
  • В цикле находится условие, которое сравнивает текущий рассматриваемый элемент массива с нулевым элементом (n = 0):
  • if A[i] <= A[n] then
  • Если условие истинно, то выполняется сумматор, который суммирует суммирует текущие значения счетчика цикла:
  • s = s + i
  • Затем происходит обмен значений A[i] и A[n]:
  • t := A[i];
    A[i] := A[n];
    A[n] := t
  • Проследим пошагово измененение значений элементов массива и переменной s:
  • шаг цикла:
    0:   A[0]<=A[0] : 20 <= 20 - да, значит обмен: A[i=0]=20, A[n=0]=20, s = 0 + 0 = 0
    1:   A[1]<=A[0] : 19 <= 20 - да, значит обмен: A[i=1]=20, A[n=0]=19, s = 0 + 1 = 1
    2:   A[2]<=A[0] : 17 <= 19 - да, значит обмен: A[i=2]=19, A[n=0]=17, s = 1 + 2 = 3
    3:   A[3]<=A[0] : 41 <= 17 - нет
    4:   A[4]<=A[0] : 23 <= 17 - нет
    5:   A[5]<=A[0] : 12 <= 17 - да, значит обмен: A[i=5]=17, A[n=0]=12, s = 3 + 5 = 8
    6:   A[6]<=A[0] : 24 <= 12 - нет
    7:   A[7]<=A[0] : 26 <= 12 - нет
    8:   A[8]<=A[0] : 4 <= 12 - да, значит обмен: A[i=8]=12, A[n=0]=4, s = 8 + 8 = 16
    9:   A[9]<=A[0] : 13 <= 4 - нет
    10:  A[10]<=A[0] : 6 <= 4 - нет
    11:  A[11]<=A[0] : 15 <= 4 - нет
    
  • Таким образом, последнее значение переменной s = 16.

Результат: 16