Второе задание по информатике егэ: Как решать задание 2 ЕГЭ по информатике

Содержание

ЕГЭ по информатике 2022 — Задание 2 (Ай да Питон!)

Продолжаем наш видеокурс по подготовке к ЕГЭ по информатике 2022. Сегодня разоблачим второе задание!

Кто незнаком с основными логическими операциями, можете посмотреть прошлогоднюю статью по заданию 2 из ЕГЭ по информатике.

В этой статье будут раскрыты методики решения 2 задания через язык программирования Питон.

Будем перебирать для каждой логической переменной все возможные варианты в программе. А логическая переменная всего два значения может принимать: 1 или 0 (истину или ложь). Таким образом, если к примеру у нас 4 переменные, мы получим 24=16 различных комбинаций.

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

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


Логическая операция Представление в Питоне
Отрицание ¬ not()
Логическое умножение ∧ and
Логическое сложение ∨ or
Следование A ⟶ B not(A) or B
Равносильность ≡ ==

Перейдём к практике решения задач задания 2 с помощью языка программирования Python.

Задача (Классическая)

Миша заполнял таблицу истинности логической функции F


(w → z) ∧ ((y → x) ≡ (z → y)),

но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.


Определите, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.

В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала буква, соответствующая первому столбцу; затем буква, соответствующая второму столбцу, и т.д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

Пример. Функция F задана выражением ¬x \/ y, зависящим от двух переменных, а фрагмент таблицы имеет следующий вид.


В этом случае первому столбцу соответствует переменная y, а второму столбцу – переменная x. В ответе следует написать: yx.

Решение:

Решать задачу будем с помощью шаблона на языке Python (Питон).



print('x y z w')
for x in range(0, 2):
    for y in range(0, 2):
        for w in range(0, 2):
            for z in range(0, 2):
                if (not(w) or z) and ((not(y) or x) == (not(z) or y)):
                    print(x, y, z, w)

В задаче у нас 4 переменные, значит, формируем 4 вложенных цикла. В каждом цикле перебираем все возможные значения для конкретной переменной. Мы перебираем значения 0 и 1.

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

Четыре вложенных цикла проверяют все возможные варианты (2

4 = 16 вариантов), и мы получим таблицу истинности, почти такую же, как нам и дали в условии задачи.

Так же вверху печатаем названия переменных, чтобы знать, какие значения каким переменным принадлежат.

Запустим программу, и на экране распечатается табличка:

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

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


Сразу видно, что первый столбец принадлежит переменной x, только там могут быть все единицы.

Второй столбец принадлежит переменной w, только там могут быть все нули.

У нас остались две пустые клеточки в самой таблице. Нам нужно где-то поставить единицу, а где-то ноль, потому что у нас остались столбцы с двумя единицами и одним нулём, а так же с двумя нулями и одной единицей. Если мы в третий столбец поставим единицу, а в четвёртый ноль, то первая строчка и вторая будут совпадать.

А в условии сказано, что строки не должны повторяться. Поэтому нужно ноль и единицу расставить наоборот.

Получается, что в третий столбец идёт z, а в четвёртый y

Ответ: xwzy

Посмотрим, как решать задачи второго задания из ЕГЭ по информатике, когда функция выдаёт нули в таблице истинности.

Задача (Классическая, закрепление)

Миша заполнял таблицу истинности функции (x ≡ ¬y) → ((x ∧ w) ≡ z), но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.


Определите, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.

В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала буква, соответствующая первому столбцу; затем буква, соответствующая второму столбцу, и т.д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

Пример. Функция F задана выражением ¬x \/ y, зависящим от двух переменных, а фрагмент таблицы имеет следующий вид.


В этом случае первому столбцу соответствует переменная y, а второму столбцу – переменная x. В ответе следует написать: yx.

Решение:

Воспользуемся программой на языке

Python.



print('x y z w')
for x in range(0, 2):
    for y in range(0, 2):
        for w in range(0, 2):
            for z in range(0, 2):
                if not( not(( x == (not(y)) )) or ((x and w) == z) ):
                    print(x, y, z, w)

От прошлой программы эта программа отличается только функцией!

В таблице видим, что функция должна выдавать ноль. Поэтому в условии мы функцию «оборачиваем» в not().

После == операцию not() мы заключили в скобки, чтобы не было синтаксической ошибки.

Получаем следующую таблицу истинности:

Разгадаем, где какая переменная находится.


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

Получается, что второй столбец достаётся переменной z.

В первом столбце должно быть две единицы. На эту роль подходит переменная y.

В нашей таблице нет строчки, где все единицы, значит, во второй строчке в пустом окошке выставляем ноль. И в этой строчке нулём обладает переменная x. Следовательно, в третьем столбце будет находится x.

А в последний столбец идёт переменная w по остаточному принципу.

Ответ: yzxw

А как Питон справится с более сложной функцией из примерного варианта ЕГЭ по информатике?

Задача (Сложная функция)
Логическая функция F задаётся выражением ((x → y ) ∧ (y → w)) ∨ (z ≡ ( x ∨ y)).
Дан частично заполненный фрагмент, содержащий неповторяющиеся строки таблицы истинности функции F. Определите, какому столбцу таблицы истинности соответствует каждая из переменных x, y, z, w.

