Разбор 25 задания ЕГЭ 2017 по информатике из демоверсии

Разбор 25 задания ЕГЭ 2017 года по информатике из демоверсии. Это задание из второй части высокого уровня сложности. Примерное время выполнения задания 30 минут. Максимальный балл за выполнение задания – 2.

Проверяемые элементы содержания:
– умение написать короткую (10–15 строк) простую программу на языке программирования или записать алгоритм на естественном языке.

Элементы содержания, проверяемые на ЕГЭ:
– построение алгоритмов и практические вычисления.

Задание 25

Дан целочисленный массив из 40 элементов. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Опишите на естественном языке или на одном из языков программирования алгоритм, позволяющий найти и вывести количество пар элементов массива, в которых десятичная запись хотя бы одного числа оканчивается на 2. В данной задаче под парой подразумевается два подряд идущих элемента массива.
Например, для массива из пяти элементов: 16 3 142 55 22 – ответ: 3.

Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования и естественного языка. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.

Разбор 25 задания ЕГЭ 2017

В качестве ответа Вам необходимо привести фрагмент программы (или описание алгоритма на естественном языке), который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например, Free Pascal 2.6) или в виде блок-схемы. В этом случае Вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии (например, в образце, записанном на естественном языке).

Разбор 25 задания ЕГЭ 2017

На языке Паскаль
k := 0;
for i := 1 to N – 1 do
if (a[i] mod 10 = 2) or (a[i + 1] mod 10 = 2) then
inc(k);
writeln(k);

(вместо строчки inc(k) можно использовать k:=k+1)

На алгоритмическом языке
k := 0;
нц для i от 1 до N-1
если mod(a[i],10)=2 или mod(a[i+1],10)=2
то
k := k+1
все
кц
вывод k

На языке Бейсик
K = 0
FOR I = 1 TO N – 1
IF (A(I) MOD 10 = 2) OR (A(I + 1) MOD 10 = 2) THEN
K = K + 1
END IF
NEXT I
PRINT K

На языке Си
k = 0;
for (i = 0; i < N - 1; i++)
if (a[i] % 10 == 2 || a[i + 1] % 10 == 2)
k++;
printf(“%d”, k);

На языке Python
k = 0
for i in range(0, n – 1):
if (a[i] % 10 == 2 or a[i + 1] % 10 == 2):
k += 1
print(k)

На естественном языке
Записываем в переменную K начальное значение, равное 0. В цикле от первого элемента до предпоследнего находим остаток от деления текущего и следующего элементов массива на 10. Если первый или второй из полученных остатков равен 2, увеличиваем переменную K на единицу. После завершения цикла выводим значение переменной K.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

20 + тринадцать =