ЕГЭ Информатика 2025
-
14 Системы счисления
-
1 Графы. Матрица смежности
-
Типы заданий
-
Тип 1. полное или частичное соответствие между графом и таблицей (Определите номера некоторых населенных пунктов в таблице)
-
Тип 2. Определите длину кратчайшего/длиннейшего маршрута или сумму маршрутов между пунктами, опираясь на информационную модель в виде графа или таблицы
-
-
теория
-
Граф – это геометрическая фигура, состоящая из точек, называемых вершинами, соединенных отрезками – ребрами графа.
Графы бывают ориентированными и неориентированными (их еще называют направленными и ненаправленными). Ориентированные графы – те, ребра которых имеют направление (оно указывается стрелкой). По таким ребрам можно перемещаться только в одну сторону. Неориентированные графы – те, ребра которых не имеют направления.
Число дорог, выходящих из вершины неориентированного графа, будем называть степенью вершины. Степень вершины может быть нулевой, если к этой вершине не ведут дороги, или равной натуральному числу.
Например, Вершина А – степень 4, Вершина В – степень 3.
(условие из № 63050 решу ЕГЭ) -
Ячейки, стоящие на пересечении строк и столбцов, обозначают соответствующие ребра графа
нужно определить номер нужных пунктов в таблице и посмотреть, какое число стоит в ячейке на пересечении соответствующих строки и столбца.
Также степени можно определить по таблице.
Например, Пункт П8 – степень 4, Пункт П2 – степень 3.
(условие из № 63050 решу ЕГЭ) -
Для решения №1 нужно соотнести вершины графа и пункты в таблице, а после найти ответ, соответствующий условию задачи.
-
-
решение
-
На рисунке схема дорог изображена в виде графа, в таблице содержатся сведения о длине этих дорог в километрах. Так как таблицу и схему рисовали независимо друг от друга, нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе. Известно, что дорога БИ длиннее дороги АЖ. Определите длину дороги ГЕ.(условие из № 63050 решу ЕГЭ)
Можно соотнести таблицу и граф логически, находя одинаковые степени вершин и пунктов, а после посчитать нужное расстояние согласно условию. -
Можно найти соответствия программно:
from itertools import
s1 = '3458 678 1457 1367 138 2478 2346 1256' #соответствия для каждого пункта в таблице (пункту №П1 соответствуют П2, П4, П5, П8, Пункту П2 -- П6, П7, П8, пункту и т.д.)
s2 = 'ЖГВБ АВДИ АБД АЖЕ ВБЕИ ГДИЖ АГЕИ ЖЕДБ' #соответствия для каждой вершины в графе (Вершине А соответствуют Ж, Г, В, Б, вершине Б соответствуют А, В, Д, И и т.д.)
s2 = {frozenset(x) for x in s2.split()} #замороженное множество соответствий таблицы и букв
for p in permutations('АБВГДЕЖИ'):
s3=s1
for x, y in zip('12345678', p):
s3=s3.replace(x,y)
s3 = {frozenset(x) for x in s3.split()}
if s2==s3:
print(p) #вывод всех возможных вариантов соотнести граф и таблицу.
Если соответствий несколько, нужно найти единственное правильное, опираясь на условие задачи. Найдя единственное правильное соответствие, рассчитайте расстояние согласно вопросу задачи.
-
-
-
15 Исследование логических выражений
-
16 Рекурсия
-
2 Алгебра логики. Таблица истинности
-
теория
-
Логическое высказывание – это повествовательное предложение, относительно которого можно однозначно сказать, истинно оно (0) или ложно (1).
Таблица истинности логического выражения F – это таблица, где в левой части записываются все возможные комбинации значений исходных данных, а в правой – значение выражения F для каждой комбинации. -
Основные операции и их запись на языках ппрограммирования.
-
Законы алгебры логики
-
-
решение
-
Если F=1
-
(условие из № 17320 решу егэ)
print ('w x y z')
for w in range(2): #перебор ВСЕХ переменных строго в том же порядке, как написано в print. range(2) обозначает 1 и 0.
for x in range(2):
for y in range(2):
for z in range(2):
if (ЗАПИСЬ ФУНКЦИИ ИЗ УСЛОВИЯ в виде логического выражения): #т.к. F=1, нужно прямое логическое выражение, как и В УСЛОВИИ задачи. (Например, ((x and y) or (y and z))==((x<=w) and (w<=z)), как в условии 17320)
print (w, x, y, z) #вывод всех переменных СТРОГО в том же порядке, как написано в первом print. -
Для того, чтобы ответить на вопрос задания, остаётся только соотнести подходящие значения в таблице и выводе программы, получив исходный порядок букв.
-
-
Если F=0
-
Если F=0, то используем not.
print ('w x y z')
for w in range(2): #перебор ВСЕХ переменных строго в том же порядке, как написано в print. range(2) обозначает 1 и 0.
for x in range(2):
for y in range(2):
for z in range(2):
if not(ЗАПИСЬ ФУНКЦИИ ИЗ УСЛОВИЯ в виде логического выражения): #not используется, т.к. F=0, нужно ОБРАТНОЕ логическое выражение для условия задачи. Например, if not((x and not y) or (y == z) or w):, как в условии № 18808 решу егэ). Тогда в выводе будут только те табличные значения, где F=0.
print (w, x, y, z) #вывод всех переменных СТРОГО в том же порядке, как написано в первом print. -
Для того, чтобы ответить на вопрос задания, остаётся только соотнести подходящие значения в таблице и выводе программы, получив исходный порядок букв.
-
-
Если значения F разные
-
Сначала находим табличные значения для единиц:
print ('w x y z')
for w in range(2): #перебор ВСЕХ переменных строго в том же порядке, как написано в print. range(2) обозначает 1 и 0.
for x in range(2):
for y in range(2):
for z in range(2):
if (ЗАПИСЬ ФУНКЦИИ ИЗ УСЛОВИЯ в виде логического выражения): #т.к. F=1, нужно прямое логическое выражение, как и В УСЛОВИИ задачи. (Например, if (x <= (y == w)) and (y == (w <= z)):, как в условии № 48423 решу егэ)
print (w, x, y, z) #вывод всех переменных СТРОГО в том же порядке, как написано в первом print. -
Затем находим табличные значения для нулей. Используем not.
print ('w x y z')
for w in range(2): #перебор ВСЕХ переменных строго в том же порядке, как написано в print. range(2) обозначает 1 и 0.
for x in range(2):
for y in range(2):
for z in range(2):
if not(ЗАПИСЬ ФУНКЦИИ ИЗ УСЛОВИЯ в виде логического выражения): #т.к. F=0, нужно ОБРАТНОЕ логическое выражение для условия задачи. (Например, if (x <= (y == w)) and (y == (w <= z)):, как в условии № 48423 решу егэ) Тогда в выводе будут только те табличные значения, где F=0.
print (w, x, y, z) #вывод всех переменных СТРОГО в том же порядке, как написано в первом print. -
Имея данные и для F=0, и для F=1, остаётся только соотнести подходящие значения в таблице и выводе программы, получив исходный порядок букв.
-
-
-
-
17 Линейная обработка целочисленных данных
-
3 Базы данных
-
о задании
-
В файле приведён фрагмент базы данных Предприятия, принадлежащего некой сети. База данных состоит из трёх связанных прямоугольных таблиц.
Используя информацию из приведённой базы данных, определите общую прибыль(затраты), в указанный промежуток времени предприятиями района N от продажи/покупки товара определённой категории.
В ответе запишите число в рублях.
ИЛИ
Определите количество продукта, проданного/купленного в указанный промежуток времени предприятиями района N. -
ПРИМЕР из демо 2025
-
-
решение
-
фильтрами
-
- Находим функцию фильтр
-
- В каждой таблице последовательно выбираем при помощи фильтра необходимые строки. (определяем артикул товара, покупку/продажу, дату, район магазина и т.д.)
-
- Выбираем правильные строки на одном листе
4. Складываем результат, умножаем на нужный по условию коэффициент
- Выбираем правильные строки на одном листе
-
-
с функцией ВПР
-
ВПР — функция поиска и извлечения данных в Excel, которая позволяет находить и сопоставлять значения двух разных таблиц.
Принцип работы: функция анализирует выбранную область и столбец, а когда находит нужное значение, копирует его в другую таблицу, из которой поступил запрос.
Искомое значение — столбец с нужными значениями в той таблице, куда требуется перенести данные.
Таблица — диапазон, в котором функция ищет значения, которые необходимо сопоставить с первой таблицей.
Номер столбца — порядковый номер столбца, в котором находятся искомые значения.
Интервальный просмотр — условие поиска, может быть точное совпадение данных или неточное. -
- Создаём на первом листе столбец "Товар", ячейки в котором заполняем при помощи функции ВПР, чтобы на одном листе были наименования товара в соответствии с артикулами. Например, =ВПР(D2;Товар!A:F;3;0) (демо 2025)
-
- Функцией ВПР перемещаем все необходимые данные на главный лист и применяем ФИЛЬТРЫ
-
- Создаём столбец с итоговым результатом. Формулой для всех ячеек высчитываем нужные значения в соответствии с условием.
4. Находим их сумму.
- Создаём столбец с итоговым результатом. Формулой для всех ячеек высчитываем нужные значения в соответствии с условием.
-
-
-
-
18 Электронные таблицы. Динамический подсчёт
-
4 Кодирование информации
-
решение
-
Для кодирования некоторой последовательности, состоящей из букв <...>, решили использовать неравномерный двоичный код, удовлетворяющий условию Фано.
Неравномерный двоичный код — это код, состоящий из комбинаций различной длины.
Условие Фано означает, что никакое кодовое слово не является началом другого кодового слова. Это обеспечивает возможность однозначной расшифровки закодированных сообщений. -
- Рисуем дерево, по которому определяем неизвестный код для буквы или его длину. Проверяем, что после нахождения нужного шифра все буквы из алфавита были учтены.
-
Примечание: если неизвестных букв несколько, для их шифров нужно будет оставить свободную ветку.
-
,2. В соответствии с условием находим шифр для буквы/длину слова и т.д.
-
-
-
19-21 Теория игр
-
Аналитическое решение
-
программное решение
-
-
5 Анализ числовых алгоритмов
-
о задании
-
теория для python
-
срезы
- СРЕЗЫ
В Python, кроме индексов, существуют ещё и срезы.
item[START:STOP:STEP] - берёт срез от номера START, до STOP (не включая его), с шагом STEP. По умолчанию START = 0, STOP = длине объекта, STEP = 1. Соответственно, какие-нибудь (а возможно, и все) параметры могут быть опущены
>>> a = [1, 3, 8, 7]
>>> a[:]
[1, 3, 8, 7]
>>> a[1:]
[3, 8, 7]
>>> a[:3]
[1, 3, 8]
>>> a[::2]
[1, 8]
Также все эти параметры могут быть и отрицательными:
>>>
>>> a = [1, 3, 8, 7]
>>> a[::-1]
[7, 8, 3, 1]
>>> a[:-2]
[1, 3]
>>> a[-2::-1]
[8, 3, 1]
>>> a[1:4:-1]
[]
- СРЕЗЫ
-
Функции len( ), bin( ), set( ), range( ) и др.
- bin(x)
Преобразует целое число в двоичную строку с префиксом “0b”. Результатом является допустимое выражение Python. Если x не является объектом Python int, он должен определить метод index(), который возвращает целое число.
ПРИМЕР:
>> bin(3)
'0b11'
>> bin(-10)
'-0b1010'
- bin(x)
-
-
решение
-
-
6 Циклические алгоритмы для Исполнителя
-
22 Параллельные процессы
-
7 Кодирование графики и звука
-
23 Динамический подсчёт (число программ)
-
8 Комбинаторика
-
24
-
Поиск максимальной подстроки
-
Подсчёт количества подстрок
-
-
9 Электронные таблицы. Условный оператор
-
10 Поиск в тексте
-
25 Поиск делителей
-
11 Равномерное кодирование информации
-
26 Сортировка данных
-
В таблицах
-
В программе
-
-
12 Исполнители
-
13 IP адреса. Маска сети
-
27 Кластеризация данных