В ответе напишите буквы x, y, z, w в том порядке, в котором идут соответствующие им столбцы (сначала — буква, соответствующая первому столбцу; затем — буква, соответствующая второму столбцу, и т. д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
Пример. Пусть задано выражение x → y, зависящее от двух переменных x и y, и фрагмент таблицы истинности:

Тогда первому столбцу соответствует переменная y, а второму столбцу соответствует переменная x. В ответе нужно написать: yx.

Источник задачи сайт решу ЕГЭ: https://inf-ege.sdamgia.ru/

Решение:

Запрограммируем функцию на языке Python.



print('x y z w')
for x in range(0, 2):
    for y in range(0, 2):
        for w in range(0, 2):
            for z in range(0, 2):
                if not( ((not(x) or y) and (not(y) or w)) or (z == (x or y)) ):
                    print(x, y, z, w)

Запустим программу и расставим переменные по своим местам.


Переменная z может быть только в третьем столбце.

Во второй столбец идёт переменная w, только этот столбец может иметь одну единицу.

Посмотрим на строчку, где у w стоит единица. В этой же строчке и у x единица. Значит, x идёт в последний столбец, а y в первый столбец.

Ответ: ywzx

Тот же шаблон работает, когда у нас во втором задании три переменные.

Задача (Три переменные)

(№ 1608) Логическая функция F задаётся выражением (¬x ∧ z) ∨ (¬x ∧ ¬y ∧ ¬z)


На рисунке приведён фрагмент таблицы истинности функции F, содержащий все наборы аргументов, при которых функция F истинна. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x, y, z.

Источник задачи сайт К. Ю. Полякова: https://kpolyakov.spb.ru/

Решение:

Для трёх переменных шаблон на Питоне отлично работает.



print('x y z')
for x in range(0, 2):
    for y in range(0, 2):
        for z in range(0, 2):
               if (not(x) and z) or (not(x) and not(y) and not(z)):
                    print(x, y, z)

Здесь и так понятно, куда какая переменная идёт.


Ответ: yxz

Посмотрим, как решать задачи из второго задания ЕГЭ по информатике, когда в таблице истинности разные значения у функции F.

Задача (Разные значения функции)

Логическая функция F задаётся выражением (¬a ∨ b ∨ ¬c) ∧ (b ∨ ¬c). Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных a, b, c.


В ответе напишите буквы a, b, c в том порядке, в котором идут соответствующие им столбцы (без разделителей).

Источник задачи сайт К. Ю. Полякова: https://kpolyakov.spb.ru/

Решение:

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



print('a b c')
for a in range(0, 2):
    for b in range(0, 2):
        for c in range(0, 2):
               if (not(a) or b or not(c)) and (b or not(c)):
                    print(a, b, c)

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

Переменная a имеет три единицы. Это второй столбец, потому что там три единицы.

Переменная b имеет четыре единицы, значит, она расположена в первом столбце.

Переменной c достаётся последний столбец.

Ответ: bac

Ещё одна интересная задача для подготовки к ЕГЭ по информатике 2022.

Задача(С подвохом)

Логическая функция F задаётся выражением a ≡ b ∨ b → c.


На рисунке приведён частично заполненный фрагмент таблицы истинности функции F, содержащий неповторяющиеся строки. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных a, b, c.

Источник задачи группа Евгения Джобса: https://vk.com/inform_web

Решение:

Подвох заключается в том, что если мы переведём бездумно функцию на язык Питон, то получится a==b or not(b) or c. Но у нас существуют приоритеты для логических операций, которые описаны в прошлогодней статье по подготовке к ЕГЭ по информатике.

В начале должно обрабатываться или, которое было изначально. Затем должно обработаться следование, а потом равносильность. А если мы переведём формулу бездумно, порядок будет не правильный.

Операцию b ∨ b можно представить, как просто b. Ведь, если b принимает значение 0, тогда будет 0 ∨ 0 = 0. Если значение будет 1, то 1 ∨ 1 = 1. Поэтому формулу можно переписать следующим образом:


a ≡ b → c

a == (not(b) or c)

В предыдущих задачах нам не приходилось думать над приоритетами, потому что везде были расставлены скобки. И в основном они уже расставлены в задачах второго задания из ЕГЭ по информатике.

Дальше решаем как обычно.



print('a b c')
for a in range(0, 2):
    for b in range(0, 2):
        for c in range(0, 2):
               if a == (not(b) or c):
                    print(a, b, c)

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


Последний столбец занимает переменная a, т.к. только в последний столбец может влезть две единицы.

В строчке, где у a ноль, так же ноль и у переменной c. Значит, во второй столбец идёт переменная c. Если мы ноль поставим в первой строчке в первом столбце, то получится первый столбец из всех нулей. А такого у нас в таблице истинности нет.

Тогда переменная b в первом столбце.

Ответ: bca


Как решить 2 задание егэ по информатике через python

ЕГЭ по информатике 2022 — Задание 2 (Ай да Питон!)

Продолжаем наш видеокурс по подготовке к ЕГЭ по информатике 2022. Сегодня разоблачим второе задание!

Кто незнаком с основными логическими операциями, можете посмотреть прошлогоднюю статью по заданию 2 из ЕГЭ по информатике.

В этой статье будут раскрыты методики решения 2 задания через язык программирования Питон.

Будем перебирать для каждой логической переменной все возможные варианты в программе. А логическая переменная всего два значения может принимать: 1 или 0 (истину или ложь). Таким образом, если к примеру у нас 4 переменные, мы получим 2 4 =16 различных комбинаций.

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

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

Логическая операция Представление в Питоне
Отрицание ¬ not()
Логическое умножение ∧ and
Логическое сложение ∨ or
Следование A ⟶ B not(A) or B
Равносильность ≡ ==

Перейдём к практике решения задач задания 2 с помощью языка программирования Python.

Миша заполнял таблицу истинности логической функции F

но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.

Определите, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.

В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала буква, соответствующая первому столбцу; затем буква, соответствующая второму столбцу, и т.д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

Пример. Функция F задана выражением ¬x \/ y, зависящим от двух переменных, а фрагмент таблицы имеет следующий вид.

В этом случае первому столбцу соответствует переменная y, а второму столбцу – переменная x. В ответе следует написать: yx.

Решать задачу будем с помощью шаблона на языке Python (Питон).

В задаче у нас 4 переменные, значит, формируем 4 вложенных цикла. В каждом цикле перебираем все возможные значения для конкретной переменной. Мы перебираем значения 0 и 1.

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

Четыре вложенных цикла проверяют все возможные варианты (2 4 = 16 вариантов), и мы получим таблицу истинности, почти такую же, как нам и дали в условии задачи.

Так же вверху печатаем названия переменных, чтобы знать, какие значения каким переменным принадлежат.

Запустим программу, и на экране распечатается табличка:

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

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

Сразу видно, что первый столбец принадлежит переменной x, только там могут быть все единицы.

Второй столбец принадлежит переменной w, только там могут быть все нули.

У нас остались две пустые клеточки в самой таблице. Нам нужно где-то поставить единицу, а где-то ноль, потому что у нас остались столбцы с двумя единицами и одним нулём, а так же с двумя нулями и одной единицей. Если мы в третий столбец поставим единицу, а в четвёртый ноль, то первая строчка и вторая будут совпадать.

А в условии сказано, что строки не должны повторяться. Поэтому нужно ноль и единицу расставить наоборот.

Получается, что в третий столбец идёт z, а в четвёртый y

Ответ: xwzy

Посмотрим, как решать задачи второго задания из ЕГЭ по информатике, когда функция выдаёт нули в таблице истинности.

Задача (Классическая, закрепление)

Миша заполнял таблицу истинности функции (x ≡ ¬y) → ((x ∧ w) ≡ z), но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.

Определите, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.

В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала буква, соответствующая первому столбцу; затем буква, соответствующая второму столбцу, и т.д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

Пример. Функция F задана выражением ¬x \/ y, зависящим от двух переменных, а фрагмент таблицы имеет следующий вид.

В этом случае первому столбцу соответствует переменная y, а второму столбцу – переменная x. В ответе следует написать: yx.

Воспользуемся программой на языке Python.

От прошлой программы эта программа отличается только функцией!

В таблице видим, что функция должна выдавать ноль. Поэтому в условии мы функцию «оборачиваем» в not().

После == операцию not() мы заключили в скобки, чтобы не было синтаксической ошибки.

Получаем следующую таблицу истинности:

Разгадаем, где какая переменная находится.

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

Получается, что второй столбец достаётся переменной z.

В первом столбце должно быть две единицы. На эту роль подходит переменная y.

В нашей таблице нет строчки, где все единицы, значит, во второй строчке в пустом окошке выставляем ноль. И в этой строчке нулём обладает переменная x. Следовательно, в третьем столбце будет находится x.

А в последний столбец идёт переменная w по остаточному принципу.

Ответ: yzxw

А как Питон справится с более сложной функцией из примерного варианта ЕГЭ по информатике?

Задача (Сложная функция)
Логическая функция F задаётся выражением ((x → y ) ∧ (y → w)) ∨ (z ≡ ( x ∨ y)).
Дан частично заполненный фрагмент, содержащий неповторяющиеся строки таблицы истинности функции F. Определите, какому столбцу таблицы истинности соответствует каждая из переменных x, y, z, w.

В ответе напишите буквы x, y, z, w в том порядке, в котором идут соответствующие им столбцы (сначала — буква, соответствующая первому столбцу; затем — буква, соответствующая второму столбцу, и т. д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
Пример. Пусть задано выражение x → y, зависящее от двух переменных x и y, и фрагмент таблицы истинности:

Тогда первому столбцу соответствует переменная y, а второму столбцу соответствует переменная x. В ответе нужно написать: yx.

Запрограммируем функцию на языке Python.

Запустим программу и расставим переменные по своим местам.

Переменная z может быть только в третьем столбце.

Во второй столбец идёт переменная w, только этот столбец может иметь одну единицу.

Посмотрим на строчку, где у w стоит единица. В этой же строчке и у x единица. Значит, x идёт в последний столбец, а y в первый столбец.

Ответ: ywzx

Тот же шаблон работает, когда у нас во втором задании три переменные.

(№ 1608) Логическая функция F задаётся выражением (¬x ∧ z) ∨ (¬x ∧ ¬y ∧ ¬z)

На рисунке приведён фрагмент таблицы истинности функции F, содержащий все наборы аргументов, при которых функция F истинна. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x, y, z.

Для трёх переменных шаблон на Питоне отлично работает.

Здесь и так понятно, куда какая переменная идёт.

Ответ: yxz

Посмотрим, как решать задачи из второго задания ЕГЭ по информатике, когда в таблице истинности разные значения у функции F.

Задача (Разные значения функции)

Логическая функция F задаётся выражением (¬a ∨ b ∨ ¬c) ∧ (b ∨ ¬c). Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных a, b, c.

В ответе напишите буквы a, b, c в том порядке, в котором идут соответствующие им столбцы (без разделителей).

Источник задачи сайт К. Ю. Полякова: https://kpolyakov. spb.ru/

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

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

Переменная a имеет три единицы. Это второй столбец, потому что там три единицы.

Переменная b имеет четыре единицы, значит, она расположена в первом столбце.

Переменной c достаётся последний столбец.

Ещё одна интересная задача для подготовки к ЕГЭ по информатике 2022.

Логическая функция F задаётся выражением a ≡ b ∨ b → c.

На рисунке приведён частично заполненный фрагмент таблицы истинности функции F, содержащий неповторяющиеся строки. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных a, b, c.

Источник задачи группа Евгения Джобса: https://vk.com/inform_web

Подвох заключается в том, что если мы переведём бездумно функцию на язык Питон, то получится a==b or not (b) or c. Но у нас существуют приоритеты для логических операций, которые описаны в прошлогодней статье по подготовке к ЕГЭ по информатике.

В начале должно обрабатываться или, которое было изначально. Затем должно обработаться следование, а потом равносильность. А если мы переведём формулу бездумно, порядок будет не правильный.

Операцию b ∨ b можно представить, как просто b. Ведь, если b принимает значение 0, тогда будет 0 ∨ 0 = 0. Если значение будет 1, то 1 ∨ 1 = 1. Поэтому формулу можно переписать следующим образом:

a ≡ b → c
a == ( not (b) or c)

В предыдущих задачах нам не приходилось думать над приоритетами, потому что везде были расставлены скобки. И в основном они уже расставлены в задачах второго задания из ЕГЭ по информатике.

Дальше решаем как обычно.

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

Последний столбец занимает переменная a, т.к. только в последний столбец может влезть две единицы.

В строчке, где у a ноль, так же ноль и у переменной c. Значит, во второй столбец идёт переменная c. Если мы ноль поставим в первой строчке в первом столбце, то получится первый столбец из всех нулей. А такого у нас в таблице истинности нет.

2 задание на Python. Информатика ЕГЭ 2021

Классный вебинар! Подскажи пожалуйста, какую программу ты используешь для рисования на экране?

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

Спасибо большое, все сразу стало понятно

Спасибо за автомизацию 2 задания))))

