Решение 27 задачи ЕГЭ по информатике: как выполнить задание на 100баллов

17 апреля, 2023
  4 минут чтения

Решение 27 задачи в ЕГЭ по информатике предполагает, что ученик умеет создавать собственные программы на 20-40 строк для анализа числовых последовательностей. Для выполнения задания требуется программное обеспечение, исходные данные есть в прилагаемых файлах.

Что нужно знать?

Давайте попробуем разобраться, как делать 27 задание ЕГЭ по информатике? Для начала отметим, что этот вопрос добавлен в единый государственный экзамен для проверки умения ученика создавать собственные программы (20-40 строк) для анализа числовых последовательностей.

Также важно отметить, как оценивается 27 задание ЕГЭ по информатике. Так как это задание с повышенным уровнем сложности, максимум можно заработать 2 балла. Среднее время на выполнение этой задачи – 40 минут.

Для того, чтобы справиться с решением задания 27 ЕГЭ по информатике, необходимо уметь создавать программы на языке программирования по их описанию. Это предполагает:

  • Владение навыками и опытом разработки программы в выбранной среде программирования, включая тестирование и отладку;
  • Владение элементарными навыками формализации прикладной задачи и документирования программ.

Успешно решить 27 задание ЕГЭ может только ученик, который владеет навыками построения алгоритмов и практического вычисления. Это, в свою очередь, предполагает знание следующих областей прикладной информатики:

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

И ещё немного о том, как решать 27 задание в ЕГЭ по информатике. Для того, чтобы справиться с этой задачей, вам понадобится специализированное программное обеспечение. Кроме того, в приложении к контрольно-измерительным материалам вы найдете файлы с нужными для работы данными (их два).

Разбор задачки

Во второй части обзора мы сделаем небольшой разбор 27 задания ЕГЭ по информатике, чтобы у вас перед глазами был «живой» пример решения. Обратите внимание, что это задача прошлых лет, не входящая в демо-версию 2023 года.

Условие:

Есть набор данных, состоящий из пар положительных целых чисел. Необходимо выбрать из каждой пары ровно одно число так, чтобы сумма всех выбранных чисел не делилась на 3 и при этом была минимально возможной. Гарантируется, что искомую сумму получить можно. Программа должна напечатать одно число – это минимально возможная сумма, соответствующая условиям задачи.

Во входных данных: файлы А и В, каждый из которых содержит в первой строке количество пар N (1 ≤ N ≤ 100000). Каждая из следующих N строк содержит два натуральных числа, не превышающих 10 000.

Пример организации исходных данных во входном файле:

6

1 3

5 12

6 9

5 4

3 3

1 1

Для указанных входных данных значением искомой суммы должно быть число 20.

В ответе укажите два числа: сначала значение искомой суммы для файла А, затем для файла B.

Предупреждение: для обработки файла B не следует использовать переборный алгоритм, вычисляющий сумму для всех возможных вариантов, поскольку написанная по такому алгоритму программа будет выполняться слишком долго.

На основании данных из условия, разбор 27 вопроса из ЕГЭ по информатике начинаем так: нужно последовательно считывать данные из файла, прибавляя к сумме минимальное число в паре. Кроме того, в случаях, если получившееся в результате суммирование минимальных чисел во всех парах число будет кратно трём, достаточно будет прибавить к этой сумме минимальную разницу между какими-либо двумя числами. Для этого при считывании пар в каждой паре нужно искать не только минимальное число, но и минимальную разницу среди пар, не кратную трем.

Решение на Паскале:

var

x, y: integer;

n: integer;

sum: integer;

mindif: integer;

f: text;

begin

assign(f,’27_A.txt’);

reset(f);

readln(f, n);

sum := 0;

mindif := 20001;

while not eof(f) do begin

readln(f, x, y);

if x < y then

sum := sum + x

else

sum := sum + y;

if (abs(x — y) < mindif) and (abs(x-y) mod 3 <> 0) then mindif := abs(x-y);

end;

if sum mod 3 <> 0 then

writeln(sum)

else

writeln(sum + mindif);

end.

Ответ: при вводе данных из файла A ответ – 67088, из файла B – 200157478.

Надеемся, что после прочтения нашего обзора вам будет легче решать 27 задачку из ЕГЭ по информатике. Напоследок можем дать ещё один совет – хорошенько подготовьтесь к единому государственному экзамену!

Автор

Эльвира Ларина

Молодой педагог русского языка и литературы. Помогаю пережить дистанционное обучение учителям, студентам и ученикам.

Вам может понравиться

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

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

120!!!!1714076236.4262