17 задание ЕГЭ информатика: как решать и какой шаблон взять
В задании № 17 нужно обработать числовую последовательность из файла: перебрать пары или тройки соседних элементов, отобрать подходящие по условию и записать в ответ несколько чисел, например количество и максимум. Решается оно короткой программой на Python или формулами в Excel. Ниже разобраны шаблон, чтение файла и ошибки, из-за которых ответ получается неверным.
Что проверяет 17 задание ЕГЭ по информатике
Задание проверяет умение написать простую программу обработки данных: прочитать числа, перебрать их по правилу из условия, посчитать нужные величины. Алгоритмы здесь несложные, поэтому ошибки обычно возникают в деталях: границы цикла, строгость неравенства, порядок чисел в ответе.
Ответ состоит из нескольких чисел: чаще всего это количество подходящих элементов и какая-то характеристика (сумма, максимум, минимум). Числа нужно записать в том порядке и формате, который указан в условии. Точный формат экзаменационного бланка и число баллов за задание смотри в спецификации и демоверсии на сайте ФИПИ (fipi.ru). Они обновляются каждый год, поэтому не опирайся на пересказы.
17 задание ЕГЭ информатика: как решать по шагам
Каждое задание этого типа решается по одной и той же схеме. Если действовать по ней, нужный код складывается из одинаковых блоков.
- Выпиши условие отбора одной строкой: что именно рассматриваем (пара, тройка, один элемент) и при каком условии он подходит.
- Определи, что нужно посчитать: количество, сумму, максимум, минимум. Обычно это две величины, и порядок в ответе задан условием.
- Прочитай все числа в список целиком, чтобы можно было обращаться к соседним элементам по индексу.
- Напиши цикл по индексам. Для пар это range(len(a) - 1), для троек range(len(a) - 2), иначе выйдешь за границу списка.
- Внутри цикла проверь условие и обнови счётчик и экстремум.
- Проверь код на коротком наборе из условия или на своём примере из 6–8 чисел, где ответ можно посчитать руками.
Пример задания из банка «Ранга»
Этот пример показывает типичную постановку: пары соседних чисел, условие про знаки и две величины в ответе. Реши его сам по шаблону выше, а потом сверь результат с ответом.
Условие. Дан набор натуральных и целых чисел (в живом экзамене он лежит в прикреплённом файле, здесь приведён прямо в условии):
70, 20, 22, 3, 46, -10, -19, 23, 95, 66, 83, 49, -45, -48, -47, 90, 43, 66, -51, 92, -34, -17, 19, 13, -41, -26, 97, -23, -18, 37, 30, 9, -57, -8, -43, -33, -1, 67, -38, -9
Рассмотри все пары соседних элементов набора (первый и второй, второй и третий и так далее). Найди количество пар, в которых ровно одно число из пары отрицательное, и максимальную сумму элементов такой пары.
В ответе запиши два числа через пробел: сначала количество пар, затем максимальную сумму.
Показать ответ и решение
- Разбор последовательности: рассматриваются пары соседних элементов. Нужны два агрегата сразу — количество подходящих пар и максимум суммы среди них.
- Заведи счётчик пар и переменную для максимума; иди по набору, беря элементы парами «текущий и следующий».
Ответ: 15 74
Шаблон на Python: код для 17 задания
Ниже каркас, который подходит для большинства вариантов. Меняется только условие внутри цикла. Строки показаны списком, отступы внутри блоков по четыре пробела.
- with open('17.txt') as f:
- a = [int(x) for x in f.read().split()]
- count = 0
- best = None
- for i in range(len(a) - 1):
- x, y = a[i], a[i + 1]
- if (x < 0) != (y < 0): # здесь твоё условие
- count += 1
- s = x + y
- if best is None or s > best:
- best = s
- print(count, best)
Как открыть файл в 17 задании
Файл с числами скачивается вместе с заданием. Положи его в ту же папку, где лежит программа, или укажи полный путь. Имя в open() должно совпадать с именем файла до символа, включая расширение.
Числа в файле могут стоять по одному в строке или через пробел. Вариант f.read().split() работает в обоих случаях, так что на нём можно не ошибиться. Если в файле есть заголовок, первую строку нужно пропустить: в условии это всегда оговорено. Чтобы убедиться, что чтение прошло верно, выведи len(a) и первые пять элементов: количество должно совпасть с тем, что указано в условии.
17 задание ЕГЭ информатика в Excel (эксель)
Если тебе удобнее электронные таблицы, задачу можно решить и там. Вставь числа в первый столбец, во втором столбце построй формулу для каждой пары, например признак «подходит / не подходит» через ЕСЛИ и И/ИЛИ. Затем используй СЧЁТЕСЛИ для количества и МАКСЕСЛИ или МАКС по отфильтрованному столбцу для экстремума.
Минус этого способа в том, что формулы приходится протягивать на весь столбец, а любая смена условия требует переписывать их заново. Программа на Python гибче, и её проще перепроверить. Поэтому Excel разумно использовать как способ независимой проверки ответа, а не как единственный.
Типичные ошибки и разбор: на чём теряют баллы
Большинство неверных ответов связано с одними и теми же причинами. Пройдись по этому списку перед тем, как записать ответ.
- Выход за границу списка: цикл до len(a) вместо len(a) - 1 при работе с парами.
- Путаешь строгое и нестрогое неравенство: «больше» и «не меньше» дают разные ответы. Ноль не отрицателен и не положителен.
- Сравниваешь строки вместо чисел, потому что забыл int(). Тогда '9' окажется больше '10'.
- Начальное значение максимума выбрано произвольно, например 0, хотя все подходящие суммы могут быть отрицательными. Надёжнее начинать с None или с первого найденного значения.
- Поменял местами числа в ответе или дописал лишние запятые, если формат требует пробел.
- Проверял код только на файле и ни разу на маленьком примере с ручным подсчётом.
Теория, ФИПИ и тренировка
Теории здесь немного: циклы, условия, списки, чтение файла, логические операции и операции с остатком от деления. Если с этим пока неуверенно, начни с общего плана подготовки по информатике и вернись к заданию позже.
Реальные формулировки смотри в демоверсиях ФИПИ и в открытом банке заданий на fipi.ru: так ты увидишь, как условие записывается на экзамене. Отрабатывать навык удобно на серии однотипных заданий с самопроверкой. Потренироваться можно в тренажёре «Ранга»: он проверяет ответ и показывает, в какой части решения была неточность.
Частые вопросы
Сколько баллов даёт 17 задание ЕГЭ по информатике?
Количество первичных баллов за каждое задание указано в спецификации экзамена на сайте ФИПИ (fipi.ru) и может меняться от года к году. Посмотри там актуальный документ. Перевод первичных баллов в тестовые смотри в таблице на странице Рособрнадзора (obrnadzor.gov.ru).
Можно ли решать 17 задание только в Excel?
Можно, если формулы построены верно и ответ получен по тому же правилу, что в условии. Но программа на Python легче адаптируется под другое условие и удобнее для проверки. Многие используют Excel как второй способ, чтобы сверить результат.
Какая теория нужна для этого задания?
Достаточно уверенно владеть чтением файла, циклами for, условиями if, логическими операциями и индексацией списков. Для некоторых вариантов пригодится остаток от деления и работа с суммой цифр или делимостью. Сложных алгоритмов не требуется.
Что делать, если мой ответ не сходится с ответом в сборнике?
Сначала проверь код на маленьком наборе, где результат можно посчитать вручную. Затем проверь границы цикла, знаки неравенств и порядок чисел в ответе. Если и это в порядке, сравни результат со вторым способом, например с формулами в Excel.
Где взять задания для тренировки?
Начни с открытого банка и демоверсий на fipi.ru, потом добавь тренировочные варианты с проверкой ответа. Важно решать задачи именно с файлами, а не только с короткими наборами из условия: так отрабатывается чтение данных.
Полезно по теме
Читать дальше
Проверить себя в тренажёре
Открывается тренировочное задание в формате ЕГЭ: условие видно сразу, краткий ответ проверяется без регистрации.
Решить задание в тренажёреМатериал — разъяснение «Ранг». Официальные правила экзамена, расписание, шкалы баллов и перечни заданий публикуют ФИПИ (fipi.ru) и Рособрнадзор (obrnadzor.gov.ru). Мы не обещаем конкретных баллов: результат зависит от твоей работы.