Спасибо огромное , самое понятное объяснение.

Посмотрел за ночь до экза, все схватил за пол-стрима. Большое спасибо!)

@BastianTM да не особо хорошо, на 60 баллов. Но этот видос помог, ибо я вообще не готовился

В английском алфавите буквы идут в порядке: w, x, y, z. Это — их привычный порядок. Некоторые люди, решая это задание, располагают буквы в очередности x, y, z, w. Это несколько странно, но можно притянуть за уши объяснение, что есть много задач с тремя переменными (x, y, z) и, когда добавляется четвертая переменная w, ее пишут последней. Но ваш порядок переменных x, y, w, z меня озадачил. Зачем такая очередность? Может, какой-то тайный смысл в этом?

Скорей всего дело привычки т.к чаще всего используются x и y, а уже потом w, a. Откуда привычка? Наверное с математики и геометрии.

Добрый день. Интересная подача информации. Помогите с разбором решения задания 2 из Полякова:(№ 3972) (В.Н. Шубинкин) Логическая функция F задаётся выражением (x → w) ∧ (y → z) ∨ w. Ниже приведён частично заполненный фрагмент таблицы истинности этой функции, содержащий неповторяющиеся строки. Сколькими способами можно поставить в соответствие переменные w, x, y, z столбцам таблицы истинности функции F, опираясь на информацию из данного фрагмента?
Пример. Функция F задана выражением x ∨ y ∨ z, а фрагмент таблицы истинности имеет вид:
В этом случае переменные можно расставить любым способом, значит, ответом будет число 6.

