На уроке рассматривается разбор 15 задания ЕГЭ по информатике, дается подробное объяснение того, как решать подобные задачи
Содержание:
- Объяснение задания 15 ЕГЭ по информатике
- Элементы математической логики
- Математическая логика и теория множеств
- Задания с отрезками и ДЕЛ
- Задания с поразрядной конъюнкцией
- Решение заданий 15 ЕГЭ по информатике
- Задания с множествами
- Задания с отрезками на числовой прямой
- Задания с ДЕЛ
- Задания с поразрядной конъюнкцией
- Задания на поиск наибольшего или наименьшего числа А
15-е задание: «Основные законы алгебры логики»
Уровень сложности
— повышенный,
Требуется использование специализированного программного обеспечения
— нет,
Максимальный балл
— 1,
Примерное время выполнения
— 5 минут.
Проверяемые элементы содержания: Знание основных понятий и законов математической логики
До ЕГЭ 2021 года — это было задание № 18 ЕГЭ
Типичные ошибки и рекомендации по их предотвращению:
«Важно понимать, что выражение должно быть тождественно истинно, т.е. истинно при любых допустимых значениях переменных x и у, а не только при некоторых наборах значений»
ФГБНУ «Федеральный институт педагогических измерений»
Элементы математической логики
-
Для решения 15 задания, потребуется знание таблиц истинности.
- операцию импликация можно преобразовать в операции ИЛИ и НЕ:
- операцию эквивалентность можно преобразовать:
- операцию XOR (сложение по модулю 2) можно преобразовать так:
- кроме того, могут пригодиться базовые аксиомы и формулы:
- Порядок выполнения логических операций:
- выражения в скобках,
- операции «НЕ»,
- операции «И»,
- операции «ИЛИ»,
- операции «импликация»
- операции «эквиваленция»
- последовательность из операций импликации выполняется слева направо (при этом соблюдается принцип «операции с одинаковым приоритетом выполняются слева направо»):
Для выполнения задания рекомендуется повторить следующие темы:
Преобразование логических операций:
A → B = ¬ A ∨ B
или
A → B = A + B
A ↔ B = A ⊕ B = A ∧ B ∨ A ∧ B
или
A ↔ B = A ⊕ B = A · B + A · B
A ⊕ B = (¬A ∧ B) ∨ (A ∧ ¬B)
или
A ⊕ B = (A · B) + (A · B)
Законы алгебры логики:
Закон двойного отрицания: |
¬¬ A = A |
Закон исключения третьего: |
A ∧ ¬ A = 0 или A · A = 0 |
Закон повторения (идемпотентности): |
A ∧ A = A или A · A = A |
Законы исключения логических констант: |
A ∧ 0 = 0 |
Переместительный (коммутативный) закон: |
A ∧ B = B ∧ A |
Сочетательный (ассоциативный) закон: |
(A ∧ B) ∧ C = A ∧ (B ∧ C) |
Распределительный (дистрибутивный) закон: |
(A ∧ B) ∨ C = (A ∨ C) ∧ (B ∨ C) |
Закон общей инверсии (Законы де Моргана): |
¬ (A ∧ B) = ¬ A ∨ ¬ B |
Закон исключения (склеивания): |
(A ∧ B) ∨(¬A ∧ B) = B |
Упрощать выражения можно с помощью формул: | |
Закон поглощения: |
A ∨ A ∧ B = A |
A → B → C → D = ((A → B) → C) → D
Математическая логика и теория множеств
- пересечение множеств соответствует логическому умножению, а объединение – логическому сложению;
- пересечением двух множеств называется новое множество, состоящее из элементов, принадлежащих одновременно обеим множествам:
- объединением двух множеств называется новое множество, состоящее из элементов, принадлежащих отдельно каждому из множеств (без повторений);
- пустое множество
∅
– это множество, в котором не содержится ни одного элемента; пустому множеству в теории множеств соответствует0
; - универсальное множество
U
(на кругах Эйлера обозначается в виде прямоугольника) – это множество, содержащее все возможные элементы определенного типа (например, все вещественные числа): - универсальное множество соответствует логической единице: для любого множества целых чисел
X
справедливы равенства: - разностью двух множеств
A
иB
называется новое множество, элементы которого принадлежатA
, но не принадлежатB
: - дополнение множества
X
– это разность между универсальным множествомU
и множествомX
(например, для целых чисел¬ X
– все целые числа, не входящие вX
) - пусть требуется выбрать множество
A
так, чтобы выполнялось равенствоA ∨ X = I
; в этом случае множествоA
должно включать дополнение¬ X
, то естьA ≥¬ X
(или A ⊇¬ X), то естьAmin = ¬ X
- пусть требуется выбрать множество
A
так, чтобы выполнялось равенство¬ A ∨ X = I
, в этом случае множество¬ A
должно включать дополнение¬ X
, то есть¬ A ⊇ ¬ X
; отсюдаA ⊆ X
, то естьAmax = X
Пример:
Пример:
X ∨ U = U и X ∧ U = X
Пример разности множеств:
Для большей определенности стоит рассмотреть тему круги Эйлера
Задания с отрезками и ДЕЛ
Для решения заданий необходимо знать рассмотренную тему о множествах.
Для упрощения решений можно пользоваться следующими законами.
1. Если в задании формула тождественно истинна (равна 1), и
2. после упрощения A без отрицания
то используется закон:
Amin = ¬B
где B — известная часть выражения.
1. Если в задании формула тождественно истинна (равна 1), и
2. после упрощения A с отрицанием
то используется закон:
Amax = B
где B — известная часть выражения.
1. Если в задании формула тождественно ложна (равна 0), и
2. после упрощения A без отрицания
то используется закон:
Amax = ¬B
где B — известная часть выражения.
1. Если в задании формула тождественно ложна (равна 0), и
2. после упрощения A с отрицанием
то используется закон:
Amin = B
где B — известная часть выражения.
Задания с поразрядной конъюнкцией
В задании 15 ЕГЭ встречаются задачи, связанные с поразрядной конъюнкцией.
Например:
5 & 26
означает поразрядную конъюнкцию (логическое «И») между двоичными значениями двух чисел — 5 и 26. Выполняется так:
5 = 1012 26 = 110102 0 = 000002
Задания, связанные с поразрядной конъюнкцией, решаются несколькими способами. Рассмотрим один из них.
- Обозначим:
(x & K = 0) как Zk
Zk * Zm = Zk or m
(X & 5 = 0) ∧ (X & 26 = 0)
Z5 ∧ Z26
Z5 ∧ Z26 = Z26 or 5 помним, что дизъюнкция - это операция логическое "ИЛИ" (сложение) 5 = 1012 26 = 110102 31 = 111112
Z5 ∧ Z26 = Z31
Zk + Zm = Zk and m
(X & 28 = 0) ∨ (X & 22 = 0)
Z28 ∨ Z22
Z28 ∨ Z22 = Z28 and 22 помним, что конъюнкция - это операция логическое "И" (умножение) 28 = 111002 22 = 101102 101002 = 2010
Z28 ∨ Z22 = Z20
Условие Zk → Zm истинно для любых натуральных значений x тогда и только тогда, когда все единичные биты двоичной записи числа M входят во множество единичных битов двоичной записи числа K.
- На деле, это означает, что если имеем:
X & 29 = 0 → X & 5 = 0 Истинно или Ложно?
Z29 → Z5
Z29 → Z5 = 1 (истине), тогда, когда: 29 = 111012 5 = 1012 единичные биты двоичного числа 5 входят в единичные биты двоичного числа 29 (совпадают с ними)
Z29 → Z5 = 1 (истинно)
(x & 125 = 5) то же самое, что и
Z120 * ¬Z4 * ¬Z1 = 1 (истине)
- Так, например, если в задании имеем:
X & 130 = 3
X & 130 = 3 то же самое, что и Z127 * ¬Z2 * ¬Z1 т.е. 3 = 2 + 1 : 2 = 10 1 = 01 3 = 11
Решение заданий 15 ЕГЭ по информатике
Плейлист видеоразборов задания на YouTube:
Задание демонстрационного варианта 2022 года ФИПИ
Задания с множествами
Множества:
15_16:
Элементами множества А
являются натуральные числа. Известно, что выражение
((x ∈ {1, 3, 5, 7, 9, 11}) → ¬(x ∈ {3, 6, 9, 12})) ∨ (x ∈ A)
истинно (т. е. принимает значение 1) при любом значении переменной х
.
Определите наименьшее возможное значение суммы элементов множества A
.
✍ Решение:
- Введем обозначения:
P ≡ (x ∈ {1, 3, 5, 7, 9, 11}) ; Q ≡ (x ∈ {3, 6, 9, 12}) ; A ≡ (x ∈ A).
(P → ¬Q) ∨ A = 1 Избавимся от импликации: ¬P ∨ ¬Q ∨ A = 1
А
) была непременно истинной, необходимо, чтобы известная часть была ложна:¬P ∨ ¬Q ∨ А = 1 0 1
¬P ∨ ¬Q = 0, или ¬P = 0 отсюда P = 1 ¬Q = 0 отсюда Q = 1
Q
и P
. То есть необходимо выбрать элементы, которые встречаются в обоих множествах одновременно:A = {3,9}
3 + 9 = 12
Ответ: 12
Аналитическое решение:
📹 YouTube здесь
📹 Видеорешение на RuTube здесь
Множества:
15_17:
Элементами множества А
являются натуральные числа. Известно, что выражение
(x ∈ {2, 4, 6, 8, 10, 12}) → (((x ∈ {3, 6, 9, 12, 15}) ∧ ¬(x ∈ A)) → → ¬(x ∈ {2, 4, 6, 8, 10, 12}))
истинно (т. е. принимает значение 1) при любом значении переменной х
.
Определите наименьшее возможное значение суммы элементов множества A
.
Типовые задания для тренировки
✍ Решение:
- Введем обозначения:
P≡(x ∈ {2, 4, 6, 8, 10, 12}) ; Q ≡ (x ∈ {3, 6, 9, 12, 15}) ; A ≡ (x ∈ A).
P → ((Q ∧ ¬A) → ¬P) = P → (¬(Q ∧ ¬А) ∨ ¬P) = ¬P ∨ (¬(Q ∧ ¬А) ∨ ¬P) = ¬P ∨ ¬Q ∨ А.
А
) была непременно истинной, необходимо, чтобы известная часть была ложна:¬P ∨ ¬Q ∨ А = 1 0 1
¬P ∨ ¬Q = 0, или ¬P = 0 отсюда P = 1 ¬Q = 0 отсюда Q = 1
Q
и P
. То есть необходимо выбрать элементы, которые встречаются в обоих множествах одновременно:A = {6,12}
6 + 12 = 18
Ответ: 18
Множества:
15_18: Закон распределения
Элементами множеств А
, P
, Q
являются натуральные числа, причём P = {2, 4, 6, 8, 10, 12, 14, 16, 18, 20}
, Q = {3, 6, 9, 12, 15, 18, 21, 24, 27, 30}
. Известно, что выражение
( (x ∈ A) → (x ∈ P) ) ∧ ( (x ∈ Q) → ¬(x ∈ A) )
истинно (т. е. принимает значение 1) при любом значении переменной х
.
Определите наибольшее возможное количество элементов в множестве A
.
Типовые задания для тренировки
✍ Решение:
- Введем обозначения:
P ≡ (x ∈ P); Q ≡ (x ∈ Q); A ≡ (x ∈ A).
Избавимся от импликации: (¬A ∨ P) ∧ (¬Q ∨ ¬A) = 1 Применим распределительный закон (но можно вывести самостоятельно): ¬A ∨ (P ∧ ¬Q) = 1
А
) была непременно истинной, необходимо, чтобы известная часть была ложна:¬A ∨ (P ∧ ¬Q) = 1 0 1
P ∧ ¬Q = 1, или P = 1 и ¬Q = 1 отсюда Q = 0
Q
и P
. То есть это новое множество, элементы которого принадлежат P
, но не принадлежат Q
:A = {2, 4, 8, 10, 14, 16, 20}
Ответ: 7
Множества:
15_20:
Элементами множества А являются натуральные числа. Известно, что выражение
¬(x ∈ A) →¬(x ∈ {1, 3, 7}) ∨ (¬(x ∈ {1, 2, 4, 5, 6}) ∧ (x ∈ {1, 3, 7}))
истинно (т. е. принимает значение 1) при любом значении переменной х
.
Определите наименьшее возможное количество элементов множества A.
✍ Решение:
- Введем обозначения:
P ≡ (x ∈ {1, 3, 7}); Q ≡ (x ∈ {1, 2, 4, 5, 6}); A ≡ (x ∈ A).
Избавимся от импликации: A ∨ ¬P ∨ (¬Q ∧ P) = 1 Применим закон поглощения (но можно вывести самостоятельно): A ∨ ¬P ∨ ¬Q = 1
А
) была непременно истинной, необходимо, чтобы известная часть была ложна:A ∨ ¬P ∨ ¬Q = 1 1 0
¬P ∨ ¬Q = 0, или P = 1 и Q = 1
Q
и P
:A = {1}
Ответ: 1
Задания с отрезками на числовой прямой
Отрезки на числовой прямой:
15_3:
На числовой прямой даны два отрезка: P=[44,48] и Q=[23,35].
Укажите наибольшую возможную длину отрезка А, для которого формула
((x ϵ P) → (x ϵ Q)) ∧ (x ϵ A)
тождественно ложна, то есть принимает значение 0 при любом значении переменной x.
✍ Решение:
- Упростим формулу, избавившись от ‘x ϵ‘:
(P → Q) ∧ A
правило импликации: a → b = ¬a ∨ b
(¬P ∨ Q) ∧ A
(¬P ∨ Q) ∧ A = 0
(¬P ∨ Q) ∧ A 0 ∧ 0 = 0 0 ∧ 1 = 0 1 ∧ 0 = 0 1 ∧ 1 = 1
1. (¬P ∨ Q) = 1 ∨ 0 = 1 - на данном отрезке А должно равняться 0
2. (¬P ∨ Q) = 1 ∨ 1 = 1 - на данном отрезке А должно равняться 0
3. (¬P ∨ Q) = 1 ∨ 0 = 1 - на данном отрезке А должно равняться 0
4. (¬P ∨ Q) = 0 ∨ 0 = 0 - на данном отрезке А может! равняться 1
5. (¬P ∨ Q) = 1 ∨ 0 = 1 - на данном отрезке А должно равняться 0
48 - 44 = 4
Результат: 4
✎ Решение 2 (программирование):
Внимание! этот способ подходит НЕ для всех заданий с отрезками!
Python:
1 2 3 4 5 6 7 8 9 |
def f(a1,a2,x): return((44<=x<=48)<=(23<=x<=35))and(a1<=x<=a2) maxim = 0 for a1 in range (1,200): for a2 in range (a1+1,200): if all(f(a1,a2,x)==0 for x in range (1,200)):# если все ложны if a2-a1>maxim: maxim=a2-a1 print(a1,a2, a2-a1) # сами точки отрезка и длина |
Вывод:
44 45 1
44 46 2
44 47 3
44 48 4
PascalABC.net:
Вывод:
С подробным аналитическим решением задания 15 ЕГЭ по информатике можно ознакомиться по видео:
📹 YouTube здесь
📹 Видеорешение на RuTube здесь
Отрезки на числовой прямой:
15_9:
На числовой прямой даны два отрезка: P = [10,20] и Q = [30,40].
Укажите наибольшую возможную длину отрезка A, для которого формула
((x ∈ P) → (x ∈ Q)) → ¬(x ∈ A)
тождественно истинна, то есть принимает значение 1 при любом значении переменной x.
Типовые задания для тренировки
✍ Решение:
- Упростим выражение, введя обозначения:
A: x ∈ A P: x ∈ P Q: x ∈ Q
(P → Q) → ¬A = 1
(P → Q) → ¬A = 1 => ¬(P → Q) ∨ ¬A = 1 => ¬(¬P ∨ Q) ∨ ¬A = 1
¬(¬P ∨ Q) ∨ ¬A = 1 =>
P ∧ ¬Q ∨ ¬A = 1
А = 1 P = 1 ¬Q = 1 или Q = 0
Результат: 10
Отрезки на числовой прямой:
15_10:
На числовой прямой даны два отрезка: P = [3, 20] и Q = [6, 12].
Укажите наибольшую возможную длину отрезка A, для которого формула
((x ∈ P) ~ (x ∈ Q)) → ¬(x ∈ A)
тождественно истинна, то есть принимает значение 1 при любом значении переменной x.
✍ Решение:
- Упростим выражение, введя обозначения:
A: x ∈ A P: x ∈ P Q: x ∈ Q
(P ~ Q) → ¬A = 1
(P ~ Q) → ¬A = 1 => ¬(P ~ Q) ∨ ¬A = 1
Далее возможно 2 способа решения.
✎ 1 способ:
(a ~ b) = a * b + ¬a * ¬b
¬(P ~ Q) = ¬((P ∧ Q) ∨ (¬P ∧ ¬Q)) = = ¬(P ∧ Q) ∧ ¬(¬P ∧ ¬Q)
¬(P ∧ Q) ∧ ¬(¬P ∧ ¬Q) = = ¬(P ∧ Q) ∧ (P ∨ Q)
¬(P ∧ Q) ∧ (P ∨ Q) ∨ ¬A = 1
¬(P ∧ Q) ∧ (P ∨ Q) = 1 А = 1
✎ 2 способ:
После того, как мы избавились от импликации, имеем:
¬(P ~ Q) ∨ ¬A = 1
Результат: 8
С решением задания 15 вы также можете ознакомиться, посмотрев видео (аналитическое решение):
📹 YouTube здесь
📹 Видеорешение на RuTube здесь
Отрезки на числовой прямой:
15_11:
На числовой прямой даны два отрезка: P = [11, 21] и Q = [15, 40].
Укажите наибольшую возможную длину отрезка A, для которого формула
(x ∈ A) → ¬((x ∈ P) ~ (x ∈ Q))
тождественно истинна, то есть принимает значение 1 при любом значении переменной x.
Типовые задания для тренировки
✍ Решение:
- Упростим выражение, введя обозначения:
A: x ∈ A P: x ∈ P Q: x ∈ Q
A → ¬(P ~ Q) = 1
A → ¬(P ~ Q) = 1 =>
¬A ∨ ¬(P ~ Q) = 1
Результат: 19
Задания с ДЕЛ
Поиск наибольшего А, известная часть Дел ∨ Дел = 1
15_7:
Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m».
Для какого наибольшего натурального числа А формула
(ДЕЛ(x, 40) ∨ ДЕЛ(x, 64)) → ДЕЛ(x, A)
тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?
Типовые задания для тренировки
✍ Решение:
- Введем обозначения:
A = ДЕЛ(x,A); D40 = ДЕЛ(x, 40); D64 = ДЕЛ(x, 64)
(D40 ∨ D64) → A = 1
¬(D40 ∨ D64) ∨ A = 1 или (¬D40 ∧ ¬D64) ∨ A = 1
(¬D40 ∧ ¬D64) ∨ A = 1 1 2
Т.е. (¬D40 ∧ ¬D64) должно быть = 0. Это нам ничего не дает, т.к. конъюнкция ложна в трех случаях (1*0, 0*1 и 0*0), т.е. D40 и D64 могут быть равны как 0, так и 1 (исключение составляет лишь вариант, когда оба D истинны, тогда логическое умножение 1 * 1 ≠ 0).
¬D40 ∧ ¬D64 = 0 или ¬(¬D40 ∧ ¬D64) = 1 Преобразуем по закону Де Моргана и получим: D40 ∨ D64 = 1
Далее можно решать задание либо с помощью кругов Эйлера, либо с помощью логических рассуждений.
Решение с помощью логических рассуждений:
x
, которые делятся на А
и при этом делятся на 40 ИЛИ делятся на 64:x
/A :x
/40 ∨x
/64
x = 40, 64, 80, 120, 128, 160, 192, 200, ...
A
, начиная с самого наименьшего (единицы), на которые делятся все x
без исключения:А = 1, 2, 4, 8
А
равно 8.НОД (40,64) = 8
40,64 (64 - 40 = 24)
40,24 (40 - 24 = 16)
24,16 (24 - 16 = 8)
16,8 (16 - 8 = 8)
8,8
Решение с помощью кругов Эйлера:
64 / 40 = 1 (24 остаток) 40 / 24 = 1 (16 остаток) 24 / 16 = 1 (8 остаток) 16 / 8 = 2 (0 остаток) - НОД = 8 +++ 40 / 8 = 5 64 / 8 = 8
Результат: 8
✎ Решение 2 (программирование):
Python:
1 2 3 4 5 6 |
for A in range(1,500): OK = 1 for x in range(1,1000): OK *= ((x % 40 == 0) or (x % 64 == 0))<=(x % A== 0) if OK: print( A ) |
Вывод:
1
2
4
8
PascalABC.net:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
begin for var A := 1 to 500 do begin var ok := 1; for var x := 1 to 1000 do begin if (((x mod 40 = 0) or (x mod 64 = 0)) <= (x mod A = 0)) = false then begin ok := 0; break; end; end; if (ok = 1) then print(A) end; end. |
Вывод:
1
2
4
8
Результат: 8
Поиск наименьшего А, известная часть Дел ∧ ¬Дел = 1
15_5:
Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m».
Для какого наименьшего натурального числа А формула
ДЕЛ(x, A) → (¬ДЕЛ(x, 28) ∨ ДЕЛ(x, 42))
тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?
Типовые задания для тренировки
✍ Решение:
Имеем:
ДЕЛ(x, A) → (¬ДЕЛ(x, 28) ∨ ДЕЛ(x, 42)) = 1
A = ДЕЛ(x,A); D28 = ДЕЛ(x, 28); D42 = ДЕЛ(x, 42)
A → (¬D28 ∨ D42) = 1
Избавимся от импликации:
¬A ∨ (¬D28 ∨ D42) = 1
¬A ∨ (¬D28 ∨ D42) = 1 1 2
(¬D28 ∨ D42) = 0 один случай: когда ¬D28 = 0 и D42 = 0
x
/¬A :x
/28 ∧x
/¬42
x
, которые НЕ делятся на А
и при этом делятся на 28 И НЕ делятся на 42:x = 28, 56,84, 112, 140,168, 196, 224, ...
A
, начиная с самого наименьшего (единицы), на которые НЕ делятся все x
без исключения:А = 1, 2, 3
А
равно 3.✎ Решение 2 (программирование). Язык Python, Pascal:
-
Из общего выражения:
ДЕЛ(x, A) → (¬ДЕЛ(x, 28) ∨ ДЕЛ(x, 42)) = 1
А
, необходимо рассмотреть диапазон натуральных значений x
. Если выражение будет истинным для диапазона всех рассматриваемых х
, то такое А
необходимо вывести на экран.А
(ограничим их числом 50, т.к. необходимо найти наименьшее А
), будем запускать внутренний цикл, перебирающий значения х
(х
ограничим числом 1000, будем рассматривать данный диапазон, как «любое натуральное значение переменной х»).Python:
for A in range(1,50): OK = 1 for x in range(1,1000): OK *= (x % A == 0) <= ((x % 28 != 0) or (x % 42== 0)) if OK: print( A ) break
PascalABC.net:
begin for var A := 1 to 50 do begin var ok := 1; for var x := 1 to 1000 do begin if (x mod A = 0) <= ((x mod 28 <> 0)or (x mod 42 = 0)) = false then begin ok := 0; break; end; end; if (ok = 1) then begin print(A); break; end end; end.
OK
— переменная-индикатор: если находится такое А
при котором, диапазон всех значений x
, подставленных в выражение, возвращает истинное значение выражения, то ОК
остается равным 1, т.к. используется операция умножения (до цикла ОК
необходимо присвоить единице).
Следует иметь в виду, что в программировании вместо операции импликация (->
) можно использовать нестрогое неравенство: <=
. Т.к. таблица истинности для операции импликация соответствует операции <=
:
a b F(a<=b) 0 0 1 0 1 1 1 0 0 1 1 1
А
, т.к. используется оператор break
для выхода из цикла после первого найденного значения:3
Результат: 3
15_6:
Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m».
Для какого наименьшего натурального числа А формула
(¬ДЕЛ(x, 19) ∨ ¬ДЕЛ(x, 15)) → ¬ДЕЛ(x, A)
тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?
✍ Решение:
- Введем обозначения:
A = ДЕЛ(x,A); D19 = ДЕЛ(x, 19); D15 = ДЕЛ(x, 15)
(¬D19 ∨ ¬D15) → ¬A = 1
D19 ∧ D15 ∨ ¬A = 1
¬A ∨ D19 ∧ D15 = 1 1 2
¬A ∨ D19 ∧ D15 = 1 0 ∨ 1 = 1
¬A = 0 при D19 ∧ D15 = 1 или A = 1 при D19 = 1 и D15 = 1
A = 1 D19 = 1 D15 = 1
19 * 2 = 38 (38 не делится на 15) 19 * 3 = 57 (57 не делится на 15) 19 * 4 = 76 (76 не делится на 15) 19 * 5 = 95 (95 не делится на 15) ... 19 * 10 = 190 (190 не делится на 15) 19 * 15 = 285 (285 делится на 15)
✎ Решение 2 (программирование). Язык Python:
-
Из общего выражения:
(¬ДЕЛ(x, 19) ∨ ¬ДЕЛ(x, 15)) → ¬ДЕЛ(x, A) = 1
А
, необходимо рассмотреть диапазон натуральных значений x
. Если выражение будет истинным для диапазона всех рассматриваемых х
, то такое А
необходимо вывести на экран.А
(ограничим их числом 500, т.к. необходимо найти наименьшее А
), будем запускать внутренний цикл, перебирающий значения х
(х
ограничим числом 1000, будем рассматривать данный диапазон, как «любое натуральное значение переменной х»).for A in range(1,500): OK = 1 for x in range(1,1000): OK *= ((x % 19 != 0) or (x % 15 != 0))<= (x % A!= 0) if OK: print( A )
OK
— переменная-индикатор: если находится такое А
при котором, диапазон всех значений x
, подставленных в выражение, возвращает истинное значение выражения, то ОК
остается равным 1, т.к. используется операция умножения (до цикла ОК
необходимо присвоить единице).
Следует иметь в виду, что в программировании вместо операции импликация (->
) можно использовать нестрогое неравенство: <=
. Т.к. таблица истинности для операции импликация соответствует операции <=
:
a b F(a<=b) 0 0 1 0 1 1 1 0 0 1 1 1
А
:285
Результат: 285
Задания с поразрядной конъюнкцией
Поразрядная конъюнкция:
15_1:
Обозначим через m & n поразрядную конъюнкцию неотрицательных целых чисел m и n. Так, например, 12&6 = 11002&01102 = 01002 = 4
Для какого наименьшего неотрицательного целого числа A формула
(X & A = 0) ∧ ¬(X & 35 ≠ 0 → X & 52 ≠ 0)
тождественно ложна (то есть принимает значение 0 при любом неотрицательном значении переменной X)?
✍ Решение:
Стоит заметить, что для такого типа задач, нет универсального единственного решения. Поэтому на видео, расположенном ниже, представлено два варианта решения.
✎ Способ 1:
Рассмотрим один из вариантов решения:
- Удалим из формулы X&, чтобы сократить ее запись:
(A = 0) ∧ ¬(35 ≠ 0 → 52 ≠ 0)
(A = 0) ∧ ¬(35 ≠ 0 → 52 ≠ 0)
(A = 0) ∧ ¬(35 ≠ 0 → 52 ≠ 0) 1 2
правило импликации: a → b = ¬a ∨ b
(A = 0) ∧ ¬(35 = 0 ∨ 52 ≠ 0)
т.к. в результате получается отрицание того, что 35 ≠ 0,
то убираем знак "не равно": было 35 ≠ 0, стало 35 = 0
закон де Моргана: ¬ (A ∨ B) = ¬ A ∧ ¬ B
A = 0 ∧ 35 ≠ 0 ∧ 52 = 0 = 0
0 ∧ 0 = 0 0 ∧ 1 = 0 1 ∧ 0 = 0 1 ∧ 1 = 1
(A = 0) ∧ 35 ≠ 0 ∧ 52 = 0 = 0 0 ∧ 1 = 0
35 ≠ 0 ∧ 52 = 0 = истинно (=1) если: 35 ≠ 0 = истинно (=1) и 52 = 0 = истинно (=1) так как стоит логическое умножение ∧ - смотрим выше таблицу истинности для конъюнкции
35 ≠ 0 = 1 (истина) и 52 = 0 = 1 (истина) и A = 0 = 0 (ложь)
35: 100011 (≠ 0) 52: 110100 (= 0)
52 | 1 | 1 | 0 | 1 | 0 | 0 |
---|---|---|---|---|---|---|
X | 0 | 0 | ? | 0 | ? | ? |
35 | 1 | 0 | 0 | 0 | 1 | 1 |
---|---|---|---|---|---|---|
X | 1 | ? | ? | ? | 1 | 1 |
0 0 ? 0 ? ? &
1 ? ? ? 1 1
0 0 ? 0 1 1
X | 0 | 0 | ? | 0 | 1 | 1 |
---|---|---|---|---|---|---|
A | 0 | 0 | 0 | 0 | 1 | 1 |
0000112 = 310
Ответ: 3
✎ Способ 2*:
-
Используем метод А.В. Здвижковой.
- Выполним последовательно следующие пункты:
- Произвести замену (x & K = 0) на Zk
- Выполнить преобразования по свойству импликации и закону Де Моргана.
- Стремиться прийти к выражению с конъюнкциями без отрицаний типа: Zk * Zm.
- Все выражения типа Zk * Zm преобразовать по свойству
Zk * Zm = Zk or m. - Путем преобразований прийти к импликации: Zk → Zm.
- Согласно первому пункту производим замену:
A ∧ ¬(¬Z35 → ¬Z52) = 0
¬(A ∧ ¬(¬Z35 → ¬Z52)) = 1
¬A ∨ (¬Z35 → ¬Z52) = 1
¬A ∨ (Z35 ∨ ¬Z52) = 1
¬A ∨ ¬Z52 ∨ Z35 = 1
¬(A ∧ Z52) ∨ Z35 = 1
(A ∧ Z52) → Z35 = 1
ZA ∨ 52 → Z35 = 1
Условие Zk → Zm истинно для любых натуральных значений x тогда и только тогда, когда все единичные биты двоичной записи числа M входят во множество единичных битов двоичной записи числа K.
A = ??0?11 52 = 110100 A or 52 = 110111 35 = 100011
Аmin = 112 = 310
Результат: 3
Детальный разбор данного задания 15 ЕГЭ по информатике предлагаем посмотреть на видео:
Вариант решения №1 (универсальный, теоретический):
📹 YouTube здесь
📹 Видеорешение на RuTube здесь
Вариант решения №2 (не универсальный, но простой):
📹 YouTube здесь
Поразрядная конъюнкция:
15_2:
Обозначим через m & n поразрядную конъюнкцию неотрицательных целых чисел m и n. Так, например, 12&6 = 11002&01102 = 01002 = 4
Для какого наибольшего неотрицательного целого числа A формула
X & A ≠ 0 → (X & 36 = 0 → X & 6 ≠ 0)
тождественно истинна (то есть принимает значение 1 при любом неотрицательном значении переменной X)?
✍ Решение:
-
✎ Способ 1:
- Произведем замену:
z36 = (x&36 = 0), z6 = (x&6 = 0), A = (x&A = 0)
¬A → (z36 → ¬ z6)
¬A → (z36 → ¬ z6) = A + ¬z36 + ¬z6
A + ¬z36 + ¬z6 = A + ¬(z36 * z6)
A + ¬(z36 * z6) = ¬(z36 * z6) + A = (z36 * z6) → A
z36 * z6 = z36 or 6
1001002 -> 36 1102 -> 6 100100 110 1001102 -> 36 or 6 = 3810
z38 → A
A = 1001102 = 3810
✎ Способ 2:
x&A ≠ 0 → (x&36 = 0 → x&6 ≠ 0) = 1
A = (x&A = 0); P = (x&36 = 0); Q = (x&6 = 0);
¬A → (P → ¬Q) = 1
A ∨ (¬P ∨ ¬Q) = 1
¬P ∨ ¬Q
нам необходимо подобрать такой вариант (равный 0 или 1), при котором единственно возможным значением A была бы единица (1). A ∨ (¬P ∨ ¬Q) = 1;
или
1 ∨ (0) = 1
¬P ∨ ¬Q = 0 Отсюда имеем: ¬P = 0 и ¬Q = 0 (дизъюнкция равна 0 в единственном случае, когда все операнды равны 0)
Q = 1 и P = 1
100100 : 36 000110 : 6 0**0** : маска P (x&36 = 0) ***00* : маска Q (x&6 = 0)
0**0** : маска P (x&36 = 0) ***00* : маска Q (x&6 = 0) 0**00* : общая маска x *00**0 : маска для A (x&A = 0) т.е. в тех битах А, где может получиться единица (звездочки в обеих масках),
мы поставили нули.
100110 = 3810
Результат: 38
Подробное решение данного задания 15 ЕГЭ по информатике предлагаем посмотреть в видео уроке:
Способ 1:
📹 YouTube здесь
📹 Видеорешение на RuTube здесь
Способ 2:
📹 YouTube здесь
📹 Видеорешение на RuTube здесь
Поразрядная конъюнкция:
15_8:
Определите наименьшее натуральное число А из интервала [43, 55], такое, что выражение
((x & 17 ≠ 0) → ((x & A ≠ 0) → (x & 58 ≠ 0))) → → ((x & 8 = 0) ∧ (x & A ≠ 0) ∧ (x & 58 = 0))
тождественно ложно (то есть принимает значение 0 при любом натуральном значении переменной х)?
Типовые задания для тренировки
✍ Решение:
-
Кратко изложенное решение *:
- Введем обозначения:
(¬Z17 → (¬A → ¬Z58)) → (z8 ∧ ¬A ∧ Z58) = 0
¬(((¬Z17 → (¬A → ¬Z58)) → (z8 ∧ ¬A ∧ Z58)) = 1
Z8 ∧ Z58 = Z8 or 58 : 8 = 1000 or 58 = 111010 111010 = 58
Z8 ∧ Z58 = Z58
¬(¬(Z17 ∨ A ∨ ¬Z58) ∨ (¬A ∧ Z58)) = 1
(Z17 ∨ A ∨ ¬Z58) ∧ ¬(¬A ∧ Z58)) = 1
(Z17 ∨ A ∨ ¬Z58) ∧ (A ∨ ¬Z58) = 1
A ∨ ¬Z58 = 1
¬Z58 ∨ A => Z58 → A = 1
43 = 101011 - не подходит! 58 = 111010 44 = 101100 - не подходит! 58 = 111010 45 = 101101 - не подходит! 58 = 111010 46 = 101110 - не подходит! 58 = 111010 47 = 101111 - не подходит! 58 = 111010 48 = 110000 - подходит! 58 = 111010
Результат: 48
Поразрядная конъюнкция:
15_15:
Определите набольшее натуральное число A, такое что выражение
((x & 26 = 0) ∨ (x & 13 = 0)) → ((x & 78 ≠ 0) → (x & A = 0))
тождественно истинно (то есть принимает значение 1 при любом натуральном значении переменной х)?
Типовые задания для тренировки:
✍ Решение:
- Для упрощения восприятия введем обозначения:
z26 = (x & 26 = 0) z13 = (x & 13 = 0) z78 = (x & 78 = 0) A = (x & A = 0)
(z26 ∨ z13) → (¬z78 → A) = 1
(z26 ∨ z13) → (z78 ∨ A) = 1
26 : 11010 единичные биты: 4, 3, 1 13 : 1101 единичные биты: 3, 2, 0 ∧ =------------------------ 01000 = 810
z8 → (z78 ∨ A) z78: не влияет на решение, так как операция дизъюнкция истинна тогда, когда хотя бы один операнд истинен z8 → A : ????
Наибольшее А = 1000 = 810
Результат: 8
Задания на поиск наибольшего или наименьшего числа А
Поиск наибольшего или наименьшего числа А:
15_4: 15 задание. Демоверсия ЕГЭ 2018 информатика:
Для какого наибольшего целого числа А формула
тождественно истинна, то есть принимает значение 1 при любых целых неотрицательных x и y?
✍ Решение:
✎ Способ 1 (программный):
Важно: Поскольку используется метод полного перебора, то возможна ситуация, когда транслятор будет работать слишком медленно. Но работоспособность представленного алгоритма проверена на онлайн компиляторах.
Pascalabc.net:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
begin for var A := 200 downto -100 do begin var OK := 1; for var x := 0 to 100 do for var y := 0 to 100 do if ((x <= 9) <= (x * x <= A)) and ((y * y <= A) <= (y <= 9)) = false then begin OK := 0; break; end; if OK = 1 then begin print(A); break end; end; end. |
Бейсик: |
Python:
for A in range(200,-100,-1): OK = 1 for x in range(0,100): for y in range(0,100): OK *= ((x<=9) <= (x*x<=A)) and((y*y<=A) <= (y<=9)) if OK: print(A) break |
С++: |
✎ Способ 2 (теоретическое решение):
- Условно разделим исходное выражение на части:
- Главное действие (внешняя операция) в исходном выражении — это конъюнкция. Конъюнкция истинна, когда все операнды истинны. Т.е. в задаче обе части
1
и2
должны быть истинными (т.к. по условию общая формула должна быть истинной).
-
Рассмотрим часть
- если в
1.1
имеем x > 9, то часть1
будет истинна независимо от А. Значит, значение числа А влияет на решение только при выполнении условия: - теперь, для того чтобы в части
1
, выражение было истинным, надо чтобы часть1.2
была истинной: - таким образом, получаем:
1
:
x<=9
(импликация 0 → 0 = 1, 0 → 1 = 1)
x*x <= A
(импликация 1 → 1 = 1)
x <= 9 x2 <= A при любых x
возьмем максимальное натуральное: x=9, тогда A>=81
Рассмотрим часть 2
:
2.2
истинно (т.е. y <= 9), то часть 2
будет истинна независимо от А. Значит, значение числа А влияет на решение только при выполнении условия:y > 9
2
выражение было истинным, надо чтобы часть 2.1
была ложной:y * y > A
(импликация 0 → 0 = 1)
y > 9 y2 > A при любых y
возьмем наименьшее возможное по условию натуральное: y = 10, тогда A < 100
Результат: 99
Подробное решение 15 задания демоверсии ЕГЭ 2018 года смотрите на видео (аналитическое решение):
📹 YouTube здесь
📹 Видеорешение на RuTube здесь
Поиск наибольшего или наименьшего числа А:
✍ Решение:
✎ Способ 1 (программный):
Важно: Поскольку используется метод полного перебора, то возможна ситуация, когда транслятор будет работать слишком медленно. Но работоспособность представленного алгоритма проверена на онлайн компиляторах.
Pascalabc.net:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
begin for var A := -100 to 200 do begin var OK := 1; for var x := 1 to 100 do for var y := 1 to 100 do if ((y+3*x<A) or (x >20)or(y>40)) = false then begin OK := 0; break; end; if OK = 1 then begin print(A); break end; end; end. |
Бейсик: |
Python:
for A in range(-100,200): OK = 1 for x in range(1,100): for y in range(1,100): OK *= (y+3*x<A) or (x > 20) or (y > 40) if OK: print(A) break |
С++: |
✎ Способ 2 (теоретическое решение):
- Определим основные части выражения, выделив отдельно неизвестную часть — с А, и, так сказать, известную часть, то есть остальную.
1 2 (y+3x < A) ∨ (x > 20) ∨ (y > 40)
(y+3x < A) ∨ (x > 20) ∨ (y > 40) 1 или 0? 1 = 1 Не подходит!
1. (y+3x < A) = 1 2. (x > 20) ∨ (y > 40) = 0
x <= 20 y <= 40
А > 3x + y A > 3*20 + 40 A > 100
Результат: 101
Подробное решение досрочного ЕГЭ 2018 года смотрите на видео (аналитическое решение):
📹 YouTube здесь
📹 Видеорешение на RuTube здесь
Поиск наибольшего или наименьшего числа А:
15_0:Разбор 15 задания. Демоверсия егэ по информатике 2019:
Для какого наибольшего целого неотрицательного числа А выражение
(48 ≠ y + 2x) ∨ (A < x) ∨ (A < y)
тождественно истинно, т.е. принимает значение 1 при любых целых неотрицательных x и y?
✍ Решение:
✎ Решение 1 (теоретическое):
- Разделим общее выражение на две части. Выделим неизвестную часть красным:
(48 ≠ y + 2x) ∨ (A < x) ∨ (A < y)
(48 ≠ y + 2x) ∨ (A < x) ∨ (A < y) = 1
0 1
y + 2x = 48 : при x = 0, y = 48 при y = 0, 2x = 48 => x = 24
x + 2x = 48 => 3x = 48 x = 16
✎ Решение 2 (программное):
Python:
1 2 3 4 5 6 7 8 |
for A in range(200,0,-1): OK = 1 for x in range(0,100): for y in range(0,100): OK *= (48!=y+2*x) or(A<x)or (A<y) if OK: print(A) break |
Результат: 15
Видео решения 15 задания демоверсии ЕГЭ 2019 (аналитическое решение):
📹 YouTube здесь
📹 Видеорешение на RuTube здесь
Поиск наибольшего или наименьшего числа А:
15_19:
Для какого наименьшего целого числа А формула
(y + 5x <= 34) → ((y — x > 4) ∨ (y <= A))
тождественно истинна, т.е. принимает значение 1 при любых целых неотрицательных x и y?
✍ Решение:
- Общая идея такова:
необходимо упростить формулу так, чтобы последняя операция (внешняя) выполнялась со скобкой, в которой находится искомое A. После чего разделить формулу на две части, в одной из которых находится искомое. - Избавимся от импликации, это даст нам возможность опустить общие скобки во второй части формулы:
¬(y + 5x <= 34) ∨ (y - x > 4) ∨ (y <= A)
¬(y + 5x <= 34) ∨ (y - x > 4) ∨ (y <= A) = 1 1 часть 2 часть
¬(y + 5x <= 34) ∨ (y - x > 4) ∨ (y <= A) = 1 1 часть = 0 2 часть = 1
y + 5x > 34 = 0, значит: 1. y + 5x <= 34 y - x > 4 = 0, значит: 2. y - x <= 4
y <= A или A >= y
34 - 5x = 4 + x 30 = 6x x = 5 Найдем y: y = 4 + 5 = 9
y = 9:
A >= 9 => наименьшее A = 9
✎ Решение 2 (программное):
Python:
1 2 3 4 5 6 7 8 |
for A in range(-100,100): OK = 1 for x in range(0,100): for y in range(0,100): OK *= (y+5*x<=34)<=((y-x >4)or(y<=A)) if OK: print( A ) break |
PascalABC.NET:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
begin for var A := -100 to 100 do begin var OK := true; for var x := 0 to 100 do begin for var y := 0 to 100 do begin OK := (y + 5 * x <= 34) <= ((y - x > 4) or (y <= A)); if OK = false then break; end; if OK = false then break; end; if OK then begin print(A); break; end; end; end. |
Результат: 9
Поиск наибольшего или наименьшего числа А:
15_13:
Укажите наименьшее целое значение А при котором выражение
(2y + 5x < A) ∨ (2x + 4y > 100) ∨ (3x – 2y > 70)
истинно для любых целых положительных значений x и y.
Типовые задания для тренировки
✍ Решение:
-
✎ Решение (программное):
Python:
1 2 3 4 5 6 7 8 |
for A in range(-200,200): OK = 1 for x in range(1,100): for y in range(1,100): OK *= (2*y + 5*x < A) or (2*x + 4*y > 100) or (3*x - 2*y > 70) if OK: print( A ) break |
PascalABC.NET:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
begin for var A := -200 to 200 do begin var OK := true; for var x := 1 to 100 do begin for var y := 1 to 100 do begin OK := (2*y + 5*x < A) or (2*x + 4*y > 100) or (3*x - 2*y > 70); if OK = false then break; end; if OK = false then break; end; if OK then begin print(A); break; end; end; end. |
Результат: 171
Видео разбора задания смотрите на видео (аналитическое решение):
📹 YouTube здесь
📹 Видеорешение на RuTube здесь
Поиск наибольшего или наименьшего числа А:
15_14:
Укажите наибольшее целое значение А при котором выражение
(3y – x > A) ∨ (2x + 3y < 30) ∨ (2y – x < –31)
истинно для любых целых положительных значений x и y.
Типовые задания для тренировки
✍ Решение:
-
✎ Решение 1 (теоретическое):
- Разделим выражение на две части: часть с неизвестным = 1, часть известная = 0:
(3y – x > A) ∨ (2x + 3y < 30) ∨ (2y – x < –31) = 1
(1) (2x + 3y) >= 30, y >= (30 - 2x) / 3 x = (30 - 3y) /2
(2) (2y – x >=–31) y >= (x - 31) / 2 x = 2y + 31
(1) x | y 0 | 10 15| 0
(2) x | y 0 | -15 ( целые) 30|0
A<3y-x
:A < 3y – x
, то будем перемещать А
снизу вверх. Наибольшее значение А
будет достигнуто в указанной точке пересечения с прямой (2)
.если y = 1, то x = 2*1 + 31 = 33
А < 3y - x A < 3-33, A < -30, A=-31
✎ Решение (программное):
Python:
1 2 3 4 5 6 7 8 |
for A in range(200,-200,-1): OK = 1 for x in range(1,100): for y in range(1,100): OK *= (3*y-x>A) or (2*x+3*y<30) or (2*y-x<-31) if OK: print(A) break |
Результат: -31
* В некоторых задачах использован метод, предложенный А.В. Здвижковой
Всего: 191 1–20 | 21–40 | 41–60 | 61–80 …
Добавить в вариант
Обозначим через m&n поразрядную конъюнкцию неотрицательных целых чисел m и n.
Так, например, 14&5 = 11102&01012 = 01002 = 4.
Для какого наибольшего целого числа А формула
x&51 = 0 ∨ (x&41 = 0 → x&А = 0)
тождественно истинна (т. е. принимает значение 1 при любом неотрицательном целом значении переменной x)?
Обозначим через m&n поразрядную конъюнкцию неотрицательных целых чисел m и n.
Так, например, 14&5 = 11102&01012 = 01002 = 4.
Для какого наименьшего неотрицательного целого числа А формула
x&51 = 0 ∨ (x&41 = 0 → x&А = 0)
тождественно истинна (т. е. принимает значение 1 при любом неотрицательном целом значении переменной x)?
На числовой прямой даны два отрезка: P = [17, 46] и Q = [22, 57]. Отрезок A таков, что приведённая ниже формула истинна при любом значении переменной х:
¬(x ∈ A) →(((x ∈ P) ⋀ (x ∈ Q)) → (x ∈ A))
Какова наименьшая возможная длина отрезка A?
На числовой прямой даны два отрезка: Р = [30, 45] и Q = [40, 55]. Какова наименьшая возможная длина интервала A, что обе приведённые ниже формулы истинны при любом значении переменной х:
( ¬(x ∈ A) → (¬(x ∈ P)) )
((x ∈ Q)→ (x ∈ A))
На числовой прямой даны два отрезка: Р = [3, 38] и Q = [21, 57]. Какова наибольшая возможная длина интервала A, что логическое выражение
((х ∈ Q) → (х ∈ Р)) → ¬(х ∈ A)
тождественно истинно, то есть принимает значение 1 при любом значении переменной х.
На числовой прямой даны два отрезка: P = [1, 39] и Q = [23, 58]. Какова наибольшая возможная длина интервала A, что логическое выражение
((x ∈ P) → ¬(x ∈ Q)) → ¬(x ∈ А)
тождественно истинно, то есть принимает значение 1 при любом значении переменной х.
На числовой прямой даны два отрезка: D = [17; 58] и C = [29; 80]. Укажите наименьшую возможную длину такого отрезка A, для которого логическое выражение
(x ∈ D) → ((¬(x ∈ C)∧ ¬(x ∈ A)) → ¬(x ∈ D))
истинно (т. е. принимает значение 1) при любом значении переменной х.
Источник: Демонстрационная версия ЕГЭ−2022 по информатике
На числовой прямой даны два отрезка: P = [4, 15] и Q = [12, 20].
Укажите наименьшую возможную длину отрезка A, для которого выражение
((x ∈ P) ∧ (x ∈ Q)) → (x ∈ A)
тождественно истинно, то есть принимает значение 1 при любом значении переменной х.
На числовой прямой даны два отрезка: P = [20, 50] и Q = [30,65]. Отрезок A таков, что формул
¬(x ∈ A) → ((x ∈ P) →¬ (x ∈ Q))
истинна при любом значении переменной x. Какова наименьшая возможная длина отрезка A?
Источник: ЕГЭ по информатике 23.03.2016. Досрочная волна
На числовой прямой задан отрезок A. Известно, что формула
((x ∈ A) → (x2 ≤ 100)) ∧ ((x2 ≤ 64) → (x ∈ A))
тождественно истинна при любом вещественном x. Какую наименьшую длину может иметь отрезок A?
На числовой прямой даны два отрезка: P = [2, 10] и Q = [6, 14]. Какова наибольшая возможная длина интервала A, что формула
( (x ∈ А) → (x ∈ P) ) ∨ (x ∈ Q)
тождественно истинна, то есть принимает значение 1 при любом значении переменной х.
На числовой прямой даны три отрезка: P = [10, 40], Q = [5, 15] и R = [35, 50]. Какова наименьшая возможная длина промежутка A, что формула
( (x ∈ А) ∨ (x ∈ P) ) ∨ ((x ∈ Q)→ (x ∈ R))
тождественно истинна, то есть принимает значение 1 при любом значении переменной х.
На числовой прямой даны два отрезка: P = [12, 62] и Q = [32, 92].
Какова наименьшая возможная длина интервала A, что формула
(¬(x ∈ А) ∧ (x ∈ Q)) → (x ∈ P)
тождественно истинна, т. е. принимает значение 1 при любом значении переменной х.
На числовой прямой даны два отрезка: P = [8, 39] и Q = [23, 58].
Какова наименьшая возможная длина интервала A, при которой выражение
((x ∈ P) ∨ (x ∈ А)) → ((x ∈ Q) ∨ (x ∈ А))
тождественно истинно, то есть принимает значение 1 при любом значении переменной х.
На числовой прямой даны два отрезка: P = [17, 54] и Q = [37, 83]. Какова наименьшая возможная длина интервала A, что формула
(x ∈ P) → (((x ∈ Q) ∧ ¬(x ∈ A)) → ¬(x ∈ P))
тождественно истинна, то есть принимает значение 1 при любом значении переменной х.
Источник: ЕГЭ по информатике 2021. Досрочная волна
Элементами множества А являются натуральные числа. Известно, что выражение
(x ∈ {2, 4, 6, 8, 10, 12}) → (((x ∈ {3, 6, 9, 12, 15}) ∧ ¬(x ∈ A)) → ¬(x ∈ {2, 4, 6, 8, 10, 12}))
истинно (т. е. принимает значение 1) при любом значении переменной х. Определите наименьшее возможное значение суммы элементов множества A.
Элементами множества А являются натуральные числа. Известно, что выражение
(x ∈ {2, 4, 6, 8, 10, 12}) → (((x ∈ {4, 8, 12, 16}) ∧ ¬(x ∈ A)) → ¬(x ∈ {2, 4, 6, 8, 10, 12}))
истинно (т. е. принимает значение 1) при любом значении переменной х. Определите наименьшее возможное значение суммы элементов множества A.
На числовой прямой даны два отрезка: Р = [22, 72] и Q = [42, 102]. Какова наименьшая возможная длина интервала A, что логическое выражение
¬(¬(х ∈ А) ∧ (х ∈ Р)) ∨ (х ∈ Q)
тождественно истинно, то есть принимает значение 1 при любом значении переменной х.
На числовой прямой даны два отрезка: Р = [12, 62] и Q = [52, 92]. Какова наименьшая возможная длина интервала A, что логическое выражение
¬(¬(х ∈ А) ∧ (х ∈ Р)) ∨ (х ∈ Q)
тождественно истинно, то есть принимает значение 1 при любом значении переменной х.
На числовой прямой даны два отрезка: P = [3, 13] и Q = [12, 22]. Какова наибольшая возможная длина интервала A, что формула
((х ∈ A) → (х ∈ Р)) ∨ (х ∈ Q)
тождественно истинна, то есть принимает значение 1 при любом значении переменной х.
Всего: 191 1–20 | 21–40 | 41–60 | 61–80 …
По теме: методические разработки, презентации и конспекты
Основные понятия алгебры логики, логические выражения и логические операции
Основные понятия алгебры логики, логические выражения и логические операции…
Методическая разработка занятия по теме «Основные понятия алгебры логики. Логические выражения и логические операции».
Цель: ознакомление с основными понятиями алгебры логики.Задачи:Образовательные: познакомить с основными понятиями темы: логическое высказывание, логические операции;научить составлять таблицу истиннос…
презентация «Алгебра логики. Основные понятия алгебры логики»
Можно использовать как дополнение к уроку «Алгебра логики»…
Основные понятия алгебры логики. Логические выражения и логические операции
конспект урока…
«Основные понятия алгебры логики. Логические выражения и логические операции»
«Основные понятия алгебры логики. Логические выражения и логические операции»…
Методическая разработка по информатике «Разбор заданий первой части экзамена по информатике в рамках подготовки к ОГЭ»
Представленный методический материал соответствует требованиям Федерального государственного образовательного стандарта основного общего образования. Данная разработка подготовлена с учётом содержания…
Подготовка к ЕГЭ по информатике. Разбор задания 25 Обработка целых чисел. Проверка делимости.
Материал представлен в виде презентации. Основная цель — научить создавать программы для обработки целочисленной информации, нахождения делителей и обработки простых чисел. Рассмотрены разные типы зад…
За это задание ты можешь получить 1 балл. На решение дается около 3 минут. Уровень сложности: повышенный.
Средний процент выполнения: 32.2%
Ответом к заданию 18 по информатике может быть цифра (число) или слово.
Теория к 18 заданию: читать
Разбор сложных заданий в тг-канале
Задачи для практики
Задача 1
Квадрат разлинован на N*N клеток (1 < N <= 30). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. На поле могут быть стенки. При врезании в стенку робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата указана сумма монeт, которые может получить робот или которую роботу нужно отдать, от -100 до 100. Посетив клетку, Робот забирает или оставляет указанную сумму монет; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную денежную сумму, если робот может идти по любым клеткам, и максимальную сумму, если робот не может идти по клеткам с отрицательным значениям, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите разность между этими двумя числами.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382 и 203. Тогда в ответе будет 179
Решение
Откроем файл электронной таблицы. Создайте новый лист и скопируйте в него таблицу.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке A2 новой таблицы мы запишем формулу: =A1+Лист1!A2 и скопируем её вниз до конца заполненной таблицы. В ячейке В1 запишем формулу =A1+Лист1!B1 и растянем до конца строки. Это нужно для подсчёта максимального значения если робот будет идти только по крайним полям.
В ячейке В2 запишем формулу =МАКС(A2;B1)+Лист1!B2, чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Растягиваем формулу на всю таблицу.
Скопируйте данный, где искали максимум, на новый лист.
На поле у нас есть отрицательные значения. Робот не может ходить по таким полям.
Изменим нашу формулу и добавим в неё условие, что если в поле отрицательное значение, то результат будет сильно маленьким (намного меньше -100) =МАКС(B1;A2)+ЕСЛИ(Лист1!B2>0;Лист1!B2;-10000000000) и растяните её на всё пространство вдоль стенки. В таком случае мы получим, что проход через эту клетку приведёт к отрицательному ответу. Поэтому мы не будем его учитывать.
Аналогично изменим и граничные значения. Для B1 запишем: =A1+ЕСЛИ(Лист1!B1>0;Лист1!B1;-10000000000), а для A2 запишем: =A1+ЕСЛИ(Лист1!A2>0;Лист1!A2;-10000000000)
Ответ получите в ячейке T20
Найдите разность между первым и вторым числом и запишите ёё в ответе.
Ответ: 233
Задача 2
Квадрат разлинован на N*N клеток (1 < N <= 30). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. На поле могут быть стенки. При врезании в стенку робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата указана сумма монeт, которые может получить робот или которую роботу нужно отдать, от -100 до 100. Посетив клетку, Робот забирает или оставляет указанную сумму монет; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную денежную сумму, если робот может идти по любым клеткам, и максимальную сумму, если робот не может идти по клеткам с отрицательным значениям, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела в порядке убывания.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. Создайте новый лист и скопируйте в него таблицу.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке A2 новой таблицы мы запишем формулу: =A1+Лист1!A2 и скопируем её вниз до конца заполненной таблицы. В ячейке В1 запишем формулу =A1+Лист1!B1 и растянем до конца строки. Это нужно для подсчёта максимального значения если робот будет идти только по крайним полям.
В ячейке В2 запишем формулу =МАКС(A2;B1)+Лист1!B2, чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Растягиваем формулу на всю таблицу.
Скопируйте данный, где искали максимум, на новый лист. Воспользуйтесь заменой (нажмите Ctrl+H) и замените МАКС на МИН. Полученный минимум будет в ячейке Т20
На поле у нас есть отрицательные значения. Робот не может ходить по таким полям.
Изменим нашу формулу и добавим в неё условие, что если в поле отрицательное значение, то результат будет сильно маленьким (намного меньше -100) =МАКС(B1;A2)+ЕСЛИ(Лист1!B2>0;Лист1!B2;-10000000000) и растяните её на всё пространство вдоль стенки. В таком случае мы получим, что проход через эту клетку приведёт к отрицательному ответу. Поэтому мы не будем
Ответ получите в ячейке T20
Запишите два числа в ответе.
Ответ: 21962168
Задача 3
Квадрат разлинован на N*N клеток (1 < N <= 30). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. На поле могут быть стенки. При врезании в стенку робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит монeта достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. Создайте новый лист и скопируйте в него таблицу.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке A2 новой таблицы мы запишем формулу: =A1+Лист1!A2 и скопируем её вниз до конца заполненной таблицы. В ячейке В1 запишем формулу =A1+Лист1!B1 и растянем до конца строки. Это нужно для подсчёта максимального значения если робот будет идти только по крайним полям.
В ячейке В2 запишем формулу =МАКС(A2;B1)+Лист1!B2, чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Растягиваем формулу на всю таблицу.
На поле у нас были стенки, желательно их восстановить, чтобы они отображались после. В полях, в которые можно попасть через стенку нужно изменить формула, для них формула будет аналогичной формуле крайних полей.
Обратите внимание на угол. Мы не сможем в него попасть и не сможем взять значения из всего прямоугольника. Для ячейки H5 нужно записать формулу =H4+Лист1!H5 т.к. мы не сможем выйти из прямоугольной области, где был угол и растянем её вдоль прямоугольника. Для ячейки Е9 запишем формулу =D9+Лист1!E9 и тоже растянем её вдоль прямоугольника. Для ячейки I13 запишем формулу =H13+Лист1!I13 и растянем её вдоль стены.
Ответ получите в ячейке T20
Скопируйте данный, где искали максимум, на новый лист. Воспользуйтесь заменой (нажмите Ctrl+H) и замените МАКС на МИН. Полученный минимум будет в ячейке Т20
Запишите два числа в ответе.
Ответ: 27891268
Задача 4
Квадрат разлинован на N*N клеток (1 < N <= 30). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. На поле могут быть стенки. При врезании в стенку робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит монeта достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала минимальную сумму , затем максимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. Создайте новый лист и скопируйте в него таблицу.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке A2 новой таблицы мы запишем формулу: =A1+Лист1!A2 и скопируем её вниз до конца заполненной таблицы. В ячейке В1 запишем формулу =A1+Лист1!B1 и растянем до конца строки. Это нужно для подсчёта максимального значения если робот будет идти только по крайним полям.
В ячейке В2 запишем формулу =МАКС(A2;B1)+Лист1!B2, чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Растягиваем формулу на всю таблицу.
На поле у нас были стенки, желательно их восстановить, чтобы они отображались после. В полях, в которые можно попасть через стенку нужно изменить формулу, для них формула будет аналогичной формуле крайних полей.
В ячейку С3 запишите формулу =C2+Лист1!C3 и растяните её на всё пространство вдоль стенки. Аналогично сделайте для ячейки Q16. В ячейку G6 запишите формулу ==F6+Лист1!G6 и растяните её вправо, вдоль стены.
Ответ получите в ячейке T20
Скопируйте данный, где искали максимум, на новый лист. Воспользуйтесь заменой (нажмите Ctrl+H) и замените МАКС на МИН. Полученный минимум будет в ячейке Т20
Запишите два числа в ответе. СНАЧАЛА МИНИМУМ
Ответ: 13932788
Задача 5
Квадрат разлинован на N*N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит моента достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. В свободной области начертим две таблицы того же размера, что и исходная (в нашем случае это размер 16*16). В одной из таблиц (например, таблица с ячейками R1:AG16) мы будем считать максимальное значение; в другой таблице (например, в таблице с ячейками R18:AG33) мы будем считать минимальное значение.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке R1 запишем число 65, которое мы перенесли из исходной таблицы. В ячейке S1 запишем формулу =R1+B1, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вправо. Тянем за правый нижний угол ячейки S1 до ячейки AG1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вправо. В ячейке R2 запишем формулу =R1+A2, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вниз. Тянем за правый нижний угол ячейки R2 до ячейки R16 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вниз.
В ячейке S2 запишем формулу =B2+МАКС(S1;R2), чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Тянем за правый нижний угол ячейки S2 до ячейки AG2 включительно, а затем тянем за правый нижний угол ячейки AG2 до ячейки AG16 включительно, чтобы посчитать максимальное количество монет, которое Робот соберёт, когда дойдёт до конечной клетки. В ячейке AG16 получится число 2361, которое пойдёт в ответ.
Аналогичным образом заполняем таблицу с ячейками R18:AG33, но вместо формулы =B2+МАКС(S18;R19) записываем формулу =B2+МИН(S18;R19, чтобы посчитать минимальное количество монет, которое может собрать Робот на каждой клетке. В ячейке AG33 получится число 1088, которое пойдёт в ответ.
В ответ мы записываем без пробелов сначала максимальное количество монет, а потом минимальное. Получается ответ 23611088.
Ответ: 23611088
Задача 6
Квадрат разлинован на N*N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит моента достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. В свободной области начертим две таблицы того же размера, что и исходная (в нашем случае это размер 15*15). В одной из таблиц (например, таблица с ячейками Q1:AE15) мы будем считать максимальное значение; в другой таблице (например, в таблице с ячейками Q17:AE31) мы будем считать минимальное значение.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке Q1 запишем число 28, которое мы перенесли из исходной таблицы. В ячейке R1 запишем формулу =Q1+B1, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вправо. Тянем за правый нижний угол ячейки R1 до ячейки AE1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вправо. В ячейке Q2 запишем формулу =Q1+A2, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вниз. Тянем за правый нижний угол ячейки P2 до ячейки P14 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вниз.
В ячейке R2 запишем формулу =B2+МАКС(R1;Q2), чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Тянем за правый нижний угол ячейки R2 до ячейки AE2 включительно, а затем тянем за правый нижний угол ячейки AE2 до ячейки AE15 включительно, чтобы посчитать максимальное количество монет, которое Робот соберёт, когда дойдёт до конечной клетки. В ячейке AE15 получится число 2057, которое пойдёт в ответ.
Аналогичным образом заполняем таблицу с ячейками Q17:AE31, но вместо формулы =B2+МАКС(R17;Q18) записываем формулу =B2+МИН(R17;Q18), чтобы посчитать минимальное количество монет, которое может собрать Робот на каждой клетке. В ячейке AE31 получится число 699, которое пойдёт в ответ.
В ответ мы записываем без пробелов сначала максимальное количество монет, а потом минимальное. Получается ответ 2057699.
Ответ: 2057699
Задача 7
Квадрат разлинован на N*N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит моента достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. В свободной области начертим две таблицы того же размера, что и исходная (в нашем случае это размер 14*14). В одной из таблиц (например, таблица с ячейками P1:AC14) мы будем считать максимальное значение; в другой таблице (например, в таблице с ячейками P16:AC29) мы будем считать минимальное значение.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке P1 запишем число 43, которое мы перенесли из исходной таблицы. В ячейке Q1 запишем формулу =P1+B1, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вправо. Тянем за правый нижний угол ячейки Q1 до ячейки AC1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вправо. В ячейке P2 запишем формулу =P1+A2, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вниз. Тянем за правый нижний угол ячейки P2 до ячейки P14 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вниз.
В ячейке Q2 запишем формулу =B2+МАКС(Q1;P2), чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Тянем за правый нижний угол ячейки Q2 до ячейки AC2 включительно, а затем тянем за правый нижний угол ячейки AC2 до ячейки AC14 включительно, чтобы посчитать максимальное количество монет, которое Робот соберёт, когда дойдёт до конечной клетки. В ячейке AC14 получится число 1865, которое пойдёт в ответ.
Аналогичным образом заполняем таблицу с ячейками P16:AC29, но вместо формулы =B2+МАКС(Q16;P17) записываем формулу =B2+МИН(Q16;P17), чтобы посчитать минимальное количество монет, которое может собрать Робот на каждой клетке. В ячейке AC29 получится число 954, которое пойдёт в ответ.
В ответ мы записываем без пробелов сначала максимальное количество монет, а потом минимальное. Получается ответ 1865954.
Ответ: 1865954
Задача 8
Квадрат разлинован на N*N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит моента достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. В свободной области начертим две таблицы того же размера, что и исходная (в нашем случае это размер 13*13). В одной из таблиц (например, таблица с ячейками O1:AA13) мы будем считать максимальное значение; в другой таблице (например, в таблице с ячейками O15:AA27) мы будем считать минимальное значение.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке O1 запишем число 45, которое мы перенесли из исходной таблицы. В ячейке P1 запишем формулу =O1+B1, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вправо. Тянем за правый нижний угол ячейки P1 до ячейки AA1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вправо. В ячейке O2 запишем формулу =O1+A2, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вниз. Тянем за правый нижний угол ячейки O2 до ячейки O13 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вниз.
В ячейке P2 запишем формулу =B2+МАКС(P1;O2), чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Тянем за правый нижний угол ячейки P2 до ячейки AA2 включительно, а затем тянем за правый нижний угол ячейки AA2 до ячейки AA13 включительно, чтобы посчитать максимальное количество монет, которое Робот соберёт, когда дойдёт до конечной клетки. В ячейке Y12 получится число 1619, которое пойдёт в ответ.
Аналогичным образом заполняем таблицу с ячейками O15:AA27, но вместо формулы =B2+МАКС(P15;O16) записываем формулу =B2+МИН(P15;O16), чтобы посчитать минимальное количество монет, которое может собрать Робот на каждой клетке. В ячейке AA27 получится число 871, которое пойдёт в ответ.
В ответ мы записываем без пробелов сначала максимальное количество монет, а потом минимальное. Получается ответ 1619871.
Ответ: 1619871
Задача 9
Квадрат разлинован на N*N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит моента достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 459203.
Решение
Откроем файл электронной таблицы. В свободной области начертим две таблицы того же размера, что и исходная (в нашем случае это размер 11*11). В одной из таблиц (например, таблица с ячейками M1:W11) мы будем считать максимальное значение; в другой таблице (например, в таблице с ячейками M13:W23) мы будем считать минимальное значение.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке M1 запишем число 94, которое мы перенесли из исходной таблицы. В ячейке N1 запишем формулу =M1+B1, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вправо. Тянем за правый нижний угол ячейки N1 до ячейки W1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вправо. В ячейке M2 запишем формулу =M1+A2, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вниз. Тянем за правый нижний угол ячейки M2 до ячейки M11 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вниз.
В ячейке N2 запишем формулу =B2+МАКС(N1;M2), чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Тянем за правый нижний угол ячейки N2 до ячейки W2 включительно, а затем тянем за правый нижний угол ячейки W2 до ячейки W11 включительно, чтобы посчитать максимальное количество монет, которое Робот соберёт, когда дойдёт до конечной клетки. В ячейке W11 получится число 1713, которое пойдёт в ответ.
Аналогичным образом заполняем таблицу с ячейками M13:W23, но вместо формулы =B2+МАКС(N13;M14) записываем формулу =B2+МИН(N13;M14), чтобы посчитать минимальное количество монет, которое может собрать Робот на каждой клетке. В ячейке W23 получится число 1023, которое пойдёт в ответ.
В ответ мы записываем без пробелов сначала максимальное количество монет, а потом минимальное. Получается ответ 17131023.
Ответ: 17131023
Задача 10
Квадрат разлинован на N*N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит моента достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. В свободной области начертим две таблицы того же размера, что и исходная (в нашем случае это размер 10*10). В одной из таблиц (например, таблица с ячейками L1:U10) мы будем считать максимальное значение; в другой таблице (например, в таблице с ячейками L12:U21) мы будем считать минимальное значение.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке L1 запишем число 100, которое мы перенесли из исходной таблицы. В ячейке M1 запишем формулу =L1+B1, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вправо. Тянем за правый нижний угол ячейки M1 до ячейки U1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вправо. В ячейке L2 запишем формулу =L1+A2, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вниз. Тянем за правый нижний угол ячейки L2 до ячейки L10 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вниз.
В ячейке M2 запишем формулу =B2+МАКС(M1;L2), чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Тянем за правый нижний угол ячейки M2 до ячейки U2 включительно, а затем тянем за правый нижний угол ячейки U2 до ячейки U10 включительно, чтобы посчитать максимальное количество монет, которое Робот соберёт, когда дойдёт до конечной клетки. В ячейке U10 получится число 1308, которое пойдёт в ответ.
Аналогичным образом заполняем таблицу с ячейками L12:U21, но вместо формулы =B2+МАКС(M12;L13) записываем формулу =B2+МИН(M12;L13), чтобы посчитать минимальное количество монет, которое может собрать Робот на каждой клетке. В ячейке U21 получится число 644, которое пойдёт в ответ.
В ответ мы записываем без пробелов сначала максимальное количество монет, а потом минимальное. Получается ответ 1308644.
Ответ: 1308644
Задача 11
Квадрат разлинован на N*N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит моента достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. В свободной области начертим две таблицы того же размера, что и исходная (в нашем случае это размер 8*8). В одной из таблиц (например, таблица с ячейками J1:Q8) мы будем считать максимальное значение; в другой таблице (например, в таблице с ячейками J10:Q17) мы будем считать минимальное значение.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке J1 запишем число 23, которое мы перенесли из исходной таблицы. В ячейке K1 запишем формулу =J1+B1, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вправо. Тянем за правый нижний угол ячейки J1 до ячейки Q1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вправо. В ячейке J2 запишем формулу =J1+A2, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вниз. Тянем за правый нижний угол ячейки J2 до ячейки J8 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вниз.
В ячейке K2 запишем формулу =B2+МАКС(K1;J2), чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Тянем за правый нижний угол ячейки K2 до ячейки Q2 включительно, а затем тянем за правый нижний угол ячейки Q2 до ячейки Q8 включительно, чтобы посчитать максимальное количество монет, которое Робот соберёт, когда дойдёт до конечной клетки. В ячейке Q8 получится число 978, которое пойдёт в ответ.
Аналогичным образом заполняем таблицу с ячейками J10:Q17, но вместо формулы =B2+МАКС(K10;J11) записываем формулу =B2+МИН(K10;J11), чтобы посчитать минимальное количество монет, которое может собрать Робот на каждой клетке. В ячейке Q17 получится число 434, которое пойдёт в ответ.
В ответ мы записываем без пробелов сначала максимальное количество монет, а потом минимальное. Получается ответ 978434.
Ответ: 978434
Задача 12
Квадрат разлинован на N*N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит моента достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. В свободной области начертим две таблицы того же размера, что и исходная (в нашем случае это размер 8*8). В одной из таблиц (например, таблица с ячейками J1:Q8) мы будем считать максимальное значение; в другой таблице (например, в таблице с ячейками J10:Q17) мы будем считать минимальное значение.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке J1 запишем число 8, которое мы перенесли из исходной таблицы. В ячейке K1 запишем формулу =J1+B1, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вправо. Тянем за правый нижний угол ячейки J1 до ячейки Q1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вправо. В ячейке J2 запишем формулу =J1+A2, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вниз. Тянем за правый нижний угол ячейки J2 до ячейки J8 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вниз.
В ячейке K2 запишем формулу =B2+МАКС(K1;J2), чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Тянем за правый нижний угол ячейки K2 до ячейки Q2 включительно, а затем тянем за правый нижний угол ячейки Q2 до ячейки Q8 включительно, чтобы посчитать максимальное количество монет, которое Робот соберёт, когда дойдёт до конечной клетки. В ячейке Q8 получится число 850, которое пойдёт в ответ.
Аналогичным образом заполняем таблицу с ячейками J10:Q17, но вместо формулы =B2+МАКС(K10;J11) записываем формулу =B2+МИН(K10;J11), чтобы посчитать минимальное количество монет, которое может собрать Робот на каждой клетке. В ячейке Q17 получится число 432, которое пойдёт в ответ.
В ответ мы записываем без пробелов сначала максимальное количество монет, а потом минимальное. Получается ответ 850432.
Ответ: 850432
Задача 13
Квадрат разлинован на N*N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит моента достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. В свободной области начертим две таблицы того же размера, что и исходная (в нашем случае это размер 7*7). В одной из таблиц (например, таблица с ячейками I1:O7) мы будем считать максимальное значение; в другой таблице (например, в таблице с ячейками I9:O15) мы будем считать минимальное значение.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке I1 запишем число 19, которое мы перенесли из исходной таблицы. В ячейке J1 запишем формулу =I1+B1, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вправо. Тянем за правый нижний угол ячейки J1 до ячейки O1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вправо. В ячейке I2 запишем формулу =I1+A2, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вниз. Тянем за правый нижний угол ячейки J2 до ячейки L1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вниз.
В ячейке J2 запишем формулу =B2+МАКС(J1;I2), чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Тянем за правый нижний угол ячейки J2 до ячейки O2 включительно, а затем тянем за правый нижний угол ячейки O2 до ячейки O7 включительно, чтобы посчитать максимальное количество монет, которое Робот соберёт, когда дойдёт до конечной клетки. В ячейке O7 получится число 806, которое пойдёт в ответ.
Аналогичным образом заполняем таблицу с ячейками I9:O15, но вместо формулы =B2+МАКС(J9;I10) записываем формулу =B2+МИН(J9;I10), чтобы посчитать минимальное количество монет, которое может собрать Робот на каждой клетке. В ячейке O15 получится число 403, которое пойдёт в ответ.
В ответ мы записываем без пробелов сначала максимальное количество монет, а потом минимальное. Получается ответ 806403.
Ответ: 806376
Задача 14
Квадрат разлинован на N*N клеток (1 < N < 17). Исполнитель Робот может перемещаться по клеткам, выполняя за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит моента достоинством от 1 до 100. Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута Робота.
Определите максимальную и минимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней клетки в правую нижнюю. В ответе укажите два числа без пробела — сначала максимальную сумму, затем минимальную.
Исходные данные представляют собой электронную таблицу размером N*N, каждая ячейка которой соответствует клетке квадрата.
Пример входных данных:
51 | 21 | 93 | 48 |
57 | 43 | 97 | 51 |
63 | 16 | 31 | 16 |
10 | 57 | 64 | 25 |
Для указанных входных данных ответом будет пара чисел 382203.
Решение
Откроем файл электронной таблицы. В свободной области начертим две таблицы того же размера, что и исходная (в нашем случае это размер 5*5). В одной из таблиц (например, таблица с ячейками H1:L5) мы будем считать максимальное значение; в другой таблице (например, в таблице с ячейками H7:L11) мы будем считать минимальное значение.
Для решения данной задачи мы воспользуемся методом динамического программирования, чтобы найти значения в каждой ячейке. Сначала работаем в таблице, в которой посчитаем максимальную сумму. В ячейке H1 запишем число 19, которое мы перенесли из исходной таблицы. В ячейке I1 запишем формулу =H1+B1, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вправо. Тянем за правый нижний угол ячейки I1 до ячейки L1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вправо. В ячейке H2 запишем формулу =H1+A2, чтобы посчитать, какую сумму монет соберёт Робот, если сделает шаг вниз. Тянем за правый нижний угол ячейки H2 до ячейки L1 включительно, чтобы посчитать, сколько Робот соберёт монет, если пойдёт до упора вниз.
В ячейке I2 запишем формулу =B2+МАКС(I1;H2), чтобы посчитать максимальное количество монет, которое Робот может собрать, когда дойдёт до этой ячейки. Тянем за правый нижний угол ячейки I2 до ячейки L2 включительно, а затем тянем за правый нижний угол ячейки L2 до ячейки L5 включительно, чтобы посчитать максимальное количество монет, которое Робот соберёт, когда дойдёт до конечной клетки. В ячейке L5 получится число 496, которое пойдёт в ответ.
Аналогичным образом заполняем таблицу с ячейками H7:L11, но вместо формулы =B2+МАКС(I7;H8) записываем формулу =B2+МИН(I7;H8), чтобы посчитать минимальное количество монет, которое может собрать Робот на каждой клетке. В ячейке L11 получится число 336, которое пойдёт в ответ.
В ответ мы записываем без пробелов сначала максимальное количество монет, а потом минимальное. Получается ответ 496336.
Ответ: 496336
Рекомендуемые курсы подготовки
В настоящее время на вступительных экзаменах
по информатике есть много заданий по теме
“алгебра логики”. Цель данного урока –
закрепление навыков решения заданий ЕГЭ по
информатике с использованием элементов алгебры
логики.
Цели урока:
- Формирование умения применять полученные
знания на практике; - Развитие умения построения таблиц истинности
по заданным формулам; - Развитие умения решать текстовые задачи с
использованием законов логики.
Задачи урока:
- Воспитательная – развитие
познавательного интереса, логического мышления. - Образовательная – повторение основ
математической логики, выполнение практических
заданий. - Развивающая – развитие логического
мышления, внимательности.
Ход урока
- Повторение логических операций и законов.
- Применение логических операций и законов на
практике. - Объяснение домашнего задания.
Сегодня мы с вами завершаем тему “Основы
логики” и применим основные логические
операции, законы преобразования для решения
заданий ЕГЭ по информатике.
Урок идет параллельно с презентацией. <Приложение1>
1. Повторение логических операций и
законов.
Алгебра логики – раздел математической логики,
изучающий строение сложных логических
высказываний и способы установления их
истинности с помощью алгебраических методов.
Вопросы:
1. Основоположник формальной логики?
Аристотель.
2. Основоположник алгебры логики?
Джордж Буль.
3. Перечислите логические операции:
¬ отрицание (инверсия)
&, / конъюнкция (“И”)
V дизъюнкция (“ИЛИ”)
логическое следование (импликация)
равнозначность
(эквивалентность)
4. В чем смысл закона двойного отрицания?
Двойное отрицание исключает отрицание.
5. Законы де Моргана (законы общей инверсии).
Отрицание дизъюнкции является конъюнкцией
отрицаний:¬(A V B) = ¬A / ¬B
Отрицание конъюнкции является дизъюнкцией
отрицаний:¬(A /B) = ¬A V ¬B
6. Закон идемпотентности (одинаковости).
A V A = A
A / A = A
7. В чём смысл закона исключения третьего?
Из двух противоречащих высказываний об одном и
том же одно всегда истинно, второе ложно,
третьего не дано:
A V ¬А= 1
8. О чём закон противоречия?
Не могут быть одновременно истинны утверждение
и его отрицание:
A / ¬А= 0
9. Закон исключения констант.
Для логического сложения:
A V 1 = 1 A V 0 = A
Для логического умножения:
A / 1 = A A / 0 = 0
10. Как выразить импликацию через дизъюнкцию?
А В = ¬A V В
2. Примение логических операций и законов
на практике.
Пример 1. (Задание А11 демоверсии 2004 г.)
Для какого имени истинно высказывание:
¬ (Первая буква имени гласная -> Четвертая
буква имени согласная)?
1) ЕЛЕНА
2) ВАДИМ
3) АНТОН
4) ФЕДОР
Решение. Сложное высказывание состоит из
двух простых высказываний:
А – первая буква имени гласная,
В – четвертая буква имени согласная.
¬ (А В) = ¬ (¬A V
В) = (¬ (¬А) / ¬B) = A / ¬B
Применяемые формулы:
1. Импликация через дизъюнкцию А ? В = ¬A V В
2. Закон де Моргана ¬(A V B) = ¬A / ¬B
3. Закон двойного отрицания.
(Первая буква имени гласная / Четвертая буква
имени гласная)
Ответ: 3
Пример 2. (Задание А12 демоверсии 2004 г.)
Какое логическое выражение равносильно
выражению ¬ (А / ¬B)?
1) A / B
2) A / B
3) ¬A / ¬B
4) ¬A / B
Решение. ¬ (А / ¬B)= ¬ А / ¬ (¬B)= ¬ А / B
Ответ: 4
Пример 3.
Составить таблицу истинности для формулы
¬ (B / C) V (A/C B)
Порядок выполнения логических операций:
¬ (B / C) V (A/C B)
2 1 5 3 4
Составить таблицу истинности.
Сколько строк будет в вашей таблице? 3
переменных: А, В, С; 23=8
Сколько столбцов? 5 операций + 3 переменных = 8
Решение:
A | B | C | (B / C) | ¬ (B / C) | A/C | (A/C ? B) | ¬ (B / C) V (A/C |
0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 |
0 | 0 | 1 | 0 | 1 | 0 | 1 | 1 |
0 | 1 | 0 | 0 | 1 | 0 | 1 | 1 |
0 | 1 | 1 | 1 | 0 | 0 | 1 | 1 |
1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 |
1 | 0 | 1 | 0 | 1 | 1 | 1 | 1 |
1 | 1 | 0 | 0 | 1 | 0 | 0 | 1 |
1 | 1 | 1 | 1 | 0 | 1 | 1 | 1 |
Какие ответы получились в последнем столбце?
Ответ: 1
Логическое выражение называется тождественно-истинным,
если оно принимает значения 1 на всех наборах
входящих в него простых высказываний.
Тождественно-истинные формулы называют тавтологиями.
Решим этот пример аналитическим методом:
упрощаем выражение
¬ (B / C) V (A/C B)=
(применим формулу для импликации)
¬ (B / C) V ¬ (A / C) V B = (применим 1 и 2 законы де
Моргана)
(¬B V ¬C) V (¬A V ¬C) V B = (уберём скобки)
¬B V ¬C V ¬A V ¬C V B= (применим переместительный
закон)
¬B V B V ¬C V ¬C V ¬A = (закон исключения третьего,
закон идемпотентности)
1 V ¬С V ¬A = 1 V ¬A = 1 (закон исключения констант)
Ответ: 1, означает, что формула является
тождественно-истинной или тавтологией.
Логическое выражение называется тождественно-ложным,
если оно принимает значения 0 на всех наборах
входящих в него простых высказываний.
(задание 3 домашнего задания)
Пример 4.
В таблице приведены запросы к поисковому
серверу. Расположите обозначения запросов в
порядке возрастания количества страниц, которые
найдёт поисковый сервер по каждому запросу.
Для обозначения логической операции “ИЛИ” в
запросе используется символ I, а для логической
операции “И” – символ &.
А Законы & Физика Б Законы I (Физика & Биология) В Законы & Физика & Биология & Химия Г Законы I Физика I Биология
Решение:
Первый способ основан на рассуждении.
Рассуждая логически, мы видим, что больше всего
будет найдено страниц по запросу Г, так как при
его исполнении будут найдены и страницы со
словом “законы”, и страницы, со словом
“физика”, и страницы со словом “биология”.
Меньше всего будет найдено страниц по запросу В,
так как в нем присутствие всех четырех слов на
искомой странице. Осталось сравнить запросы А и
Б. По запросу Б будут найдены все страницы,
соответствующие запросу А, (так как в последних
обязательно присутствует слово “законы”), а
также страницы, содержащие одновременно слова
“физика” и “биология”. Следовательно по
запросу Б будет найдено больше страниц, чем по
запросу А. Итак, упорядочив запросы по
возрастанию страниц, получаем ВАБГ.
Ответ: ВАБГ.
Второй способ предполагает использование
графического представления операций над
множествами. (Смотри презентацию)
Пример 5. (Задание А16 демоверсии 2006 г.)
Ниже в табличной форме представлен фрагмент
базы данных о результатах тестирования учащихся
(используется стобалльная шкала)
Фамилия | Пол | Математика | Русский язык | Химия | Информатика | Биология |
Аганян | ж | 82 | 56 | 46 | 32 | 70 |
Воронин | м | 43 | 62 | 45 | 74 | 23 |
Григорчук | м | 54 | 74 | 68 | 75 | 83 |
Роднина | ж | 71 | 63 | 56 | 82 | 79 |
Сергеенко | ж | 33 | 25 | 74 | 38 | 46 |
Черепанова | ж | 18 | 92 | 83 | 28 | 61 |
Сколько записей в данном фрагменте
удовлетворяют условию
“Пол=’м’ ИЛИ Химия>Биология”?
1) 5
2) 2
3) 3
4) 4
Решение:
Выбираем записи: Мальчики (двое) и
Химия>Биология (трое, но один мальчик, уже
взялся 1 раз). В итоге 4 записи удовлетворяют
условию.
Ответ: 4
Задание 6. (Задание В4 демоверсии 2007 г)
В школьном первенстве по настольному теннису в
четверку лучших вошли девушки: Наташа, Маша, Люда
и Рита. Самые горячие болельщики высказали свои
предположения о распределении мест в дальнейших
состязаниях.
Один считает, что первой будет Наташа, а Маша
будет второй.
Другой болельщик на второе место прочит Люду, а
Рита, по его мнению, займет четвертое место.
Третий любитель тенниса с ними не согласился.
Он считает, что Рита займет третье место, а Наташа
будет второй.
Когда соревнования закончились, оказалось, что
каждый из болельщиков был прав только в одном из
своих прогнозов.
Какое место на чемпионате заняли Наташа, Маша,
Люда, Рита?
(В ответе перечислите подряд без пробелов
числа, соответствующие местам девочек в
указанном порядке имен.)
Решение:
Обозначим высказывания:
Н1 = “первой будет Наташа”;
М2 = “второй будет Маша”;
Л2 = “второй будет Люда”;
Р4 = “четвертой будет Рита”;
Р3 = “третьей будет Рита”;
Н2 = “второй будет Наташа”.
Согласно условию:
из высказываний 1 болельщика следует, что Н1VМ2
истинно;
из высказываний2 болельщика следует, что Л2VР4
истинно;
из высказываний 3 болельщика следует, что Р3VН2
истинно.
Следовательно, истинна и конъюнкция
(Н1VМ2) / (Л2VР4) / (Р3VН2) = 1.
Раскрыв скобки получим:
(Н1VМ2) / (Л2VР4) / (Р3VН2) = (Н1/Л2V Н1/Р4 V М2/Л2 V М2/Р4) /
(Р3VН2)=
Н1/ Л2/Р3 V Н1/Р4/Р3 V М2/Л2/Р3 V М2/Р4/Р3 V Н1/Л2/Н2 V
Н1/Р4/Н2 V М2/Л2/Н2 V М2/Р4/Н2 = Н1/ Л2/Р3 V 0 V 0 V 0 V 0 V 0
V 0 V= Н1/ Л2/Р3
Наташа-1, Люда-2, Рита-3, а Маша-4.
Ответ: 1423
3. Объяснение домашнего задания.
Задание 1. (Задание В8 демоверсии 2007г)
В таблице приведены запросы к поисковому
серверу. Расположите обозначения запросов в
порядке возрастания количества страниц, которые
найдет поисковый сервер по каждому запросу.
Для обозначения логической операции “ИЛИ” в
запросе используется символ |, а для логической
операции “И” – &.
А волейбол | баскетбол | подача Б волейбол | баскетбол | подача | блок В волейбол | баскетбол Г волейбол & баскетбол & подача
Задание 2 (Задание В4 демоверсии 2008г)
Перед началом Турнира Четырех болельщики
высказали следующие предположения по поводу
своих кумиров:
A) Макс победит, Билл – второй;
B) Билл – третий. Ник – первый;
C) Макс – последний, а первый – Джон.
Когда соревнования закончились, оказалось, что
каждый из болельщиков был прав только в одном из
своих прогнозов.
Какое место на турнире заняли Джон, Ник, Билл,
Макс?
(В ответе перечислите подряд без пробелов места
участников в указанном порядке имен.)
Оценки за урок.