Демовариант ЕГЭ по информатике 2021 года, задание 17

Демовариант ЕГЭ по информатике 2021 года, задание 17

Задача

Рассматривается множество целых чисел, принадлежащих числовому отрезку [1016; 7937], которые делятся на 3 и не делятся на 7, 17, 19, 27. Найдите количество таких чисел и максимальное из них. В ответе запишите два целых числа: сначала количество, затем максимальное число.
Для выполнения этого задания можно написать программу или воспользоваться редактором электронных таблиц.

Решение (Электронные таблицы)

Создадим пустой файл Microsoft Excel.

В ячейку A1 внесем начальное значение числового промежутка - 1016.

 ege 2021 17 1

Теперь необходимо заполнить столбец А значениями из промежутка [1016; 7937].

Это можно сделать двумя способами. Способ первый.

А ячейку A2 запишем формулу: =А1+1. Затем эту формулу скопировать ниже по столбцу А, пока в результате не появится цифра 7937.

ege 2021 17 2

ege 2021 17 3Второй способ.

Использование команды "Заполнить".

ege 2021 17 4

В ниспадающем меню необходимо выбрать команду "Прогрессия".

ege 2021 17 5

В окне ввода параметров выполнения команды необходимо указать шаг (1), направление заполнения (по столбцам) и конечное число. При этом ячнйка А1 должна быть выделена.

ege 2021 17 6 1

 В ячейку В1 вводим формулу, которая определит, делится ли число в ячейке А1 на 3: =ОСТАТ(А1;3)=0

ege 2021 17 7

Двойным щелчком по маркеру заполнения скопируем формулу на весь столбец (пока не кончатся данные в столбце A).

ege 2021 17 7 1

ege 2021 17 8

В ячейку С1 вводим формулу, которая определит, не делится ли число в ячейке А1 на 7: =ОСТАТ(А1;7)<>0. Двойным щелчком по маркеру заполнения скопируем формулу на весь столбец (пока не кончатся данные в столбце A).

2021 17 9 1

В столбцах D, E, F аналогично введем формулу, определяющую не делится ли соответствующее значение в столбце А на 17, 19 и 27.

ege 2021 17 10

В столбце G используем для того, чтобы определить, если все значения ячеек в столбцах B-F в этой строке истинны, необходимо вывести значение из ячейки А1, иначе – пустую строку.

ege 2021 17 11

В столбце G отображаются значения, которые удовлетворяют условию задачи.

Для нахождения количества значений и максимального из них в любые свободные ячейки введем формулы:

=СЧЁТ(G:G)
=МАКС(G:G)

 ege 2021 17 12

Ответ: 1568 7935

Решение (Программа, Python)

Во-первых, нет ограничения на время выполнения, по крайней мере, оно несущественно для отрезков, заданных для перебора, поэтому можно использовать простой перебор без оптимизации.

В случае произвольного отрезка [a, b], количество чисел k, удовлетворяющих определенному условию:

k=0
for n in range(a, b+1):
  if <условие>:
    k+=1

Теперь разберемся с <условием>. Числа должны деляться на 3 (остаток от деления на 3 равен нулю) и не деляться на 7, 17, 19, 27 (остаток от деления на указанные числа не равен нулю). Поскольку все эти требования предъявляются к одному числу, то их между собой необходимо объединить логической связкой И.

(n%3==0) and (n%7!=0) and (n%17!=0) and (n%19!=0) and (n%27!=0)

Т.к. мы перебираем числа из интервала, упорядоченного в порядке возрастания, то последнее число, удовлетворяющее условию и будет максимальным, в переменной max будем хранить это значение.

Таким образом, полная программа будет иметь вид:

k=0
max=0
for n in range(a, b+1):
  if (n%3=0) and (n%7<>0) and (n%17<>0) and (n%19<>0) and (n%27<>0):
    k+=1
    max=n
print(k,max)

Ответ: 1568 7935

Демонстрационный вариант 2021 года

Выберите соответствующий номер задания в демонстрационном варианте ЕГЭ 2021 года

Информация

Все изображения, размещенные на сайте, изготовлены автором самостоятельно, а также взяты в сети Интернет из тех изображений, которые находятся в свободном доступе. Поиск изображений осуществлялся посредством "Яндекс. Картинки".

Индекс цитирования

Проект при поддержке компании RU-CENTER Рейтинг@Mail.ru

Версия сайта для слабовидящих