ЗаPython’ил ЕГЭ на сотку или почему Python поможет на ЕГЭ

Доброго времени суток каждому жителю Хабрвилля! Давненько я не писал статей! Пора это исправить!

В сегодняшней статье поговорим о насущной для многих выпускников школ теме — ЕГЭ. Да-да-да! Я знаю, что Хабр — это сообщество разработчиков, а не начинающих айтишников, но сейчас ребятам как никогда нужна поддержка именно сообщества. Ребят опять посадили на дистант. Пока не ясно на какой период, но уже сейчас можно сказать, что ЕГЭ по информатике будет на компьютерах и его можно зарешать при помощи языка Python.

Вот я и подумал, чтобы не получилось как в песне, стоит этим заняться. Я расскажу про все задачи первой части и их решения на примере демо варианта ЕГЭ за октябрь.

Всех желающих — приглашаю ниже!

Быстрый перевод из системы в систему

В Python есть интересные функции bin() , oct() и hex() . Работают данные функции очень просто:

Вывод в интерпретационном режиме

Как вы видите, выводится строка, где 0b — означает, что число далее в двоичной системе счисления, 0o — в восьмеричной, а 0x — в шестнадцатеричной. Но это стандартные системы, а есть и необычные.

Давайте посмотрим и на них:

Данная программа будет работать при переводе из десятичной системы счисления в любую до 9, так как у нас нет букв. Давайте добавим буквы:

Способ объёмен, но понятен. Теперь давайте используем тот же функцию перевода из любой системы счисления в любую:

Вызвав функцию вывода print(convert_base(156, 16, 10)) мы переведём 156 из 10 в 16 систему счисления, а введя print(convert_base(’23’, 21, 4)) переведёт 23 из 4-ичной в 21-ичную систему (ответ: B).

Задача 2

Все задания беру из первого октябрьского варианта (он же вариант № 9325894) с сайта Решу.ЕГЭ.

Решение данной задачи совсем простое: банальный перебор.

Нам вывелась вся таблица истинности (1 = True, 0 = False). Но это не очень удобно. Обратите внимание, что в задании, функция равно 0, так и давайте подправим код:

Далее — простой анализ.

Задача 5

Данная задача легко решается простой последовательностью действий в интерпретационном режиме:

Задача 6

Перепечатали и получили ответ:

Задача 12

В очередной раз, просто заменим слова на код:

Задача 14

Компьютер железный, он всё посчитает:

Задача 16

Опять же, просто дублируем программу в python:

Задача 17

Задача с файлом. Самое сложное — достать данные из файла. Но где наша не пропадала?!

Немного пояснений. Функция with() открывает файл считывает данные при помощи функции read() и закрывает файл. В остальном — задача стандартна.

Задача 19, 20 и 21

Все три задачи — задачи на рекурсию. Задачи идентичны, а вопросы разные. Итак, первая задача:

Пишем рекурсивную функцию и цикл перебора S:

Немного пояснений. В рекурсивной функции существует 3 переменные x — число камней в первой куче, y — число камней во второй куче, p — позиция. Позиция рассчитывается по таблице:

Экзамен по основам информатики AP — AP Central

Обзор экзамена

Экзамен AP по информатике оценивает понимание учащимися методов вычислительного мышления и целей обучения, изложенных в структуре курса. Экзамен AP состоит из задачи «Создать производительность» и итогового экзамена AP. Для получения дополнительной информации загрузите курс AP «Основы информатики» и описание экзамена .

Предложите своим учащимся посетить страницу учащихся AP Computer Science Principles , чтобы получить информацию об экзамене.

Даты оценки

Крайний срок подачи исполнительского задания

Это крайний срок, когда учащиеся должны выполнить все необходимые компоненты задания «Создать производительность» и представить его как окончательный вариант в цифровом портфолио AP.

Добавить в календарь

Экзамен по основам компьютерных наук AP

Добавить в календарь

Рекомендуемые вебинары

Цифровой портфель AP

На странице цифрового портфолио AP приведены инструкции о том, как перемещаться по веб-приложению и просматривать статус отправки задания учащихся «Создать производительность».

Формат экзамена

Завершающий экзамен AP Computer Science Principles содержит одинаковые типы вопросов, правила взвешивания и оценки каждый год, чтобы вы и ваши студенты знали, чего ожидать в день экзамена.

Раздел I: Экзамен с множественным выбором в конце курса
70 вопросов с несколькими вариантами ответов | 120 минут | 70% баллов | 4 варианта ответа

  • 57 одиночный выбор множественный выбор
  • 5 одиночный выбор с чтением отрывка о вычислительной инновации
  • 8 множественный выбор множественный выбор: выберите 2 ответа

Раздел II: Создание контрольного задания
30% от оценки

Учащиеся разработают компьютерную программу по своему выбору. Учащимся требуется не менее 12 часов аудиторных занятий.

Информация об оценке экзамена 2022 года

Создать — Образцы ответов

Информация о подсчете очков

Комментарий к подсчету очков

Образец A: Видео
Образец A: Письменный ответ

Образец B: Видео
Образец B: Письменный ответ

Образец C: Видео
Образец C: Письменный ответ

Образец D: Видео
Образец D: Письменный ответ

Образец E: Видео
Образец E: Письменный ответ

Образец F: Видео
Образец F: Письменный ответ

Образец G: Видео
Образец G: Письменный ответ

Образец H: Видео
Образец H: Письменный ответ

Образец I: Видео
Образец I: Письменный ответ

Образец J: Видео
Образец J: Письменный ответ

Руководство по подсчету очков

Отчет главного читателя

Распределение очков

 

Создать: Комментарий к подсчету очков

Вопросы прошлых экзаменов и информация о подсчете очков

Отчет о результатах

Что такое принципы компьютерных наук AP? Стоит ли сдавать экзамен?

Вы думаете о том, чтобы сдать курс AP Computer Science Principles, но не уверены, подходит ли он вам? Или, может быть, вы уже зачислены, но хотите получить наилучшие результаты на экзамене AP? Некоторые аспекты курса и экзамена AP Computer Science Principles сильно отличаются от других AP, и чем раньше вы узнаете, чего ожидать, тем лучше вы будете подготовлены. Вот где мы входим!

Прочтите эту статью, чтобы узнать, что охватывает курс AP Computer Science Principles, как выглядят две (очень разные) части экзамена, а также какие практические ресурсы и учебные советы помогут вам чувствовать себя уверенно задолго до экзамена.

 

Что такое принципы компьютерных наук AP? Чем он отличается от AP Computer Science A?

Что такое AP Computer Science Principles и чему вы научитесь на занятиях? Курс AP Computer Science Principles предназначен для того, чтобы дать учащимся широкий обзор вычислительной техники. На курсе студенты узнают, как использовать информатику для создания алгоритмов и программ, решающих задачи. Преподаватель выбирает язык программирования для курса. Вы можете узнать больше о курсе здесь, но вот пять основных тем курса и краткий обзор того, что вы узнаете в каждой из них:

  1. Разработка вычислительных решений: Разработка и оценка вычислительных решений для определенной цели.
  2. Алгоритмы и разработка программ: разработка и внедрение алгоритмов.
  3. Абстракции в разработке программ: разрабатывайте программы, включающие абстракции.
  4. Анализ кода: оценка и тестирование алгоритмов и программ.
  5. Вычислительные инновации: исследуйте вычислительные инновации.

Информатика A, с другой стороны, имеет более узкую направленность. В этом курсе студенты подробно изучают, как использовать язык программирования Java для решения задач. Он больше ориентирован на практическое использование компьютерного программирования, такое как решение проблем и объектно-ориентированное программирование. И курс, и экзамен требуют, чтобы студенты анализировали, писали и тестировали код.

Итоговые экзамены AP по обоим этим курсам также сильно различаются. Для AP Computer Science Principles существует задача «Создать производительность», над которой студент работает на протяжении всего курса. В день экзамена они отвечают только на набор вопросов с несколькими вариантами ответов. Мы подробно обсудим экзамен AP Comp Sci Principles в следующем разделе. Экзамен AP Computer Science A более традиционен: долгосрочный проект не включается в ваш балл AP, а только разделы с несколькими вариантами ответов и свободными ответами в день экзамена.

Итак, стоит ли брать курс AP Computer Science Principles? Два курса AP по информатике дополняют друг друга, и в целом ни один из них не лучше и не более впечатляющий. Чтобы решить, какой курс выбрать (или стоит ли проходить оба), внимательно изучите, что охватывает каждый курс, поговорите со студентами в вашей школе, которые прошли курсы, и подумайте, каковы ваши основные цели с помощью компьютера AP. курс науки. Если вас больше интересуют практические компоненты кодирования и вы определенно хотите изучать Java, AP Computer Science A может быть лучшим выбором, но если вы ищете более широкий обзор того, что могут сделать навыки в области компьютерных наук, и вы открыты для изучения любого популярного языка программирования, AP Computer Science Principles может быть лучшим вариантом.

 

Как устроен экзамен AP по основам информатики?

Сколько длится экзамен AP по информатике? Если вы привыкли к экзаменам AP, на которых вы сдаете весь тест за несколько часов, знайте, что экзамен AP Comp Sci Principles несколько отличается. Экзамен AP Computer Science Principles состоит из двух основных частей: задания на создание производительности и экзамена с несколькими вариантами ответов. Экзамен с несколькими вариантами ответов сдается, как и другие тесты AP, однако в определенном месте и в определенное время; вы будете работать над задачей «Создать» на протяжении всего курса, отправляя ее в определенный срок или до даты экзамена с несколькими вариантами ответов. Таким образом, у вас есть как личный тест, так и домашний тест для этого курса.

 

Создать задачу производительности

Для создания задачи производительности вы создадите компьютерную программу по вашему выбору. College Board рекомендует не менее 12 часов занятий в классе для завершения этого проекта. Вы отправляете письменный ответ и видео вместе с кодом, и вместе они составляют 30 % от общего балла за экзамен. Вам разрешено работать с другими одноклассниками, пока вы разрабатываете свою программу и связанный с ней код, но ваши письменные и видеоматериалы должны быть исключительно вашей собственной работой.

Совет колледжей предоставляет документ и видео о задаче «Создать» и о том, как она должна выглядеть, а ниже мы подготовили обзор трех частей, которые должны включать в себя ваше представление задачи «Создать производительность». Может быть создан с другими

  • PDF-файл
  • Должен включать:
    • Инструкции по вводу
    • Использование по крайней мере одного списка или другого типа коллекции «для представления набора данных, которые хранятся и используются для управления сложностью программы и помогают выполнить цель программы»
    • По крайней мере одна процедура, которая способствует достижению намеченной цели программы. Вы должны определить имя процедуры, тип возвращаемого значения (при необходимости) и один или несколько параметров
    • Алгоритм, который включает в себя последовательность, выбор и итерацию в теле процедуры
    • Вызовы процедуры, разработанной вашим студентом
    • Инструкции для вывода на основе ввода и функциональности программы

     

    Видео 

    • Необходимо заполнить полностью самостоятельно
    • Должен показывать работу вашей программы, а также созданные вами функции 

     

    Письменный ответ на запросы

    • Необходимо заполнить полностью самостоятельно
    • Письменные ответы на подсказки 3a-3d (общий ответ не может превышать 750 слов, не включая код)
      • 3a: Предоставьте письменный ответ, содержащий все три пункта (около 150 слов):
        • Описывает общее назначение программы
        • Описывает, какие функции программы демонстрируются в видеоролике
        • Описывает ввод и вывод программы, продемонстрированной в
        • .
        • видео
      • 3b: Захватите и вставьте два сегмента программного кода, разработанные вами во время администрирования этой задачи, которые содержат список (или другой тип коллекции), используемый для управления сложностью вашей программы. (около 200 слов)
        • Первый сегмент программного кода должен показывать, как данные были сохранены в списке.
        • Второй сегмент программного кода должен отображать данные в том же используемом списке, например создание новых данных из существующих данных или доступ к нескольким элементам в списке, как часть выполнения цели программы.
        • Напишите ответ, который идентифицирует имя списка, используемого в этом ответе, описывает, что данные, содержащиеся в списке, представляют в вашей программе, и объясняет, как выбранный список управляет сложностью вашего программного кода, объясняя, почему ваш программный код не мог быть написано, или как это было бы написано по-другому, если бы вы не использовали список.
      • 3c: Захватите и вставьте два сегмента кода программы, разработанные вами во время администрирования этой задачи, которые содержат разработанную учащимся процедуру, реализующую алгоритм, используемый в вашей программе, и вызов этой процедуры. (около 200 слов)
        • Первый сегмент программного кода должен быть процедурой, разработанной студентом, которая определяет имя процедуры и тип возвращаемого значения, содержит и использует один или несколько параметров, влияющих на функциональность процедуры, и реализует алгоритм, который включает в себя последовательность, выбор , и итерация.
        • Второй сегмент программного кода должен показывать, где в вашей программе вызывается процедура, разработанная учащимся.
        • Затем предоставьте письменный ответ, который выполняет оба следующих действия: описывает в общих чертах, что делает указанная процедура и как она влияет на общую функциональность программы, И подробно объясняет, как работает алгоритм, реализованный в указанной процедуре. Ваше объяснение должно быть достаточно подробным, чтобы кто-то другой мог его воссоздать.
      • 3d: Предоставьте письменный ответ, в котором выполняются все три условия: (около 200 слов)
        • Описывает два вызова процедуры, указанной в письменном ответе 3c. Каждый вызов должен передавать разные аргументы, которые вызывают выполнение другого сегмента кода в алгоритме.
        • Описывает, какие условия проверяются при каждом вызове процедуры.
        • Идентифицирует результат каждого вызова.

     

    Секция множественного выбора

    Вторая часть экзамена AP Computer Science Principles — секция множественного выбора. Раздел множественного выбора состоит из 70 вопросов, на каждый из которых предлагается четыре варианта ответа. Из этих вопросов 57 вопросов являются стандартными типами вопросов с одним правильным ответом, 5 также имеют один правильный ответ и основаны на отрывке для чтения, а 8 имеют два правильных ответа. У вас будет 120 минут, чтобы заполнить этот раздел, и он составляет 70% от вашего общего балла.

     

     

    Стоит ли сдавать экзамен AP по основам информатики?

    Теперь, когда вы знаете, чего ожидать от экзамена AP по основам компьютерных наук, стоит ли его сдавать? Большинство учащихся, посещающих курс AP в старшей школе, сдают соответствующий экзамен AP весной, поскольку надеются, что курс подготовил вас к сдаче экзамена. В этом отношении Принципы информатики ничем не отличаются. Если вы чувствуете, что хотя бы неплохо разбираетесь в материале курса — вам не нужно быть экспертом во всем, но вы также не должны чувствовать себя полностью потерянным во время занятий — тогда мы рекомендуем сдать экзамен.

    Одним из преимуществ AP CS Principles является то, что вы будете выполнять большую часть работы над заданием «Создать» во время урока, при этом в одной его части участвуют одноклассники. Это означает, что вы можете не торопиться и не торопиться. В день экзамена вы ответите только на серию вопросов с несколькими вариантами ответов, которые могут показаться менее пугающими, чем вопросы со свободным ответом.

    Но что, если вы еще не прошли курс AP Computer Science Principles и хотите самостоятельно подготовиться к экзамену? Это возможно? Если вы разбираетесь в компьютерах и уже хорошо разбираетесь в программировании, AP CS Principles может стать хорошим экзаменом AP для самостоятельного изучения, поскольку его вопросы более просты, чем вопросы многих других классов AP. Однако имейте в виду, что проблемы с кодированием, особенно для начинающих, может быть сложно решить самостоятельно без учителя, который поможет вам в этом процессе. Поэтому, если вы решите заняться самостоятельным обучением и сдать экзамен AP Computer Science Principles, убедитесь, что у вас есть руководство (лично или онлайн), которое поможет вам преодолеть любые трудности, с которыми вы можете столкнуться.

    Независимо от того, какой путь вы выберете, один из лучших способов оценить, насколько вы подготовлены к экзамену AP, — пройти пробные тесты, которые мы рассмотрим далее.

     

    Где проходят лучшие практические экзамены AP по основам информатики?

    Теперь вы знаете, чего ожидать от экзамена AP по основам информатики, но что еще вы можете сделать для подготовки? Ответы на практические задачи — лучший способ оценить и улучшить свои навыки, чтобы вы чувствовали себя уверенно в день экзамена.

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

    Обратите внимание, что в 2021 году раздел экзамена с бесплатными ответами значительно изменился. Раньше были задачи «Создать» и «Исследовать». Теперь есть только задача «Создать», так что имейте это в виду, просматривая старые вопросы теста. К счастью, в настоящее время в College Board есть девять примеров создания задач, включая видео и письменные ответы для каждой. Это фантастический ресурс, и вам обязательно нужно просмотреть их, чтобы узнать, как должна выглядеть ваша собственная задача «Создать». Если вы ищете дополнительные примеры вопросов и ответов для задачи «Создать», вы можете просмотреть старые вопросы AP, относящиеся к 2017 году, но помните, что с тех пор формат экзамена был изменен, в результате чего была изменена задача «Создать принципы компьютерных наук AP» и удалена задача «Производительность». задача.

    Для вопросов с несколькими вариантами ответов меньше официальных ресурсов, как в случае с большинством экзаменов AP. Официальных полноформатных разделов с множественным выбором нет. Однако в описании курса AP CS Principles, начиная со страницы 172, есть 18 практических вопросов AP Computer Science Principles с несколькими вариантами ответов, включая каждый из трех типов вопросов, которые вы увидите на экзамене. Кроме того, Академия Хана (которая сотрудничает с Советом колледжей) предлагает более 800 практических вопросов в своем бесплатном онлайн-курсе AP Computer Science Principles. Не все эти вопросы будут соответствовать реальным вопросам AP с точки зрения формата и сложности; они больше похожи на контрольные вопросы для проверки ваших знаний. Тем не менее, они по-прежнему являются хорошим способом получить дополнительную практику.

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

     

     

    3 совета для экзамена AP по основам компьютерных наук

    Получив учебные материалы, следуйте трем приведенным ниже советам, чтобы блестяще сдать оба раздела экзамена AP по основам информатики.

     

    #1 Начинайте создавать задачу заранее

    Преимущество экзамена AP по основам компьютерных наук заключается в том, что вы можете работать над одной его частью — задачей «Создать» — в свободное время. Это может быть особенно полезно для студентов, которые страдают от беспокойства перед экзаменами, испытывают трудности с управлением временем во время экзаменов или просто ценят более спокойный и менее интенсивный темп при выполнении заданий AP. Так что пользуйтесь этим преимуществом! Определенно не ждите до последней минуты, чтобы поработать над заданием AP Computer Science Principles Create — это слишком много работы, чтобы вы могли ожидать приличную оценку, если вы слишком много откладываете.

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

     

    #2: Станьте увереннее в программировании

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

    Некоторые студенты, сдающие этот курс/экзамен, уже являются экспертами в области кодирования и могут легко справиться с задачами кодирования на экзамене. Однако, даже если AP CS Principles — это ваше первое реальное знакомство с программированием, вы все равно можете сдать экзамен так же хорошо, если потратите время и силы на подготовку. В течение года продолжайте совершенствовать свои навыки кодирования, помимо домашних заданий и того, что вы делаете в классе. Исследуйте проекты по кодированию, которые вы можете реализовать (простой поиск в Google приведет вас к сотням идей), и не бойтесь работать вместе. Простого предложения от кого-то другого может быть достаточно, чтобы направить вас на правильный путь, когда вы застряли в программировании. Помощь одноклассникам в написании кода для задания AP Computer Science Principles Create — это также отличный способ развить свои навыки.

     

    #3: Следите за временем при множественном выборе

    Многие программисты теряют счет времени, когда погружаются в мельчайшие детали создания или обновления кода. Это может быть полезно для части экзамена «Создание», но если вы часто отрываетесь от своей работы AP «Принципы компьютерных наук» и задаетесь вопросом, сколько времени прошло, у вас могут возникнуть проблемы в разделе экзамена с несколькими вариантами ответов. В отличие от задачи «Создать», где вы можете работать столько, сколько хотите, при условии, что вы сдадите проект к крайнему сроку, раздел с несколькими вариантами ответов экзамена AP по принципам компьютерных наук требует значительного времени: у вас будет ровно два часа, чтобы ответить на 70 вопросов. Это дает вам около 103 секунд или чуть меньше двух минут на вопрос.

    Очевидно, что вам не нужно строго следить за временем на каждом вопросе, но если вы потеряете счет времени и потратите 10 или 15 минут на один вопрос, вы можете обнаружить, что не сможете закончить раздел вовремя и многое потеряете. баллов по вопросам, до которых вы даже не смогли добраться. Поскольку раздел множественного выбора является такой важной частью вашей оценки на этом экзамене, вы определенно хотите избежать этой ситуации.

    Хорошая подготовка и знание того, чего ожидать (путем сдачи практических экзаменов AP Computer Science Principles), помогут вам быстрее решать вопросы, потому что вы с ними знакомы, но в день экзамена мы также рекомендуем создать своего рода временная структура для себя. По крайней мере, вы должны зарегистрироваться через час (это половина экзамена). Если к этому моменту вы ответили примерно на 35 вопросов, у вас все хорошо. Если нет, вы знаете, что нужно немного ускорить темп. Кроме того, если вопрос действительно поставил вас в тупик, не бойтесь его пропустить. Вы всегда можете вернуться к нему в конце, если у вас осталось свободное время, и потеря возможности ответить на несколько вопросов не стоит (потенциально) правильного ответа на один сложный вопрос.

     

    Резюме: Экзамен AP по основам информатики

    Экзамен AP по основам информатики проверяет ваши знания широкого круга навыков и задач в области информатики. Экзамен состоит из двух основных частей: домашнего задания «Создать» (состоящего из кода, видео и письменных ответов) и набора из 70 вопросов с несколькими вариантами ответов, которые необходимо ответить в установленное время в день экзамена AP. До того, как формат сильно отличается от форматов многих других тестов AP, некоторые учащиеся опасаются сдавать AP Принципы компьютерных наук. Тем не менее, если вы сделаете изучение кода приоритетом, не отставайте от своей задачи «Создать» и следите за временем в разделе с несколькими вариантами ответов, у вас есть все шансы хорошо сдать экзамен.

     

    Что дальше?

    Нужна помощь в подаче заявления в колледж как можно лучше? Получите советы экспертов в наших руководствах по написанию эссе для колледжа и получению высоких результатов на SAT.

    Хотите узнать больше о колледжах с отличными компьютерными программами? Ознакомьтесь с нашим путеводителем по 14 лучшим ИТ-школам США!

    Хотите продемонстрировать свои навыки информатики? Прочтите нашу статью об 11 лучших соревнованиях по информатике для подростков и приступайте к практике!

     

    Нужна помощь в подготовке к экзамену AP?

    Наши индивидуальные услуги онлайн-репетиторов AP помогут вам подготовиться к экзаменам AP.

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

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