Мастер класс "Основы логики. Методы решение логических задач"

Мастер-класс по информатике на тему
«Основы логики. Методы решение логических задач»
Учитель высшей категории
МБОУ СОШ №26 с. Краснокумского
Георгиевского района
Ставропольского края
Шишкин Владимир Васильевич
2
Требования к знаниям и умениям:
знать:
основные понятия и определения алгебры логики;
основные законы алгебры логики;
основные понятия и определения теории графов;
основные алгоритмические структуры;
определения пересечения, объединения множеств.
научить:
упрощать логические выражения;
записывать составные высказывания в виде логических функций;
уметь строить графы отношений;
уметь строить графическую модель любой алгоритмической структуры;
уметь показывать отношения между множествами на кругах Эйлера.
3
Цель:
познакомить учащихся с методами решения логических задач.
Задачи:
образовательная знакомство учащихся с различными решениями логических задач,
выполнение практических заданий;
развивающие развитие логического мышления учащихся, памяти, внимания, а также
интереса к разделу информатики - алгебре логики;
воспитательные работа над повышением знаний основных понятий и законов алгебры
логики, достижение сознательного усвоения материала учащимися с применением
полученных знаний на практике.
Оборудование:
мультимедийный проектор;
презентация, подготовленная в MS Power Point;
4
План:
1. Организационная часть.
2. Краткий исторический экскурс.
3. Актуализация опорных знаний.
4. Применение знаний, умений и навыков.
5. Подведение итогов урока.
5
Конспект.
1. Организационная часть
приветствие;
проверка отсутствующих;
постановка целей урока.
2. Краткий исторический экскурс.
Слово "логика" греческого происхождения. Логика как наука основана Аристотелем
(384-320 гг до н.э.), который был необыкновенной фигурой в целой плеяде блестящих
греческих ученых. Он был последователем Платона и посещал его Академию в Афинах.
После смерти Платона (347 г.до н.э.) Аристотель покинул Афины. Он вернулся туда 12
лет спустя и основал свою школу - Лицей. Одним из учеников Аристотеля был Александр
Великий.
Логика Аристотеля является скорее частью философии, но эта часть - основа всех
наук. В своем выдающемся произведении "Аналитики" Аристотель создал и проверил
около 20 схем рассуждений, которые назвал силлогизмами. Процитируем самый
известный силлогизм: "Сократ - человек; все люди смертны; значит Сократ смертен".
После Аристотеля силлогизмы и их трансформации стали основой дедуктивных
рассуждений.
Готфрид Лейбниц в начале 18 века сделал попытку создать формальную логическую
систему, введя законы сочетания высказываний. Он высказал идею о том, что
рассуждения могут быть сведены к механическому выполнению определенных действий
по установленным правилам: "Можно придумать некий алфавит человеческих мыслей, и с
помощью комбинации букв этого алфавита и анализа слов, из них составленных, все
может быть открыто и разрешимо". Но эти работы не были опубликованы, и лишь в 19
веке Джордж Буль и Август де Морган основали математическую логику, независимую от
философии.
Назовем известнейшие работы Буля (1815-1864): "Формальная логика",
"Исследование законов мысли". Буль вводит в логику алгебраическую структуру,
называемую сегодня кольцо Буля, две операции, свойства которых в чем-то подобны
свойствам операции с числами (например, 1+0=1), и в чем-то расходятся с ними
(например, 1+1=1). Это позволило описать логику высказываний как формальную
алгебраическую структуру.
Другой математик, А.де Морган, ввел кванторы (не называя их) и сделал попытку
формального определения структур, продолжив работу, начатую Булем.
Решать логические задачи очень увлекательно. Есть люди, для которых решение
логической задачи - увлекательная, но несложная задача. Их мозг как луч прожектора
сразу освещает все хитроумные построения, и к правильному ответу он приходит
необычайно быстро. Замечательно, что при этом он и не могут объяснить, как они пришли
к решению. "Ну это же очевидно, ясно", - говорят они. "Ведь если ... " - и они начинают
легко распутывать клубок противоречивых высказываний. "Действительно, все ясно", -
говорит слушатель, огорченный тем, что он сам не увидел очевидного рассуждения.
Логические или нечисловые задачи составляют обширный класс нестандартных
задач. Сюда относятся, прежде всего, текстовые задачи, в которых требуется распознать
объекты или расположить их в определенном порядке по имеющимся свойствам. При
этом часть утверждений условия задачи может выступать с различной истинностной
оценкой (быть истинной или ложной). К классу логических задач относятся также задачи
на переливания и взвешивания (фальшивые монеты и т.п.).
6
В курсе информатики учащиеся с логическими задачами сталкиваются постоянно.
Например в 5 классе при изучении темы §1.10 «Таблицы» сталкиваются с табличным
способом решения логических задач.
В 6 и 7 классах при изучении тем «Понятие. Отношения между понятиями.
Суждения и умозаключения как форма мышления они сталкиваются с кругами Эйлера
Венна, а при изучении темы «Классификация» с графами.
Пример:
Однажды Артеке за круглым столом оказался пятеро ребят из Москвы, Санкт-
Петербурга, Новгорода, Перми и Томска: Юра, Толя, Леша, Коля и Витя. Москвич сидел
между Томичем и Витей, петербуржец между Юрой и Толей, а напротив него сидели
пермяк и Алеша. Коля никогда не был в Санкт-Петербурге, а Юра не был в Москве и
Томске, Томич с Толей регулярно переписываются.
Определить в каком городе живет каждый из ребят?
Анализ этого текста позволяет выделить два класса объектов: «мальчик» и «город».
Нужно установить взаимно однозначное соответствие (выявить пары) между объектами
этих классов. Наличие свойства у пары объектов «мальчик живет в городе» будем
обозначать 1, а его отсутствие — 0.
Мальчики
Город
Москва
Санкт-Петербург
Новгород
Пермь
Юра
0
0
1
0
Толя
1
0
0
0
Алеша
0
0
0
0
Коля
0
0
0
1
Витя
0
1
0
0
А в 10 классе и при подготовке к ЕГЭ теме «Основы логики» отводится одно из
центральных мест.
7
При переходе к теме «Решение логических задач» целесообразно повторить:
основные логические операции (конъюнкция, дизъюнкция, отрицание,
эквивалентности и следования);
законы алгебры логики;
построение таблиц истинности.
Название
двойного отрицания
¬¬ А = А
исключения третьего
А ¬ А = 0
А ¬ А = 1
операции с константами
А 0 = 0, А 1 =А
А 0 = А, А 1 =1
повторения
А А = А
А А = А
поглощения
А (А В) = А
А А В = А
переместительный
А В = В А
А В = В А
сочетательный
А С) = (А В) С
А С) = (А В) С
распределительный
А С) = А В А С
Законы де Моргана
¬ ( А В) = ¬ А ¬ В
¬ ( А В) = ¬ А ¬ В
Решить устно несколько задач для разминки:
- решим следующую задачу методом рассуждений.
Вася забыл пароль к Windows XP, но помнил алгоритм его получения из строки
подсказки «23ABN12QR8N»: если последовательности символов «AB» и «QR»
поменять местами, а затем из получившейся строки удалить все символы «N», то
полученная последовательность и будет паролем. Определите пароль.
2) 23AB12QR8
3) 23QR12AB8
4) 23QRAB8
5) 4) 23QR128
(Верный ответ - 2)
Символом F обозначено одно из указанных ниже логических выражений от трех
аргументов: X, Y, Z. Дан фрагмент таблицы истинности выражения F.
Какое выражение соответствует F?
1)¬X ¬Y ¬Z
2) X Y Z
3) X Y Z
4) ¬X ¬Y ¬Z
X
Y
Z
F
1
0
0
1
0
0
0
1
1
1
1
0
X
Y
Z
F
¬Х ¬Y ¬Z
Х Y Z
Х Y Z
¬Х ¬Y ¬Z
8
(Правильный ответ под номером 4.)
Для какого имени истинно высказывание
¬(ПЕРВАЯ БУКВА СОГЛАСНАЯ ВТОРАЯ БУКВА СОГЛАСНАЯ)
ПОСЛЕДНЯЯ БУКВА ГЛАСНАЯ?
1) Роман
2) Юнона
3) Андрей
4) Кристина
¬ с ) гл = Юнона
(Верный ответ - 2)
При подаче нового материала рассказать и назвать несколько различных
способов решения логических задач:
o Метод рассуждений;
o Метод таблиц;
o Метод графов;
o Метод блок-схем;
o Метод кругов Эйлера - Венна.
o С помощью алгебры логики.
- С помощью рассуждений обычно решаются несложные задачи. Давайте
рассмотрим некоторые из них.
Задача.
Вадим, Сергей и Михаил изучают различные иностранные языки: китайский, японский и
арабский. На вопрос, какой язык изучает каждый из них, один ответил: «Вадим изучает
китайский, Сергей не изучает китайский, а Михаил не изучает арабский. Впоследствии
выяснилось, что в этих ответах только одно утверждение верно, а два других ложно.
Какой язык изучает каждый из молодых людей.
Решение.
В задаче имеется три утверждения:
А = « Вадим изучает китайский»;
В = «Сергей не изучает китайский»;
С = «Михаил не изучает арабский».
Если предположить, что верно утверждение А, то будет верно утверждение В, так
как юноши изучают разные языки. Но это противоречит условию задачи, поэтому
утверждение А ложно.
Если же будет верно утверждение В, то утверждения А и С должны быть ложны.
Тогда получается, что никто не изучает китайский. А это противоречит условию задачи,
поэтому утверждение В также ложно.
Рассуждая таким образом, мы получили, что из трёх утверждений верно
утверждение С, а утверждения А и В ложные. Следовательно, Сергей изучает китайский,
Михаил – японский, а Вадим – арабский языки.
Задача 2.
1
0
0
1
0 ×
0 ×
1
1
0
0
0
1
0 ×
1
1
1
1
0
0
9
Задача.
Цепочка из трех бусин, помеченных латинскими буквами, формируется по следующему
правилу. В конце цепочки стоит одна из бусин A, B, C. На первом месте одна из бусин
B, D, C, которой нет на третьем месте. В середине одна из бусин А, C, E, B, не стоящая
на первом месте.
Какая из перечисленных цепочек создана по этому правилу?
1) BCB 2) EAC 3) BCD 4) CBB
Решение.
1.Правило содержит три условия, обозначим их так:
У1: третья бусина – A, B или C
У2-3: первая бусина – B, D или C, не совпадающая с третьей
У4-5: вторая бусина – A, B, C или E, не совпадающая с первой
2.Условия У2-3 и У4-5 сложные, их можно разбить на два, так что получится всего пять
условий
У1: третья бусина – A, B или C
У2: первая бусина – B, D или C
У3: первая и третья бусины – разные
У4: вторая бусина – A, B, C или E
У5: первая и вторая бусины – разные
3.Теперь для каждого из ответов проверим выполнение всех условий;
1) BCB не выполняется У3
2) EAC не выполняется У2
3) BCD не выполняется У1
4) CBB все условия выполняются
То есть верный ответ под номером 4.
- Теперь давайте рассмотрим решение логических задач с помощью таблиц.
Задача.
На пяти железнодорожных путях стоят 5 поездов. Петров машинист поезда,
отправляющегося в 12.00, этот поезд зеленого цвета. В составе поезда, стоящего по
центру, 12 вагонов. Сидоров - машинист поезда, отправляющегося в 12.45. Волков
машинист в поезде с 15 вагонами, его поезд сразу слева от поезда зеленого цвета. Сразу
правее поезда, имеющего синий цвет, стоит поезд, отправляющийся в Киров. Кузьмин
машинист поезда, едущего в Саратов. Рядом с составом черного цвета – состав с 14
вагонами. Поезд на Иркутск отходит в 13.00. В 12.20 отправляется поезд с машинистом
Поповым и он непосредственно справа от поезда до Кирова. Состав с 16 вагонами
направляется в Харьков. Рядом с поездом, который отправляется в 12.20, поездной состав
с 13 вагонами. Крайний состав окрашен в красный цвет. Состав с 12 вагонами
отправляется в 12.30. Составы красного и черного цвета стоят рядом. Поезд, следующий
до Харькова, отходит в12.00. Какой состав пестрый? Какой поезд едет в Петербург?
Решение
- Пронумеруем условия задачи.
1. Петров – машинист поезда, отправляющегося в 12.00, этот поезд зеленого цвета.
10
2. В составе поезда, стоящего по центру, 12 вагонов.
3. Сидоров – машинист поезда, отправляющегося в 12.45.
4. Волков машинист в поезде с 15 вагонами, его поезд сразу слева от поезда
зеленого цвета.
5. Сразу правее поезда, имеющего синий цвет, стоит поезд, отправляющийся в Киров.
6. Кузьмин – машинист поезда, едущего в Саратов.
7. Рядом с составом черного цвета – состав с 14 вагонами.
8. Поезд на Иркутск отходит в 13.00.
9. В 12.20 отправляется поезд с машинистом Поповым и он непосредственно справа
от поезда до Кирова.
10. Состав с 16 вагонами направляется в Харьков.
11. Рядом с поездом, который отправляется в 12.20, поездной состав с 13 вагонами.
12. Крайний состав окрашен в красный цвет.
13. Состав с 12 вагонами отправляется в 12.30.
14. Составы красного и черного цвета стоят рядом.
15. Поезд, следующий до Харькова, отходит в12.00.
-Составим таблицу.
Петров
Сидоров
Волков
Кузьмин
Попов
Харьков
Иркутск
Киров
Саратов
Петербург
12.00
12.20
12.30
12.45
13.00
12 вагонов
13 вагонов
14 вагонов
15 вагонов
16 вагонов
Черный
Синий
Красный
Зеленый
Пестрый
- Исходя из условий №1, №15 и №10 заполняем: Петров 12.00 зеленый цвет Харьков
16 вагонов. Из условия 6 заполняем: Кузьмин Саратов. Из условия №4 заполняем:
Волков – состав с 15 вагонами.
11
Петров
Сидоров
Волков
Кузьмин
Попов
Харьков
1
0
0
0
0
Иркутск
0
0
Киров
0
0
Саратов
0
0
0
1
0
Петербург
0
0
12.00
1
0
0
0
0
12.20
0
12.30
0
12.45
0
13.00
0
12 вагонов
0
0
13 вагонов
0
0
14 вагонов
0
0
15 вагонов
0
0
1
0
0
16 вагонов
1
0
0
0
0
Черный
0
Синий
0
Красный
0
Зеленый
1
0
0
0
0
Пестрый
0
- Исходя из условий №3 и №9 заполняем: Сидоров 12.45, Попов 12.20. Кроме того, по
условию №11 в поезде Попова не может быть 13 вагонов, а по условию №13 не может
быть 12 вагонов, значит, их 14.
Петров
Сидоров
Волков
Кузьмин
Попов
Харьков
1
0
0
0
0
Иркутск
0
0
Киров
0
0
Саратов
0
0
0
1
0
Петербург
0
0
12.00
1
0
0
0
0
12.20
0
0
0
0
1
12.30
0
0
0
12.45
0
1
0
0
0
13.00
0
0
0
12 вагонов
0
0
0
13 вагонов
0
0
0
14 вагонов
0
0
0
0
1
15 вагонов
0
0
1
0
0
16 вагонов
1
0
0
0
0
Черный
0
Синий
0
Красный
0
Зеленый
1
0
0
0
0
Пестрый
0
12
- Теперь, по условиям №6 и №8, поезд Кузьмина не может отправляться в 13.00. Значит,
заполняем: Кузьмин (едет в Саратов) – 12.30. Остается Волков – 13.00 Иркутск.
Петров
Сидоров
Волков
Кузьмин
Попов
Харьков
1
0
0
0
0
Иркутск
0
0
1
0
0
Киров
0
0
0
Саратов
0
0
0
1
0
Петербург
0
0
0
12.00
1
0
0
0
0
12.20
0
0
0
0
1
12.30
0
0
0
1
0
12.45
0
1
0
0
0
13.00
0
0
1
0
0
12 вагонов
0
0
0
13 вагонов
0
0
0
14 вагонов
0
0
0
0
1
15 вагонов
0
0
1
0
0
16 вагонов
1
0
0
0
0
Черный
0
Синий
0
Красный
0
Зеленый
1
0
0
0
0
Пестрый
0
- Теперь из таблицы видно, что остались два города (Петербург и Киров) и два
машиниста (Сидоров и Попов). Но по условию №9 Попов не может ехать в Киров, значит
заполняем: Попов – Петербург, Сидоров – Киров.
Петров
Сидоров
Волков
Кузьмин
Попов
Харьков
1
0
0
0
0
Иркутск
0
0
1
0
0
Киров
0
1
0
0
0
Саратов
0
0
0
1
0
Петербург
0
0
0
0
1
12.00
1
0
0
0
0
12.20
0
0
0
0
1
12.30
0
0
0
1
0
12.45
0
1
0
0
0
13.00
0
0
1
0
0
12 вагонов
0
0
0
13 вагонов
0
0
0
14 вагонов
0
0
0
0
1
15 вагонов
0
0
1
0
0
16 вагонов
1
0
0
0
0
Черный
0
Синий
0
Красный
0
Зеленый
1
0
0
0
0
Пестрый
0
13
- По условию №13 заполняем 12.30 – Кузьмин 12 вагонов. Остается Сидоров – 13
вагонов.
Петров
Сидоров
Волков
Кузьмин
Попов
Харьков
1
0
0
0
0
Иркутск
0
0
1
0
0
Киров
0
1
0
0
0
Саратов
0
0
0
1
0
Петербург
0
0
0
0
1
12.00
1
0
0
0
0
12.20
0
0
0
0
1
12.30
0
0
0
1
0
12.45
0
1
0
0
0
13.00
0
0
1
0
0
12 вагонов
0
0
0
1
0
13 вагонов
0
1
0
0
0
14 вагонов
0
0
0
0
1
15 вагонов
0
0
1
0
0
16 вагонов
1
0
0
0
0
Черный
0
Синий
0
Красный
0
Зеленый
1
0
0
0
0
Пестрый
0
Осталось распределить цвета. По условию №5 состав Сидорова (едет в Киров) не может
быть синим. По условиям №2, №12 и №14 красный и черный составы не могут состоять
из 12 вагонов, т.к. оба не могут стоять в центре. Поэтому состав Кузьмина (12 вагонов) не
красный и не черный.
По условиям №12 и №14 черный состав стоит между центральным и крайним (красным),
но тогда по условию № 7 и по условию №2 в красном составе 14 вагонов. Поэтому
заполняем: у машиниста Попова красный состав (14 вагонов).
Петров
Сидоров
Волков
Кузьмин
Попов
Харьков
1
0
0
0
0
Иркутск
0
0
1
0
0
Киров
0
1
0
0
0
Саратов
0
0
0
1
0
Петербург
0
0
0
0
1
12.00
1
0
0
0
0
12.20
0
0
0
0
1
12.30
0
0
0
1
0
12.45
0
1
0
0
0
13.00
0
0
1
0
0
12 вагонов
0
0
0
1
0
13 вагонов
0
1
0
0
0
14 вагонов
0
0
0
0
1
15 вагонов
0
0
1
0
0
16 вагонов
1
0
0
0
0
Черный
0
0
0
Синий
0
0
0
Красный
0
0
0
0
1
Зеленый
1
0
0
0
0
Пестрый
0
0
14
- Синий состав может быть либо у машиниста Кузьмина, либо у Волкова. Однако по
условию №4 состав Волкова должен быть справа от зеленого состава, а по условию 5
правее синего состава стоит состав Сидорова, но он не зеленый. Значит, синий состав не у
Волкова, а у Кузьмина.
По условию №9 состав машиниста Попова справа от состава машиниста Сидорова, а
поезд Попова окрашен в красный цвет. Значит, состав Сидорова черный, по условию
№14 и №12. Остается, что пестрый состав поведет Волков.
Петров
Сидоров
Волков
Кузьмин
Попов
Харьков
1
0
0
0
0
Иркутск
0
0
1
0
0
Киров
0
1
0
0
0
Саратов
0
0
0
1
0
Петербург
0
0
0
0
1
12.00
1
0
0
0
0
12.20
0
0
0
0
1
12.30
0
0
0
1
0
12.45
0
1
0
0
0
13.00
0
0
1
0
0
12 вагонов
0
0
0
1
0
13 вагонов
0
1
0
0
0
14 вагонов
0
0
0
0
1
15 вагонов
0
0
1
0
0
16 вагонов
1
0
0
0
0
Черный
0
1
0
0
0
Синий
0
0
0
1
0
Красный
0
0
0
0
1
Зеленый
1
0
0
0
0
Пестрый
0
0
1
0
0
- Таким образом, мы получили, что машинист Волков ведёт пёстрый состав, в котором 15
вагонов, и отправляется он в 13. 00 в Иркутск.
В Петербург в 12.20 отправляется красный состав, в нем 14 вагонов, машинист - Попов
Задача.
Четверо друзей Алексей, Олег, Игорь и Семен занимались в разных спортивных секциях.
Один из них играл в баскетбол, второй в волейбол, третий в футбол, а четвертый
в теннис. У них были и различные увлечения: один из них любил кино, другой театр,
третий эстраду, а четвертый цирк. Известно, что Алексей не играет ни в волейбол,
ни в баскетбол. Олег играет в футбол и любит театр. Семен не играет в волейбол. Тот из
ребят, который играет в волейбол, любит ходить в кино, а тот, кто играет в баскетбол, не
любит цирк. В какую секцию ходит и чем увлекается каждый из друзей?
Решение.
- Пронумеруем условия задачи.
1. Алексей не играет ни в волейбол, ни в баскетбол.
2. Олег играет в футбол и любит театр.
3. Семен не играет в волейбол.
15
4. Тот из ребят, который играет в волейбол, любит ходить в кино.
5. Тот, кто играет в баскетбол, не любит цирк.
Баскетбол
Волейбол
Футбол
Теннис
Кино
Театр
Эстрада
Цирк
0
0
0
1
Алексей
0
0
0
1
0
0
1
0
Олег
0
1
0
0
0
1
0
0
Игорь
1
0
0
0
1
0
0
0
Семен
0
0
1
0
Ответ: Алексей занимается теннисом и любит ходить в цирк, Олег увлекается театром и
занимается футболом, Игорь – волейбол и кино, Семён – баскетбол и эстрада.
- Рассмотрим пример решения задачи с помощью графов.
Задача.
Четыре футбольных команды: итальянская команда «Милан», испанская – «Реал»,
российская – «Зенит», английская – «Челси» встретились в групповом этапе лиги
чемпионов по футболу. Их тренировали тренеры из этих же четырех стран: итальянец
Антонио, испанец Родриго, русский Николай, англичанин Марк. Известно, что
национальность у всех четырех тренеров не совпадала с национальностью команд.
Требуется определить тренера каждой команды, если известно:
а) Зенит не тренируется у Марка и Антонио.
б) Милан обещал никогда не брать Марка главным тренером.
Решение.
Исходя из условий задачи, получаем следующий граф.
Сразу можем сделать вывод, что российская команда «Зенит» тренируется у испанца
Родриго. Чертеж примет вид:
Теперь получили, что итальянская команда «Милан» тренируется у русского Николая.
Внесем и эти изменения в чертеж, получим:
16
Приходим к выводу, что английская команда «Челси» тренируется у итальянца Антонио и
испанская команда «Реал» тренируется у англичанина Марка.
Ответ. Российская команда «Зенит» тренируется у испанца Родриго; итальянская команда
«Милан» тренируется у русского Николая; английская команда «Челси» тренируется у
итальянца Антонио; испанская команда «Реал» тренируется у англичанина Марка.
- А теперь давайте посмотрим как решить логическую задачу с помощью блок
схемы.
Задача.
Имеются два сосуда — трехлитровый и пятилитровый. Нужно, пользуясь этими
сосудами, получить 1, 2, 3, 4, 5, 6, 7 и 8 литров воды. В нашем распоряжении
водопроводный кран и раковина, куда можно выливать воду.
Решение.
Перечислим все возможные операции, которые могут быть использованы нами, и
введем для них следующие сокращенные обозначения:
НБ — наполнить больший сосуд водой из-под крана;
НМ — наполнить меньший сосуд водой из-под крана;
ОБ — опорожнить больший сосуд, вылив воду в раковину;
ОМ — опорожнить меньший сосуд, вылив воду в раковину;
Б→М перелить из большего в меньший, пока больший сосуд не опустеет или
меньший сосуд не наполнится;
М→Б перелить из меньшего в больший, пока меньший сосуд не опустеет или
больший сосуд не наполнится.
Выделим среди перечисленных команд только три: НБ, Б→М, ОМ.
Кроме этих трех команд рассмотрим еще две вспомогательные команды: Б = 0 ?
посмотреть, пуст ли больший сосуд;
М = З ? посмотреть, наполнен ли малый сосуд.
В зависимости от результатов этого осмотра мы переходим к выполнению
следующей команды по одному из двух ключей - "да" или "нет". Такие команды в
программировании принято называть командами "условного перехода" и изображать в
блок-схемах в виде ромбика с двумя ключами-выходами.
Договоримся теперь о последовательности выполнения выделенных
команд. После Б→М будем выполнять ОМ всякий раз, как меньший сосуд
оказывается наполненным, и НБ всякий раз, как больший сосуд будет
опорожнен. Последовательность команд изобразим в виде блок-схемы.
17
Начнем выполнение программы. Будем фиксировать, как меняется количество воды в
сосудах, если действовать по приведенной схеме. Результаты оформим в виде таблицы:
Б
0
5
2
2
0
5
4
4
1
1
0
5
3
3
0
0
М
0
0
3
0
2
2
3
0
3
0
1
1
3
0
3
0
Дальше эта последовательность будет полностью повторяться. Из таблицы видим, что
количество воды в обоих сосудах вместе образует следующую последовательность: 0, 5, 2,
7, 4, 1, 6, 3, 0 и т.д. Таким образом, действуя по приведенной схеме, можно отмерить
любое количество литров от 1 до 7. Чтобы отмерить еще и 8 литров, надо наполнить оба
сосуда.
- Теперь посмотрим, как решается задача, с использованием кругов Эйлера.
Задача.
Все мои подруги выращивают в своих квартирах какие-нибудь растения. Шестеро из них
разводят лилии, а пятеро — фиалки.
И только у двоих есть и лилии и фиалки.
Угадайте, сколько у меня подруг?
Решение.
Учитывая условия задачи, чертеж будет таков:
6-2=4 только лилии
5-2=3 только фиалки
4+2+3=9
Ответ. 9 подруг
- Рассмотрим примеры решения задач средствами алгебры логики.
Задача.
Составить расписание занятий так, чтобы математика была первым или вторым
уроком, информатика первым или третьим уроком, а физика – вторым или третьим.
В расписании всего три урока. Сколько вариантов расписания с такими условиями
можно составить?
Решение.
6
6 2
5
18
- Введём обозначения.
Пусть:
М1 = «Математика первым уроком»
М2 = «Математика вторым уроком»
И1 = «Информатика первым уроком»
И3 = «Информатика третьим уроком»
Ф2 = «Физика вторым уроком»
Ф3 = «Физика третьим уроком»
Тогда расписание можно свести к выражению:
(М1 М2) (И1 И3) (Ф2 Ф3)
- Раскроем скобки.
(М1 М2) (И1 И3) (Ф2 Ф3) = (М1И1 М1И3 М2И1 М2И3) (Ф2 Ф3)
=
М1·И1·Ф2 М1·И3·Ф2 М2·И1·Ф2 М2·И3·Ф2 М1·И1·Ф3 М1·И3·Ф3 М2·И1·Ф3
М2·И3·Ф3
Выбираем только непротиворечивые комбинации:
Ответ:
1 вариант – Математика, Физика, Информатика
2 вариант – Информатика, Математика, Физика
Задача.
Следователь допрашивает Клода, Жака и Дика. Клод утверждает, что Жак лжет, Жак
обвинял во лжи Дика, а Дик призывает не слушать ни того, ни другого.
Кто из допрашиваемых говорил правду?
Решение:
- Обозначим показания каждого из свидетелей буквами К, Ж и Д. Тогда известно, что:
1. Если Клод сказал правду (К), то Жак лжет (¬Ж), иначе (если Клод солгал, ¬К), то
Жак сказал правду (Ж)
2. Если Жак сказал правду (Ж), тогда Дик не прав, (¬Д), иначе лжет Жак (¬Ж), а Дик
прав (Д)
3. Если лжет Дик (Д), то Клод и Жак правы (Ж и К), иначе последние лгут (¬(Ж и К)),
а Дик – прав (Д)
Выразим эти высказывания на формальном языке логики:
1. К ¬Ж ¬К Ж
2. Ж ¬Д ¬Ж Д
3. Д ¬К ¬Ж ¬Д Ж)
Задача будет решена, если все три высказывания будут истинны, т.е. истинна их
конъюнкция:
(К·¬Ж ¬К·Ж) (Ж·¬Д ¬Ж·Д) ·¬К·¬Ж ¬Д·(К Ж)) (К·¬Ж· Ж·¬Д
К·¬Ж·¬Ж·Д ¬К·Ж·Ж·¬Д ¬К·Ж·¬Ж·Д) (Д·¬К·¬Ж ¬Д·К ¬Д·Ж) (К·¬Ж·¬Ж·Д
¬К·Ж·Ж·¬Д) (Д·¬К·¬Ж ¬Д·К ¬Д·Ж) К·¬Ж·¬Ж·Д·Д·¬К·¬Ж К·¬Ж·¬Ж·Д·¬Д·К
К·¬Ж·¬Ж·Д·¬Д·Ж ¬К·Ж·Ж·¬Д·Д·¬К·¬Ж ¬К·Ж·Ж·¬Д·¬Д·К ¬К·Ж·Ж·¬Д·¬Д·Ж
¬К·Ж·Ж·¬Д·¬Д·Ж ≡
¬К ¬Д Ж
19
- Итак, только Жак говорил правду.
Подведение итогов:
Каждый из этих методов хорош по-своему. Давайте кратко обобщим все эти методы.
Идея метода рассуждений состоит в том, что мы проводим рассуждения,
используя последовательно все условия задачи, и приходим к выводу, который и
будет являться ответом задачи.
Идея метода таблиц состоит в том, чтобы оформлять результаты логических
рассуждений с помощью таблицы.
Преимущества:
Наглядность:
Возможность контролировать процесс рассуждений;
Возможность формализовать некоторые логические рассуждения.
Основой применения графов для решения логических задач служит выявление и
последовательное исключение возможностей, заданных в условии. Основное
преимущество – это наглядность.
Идея метода блок схем состоит в следующем: описать последовательность
выполнения операций, определить порядок их выполнения и фиксировать
состояния.
Идея метода кругов Эйлера - требуется найти некоторое пересечение множеств
или их объединение, соблюдая условия задачи.
Метод Эйлера является незаменимым при решении некоторых задач, а также
упрощает рассуждения. Но иногда с помощью арифметических действий задачу
решить гораздо легче.
При решении задач с помощью алгебры логики обычно используется следующая
схема решения:
изучается условие задачи;
вводится система обозначений для логических высказываний;
конструируется логическая формула, описывающая логические связи
между всеми высказываниями условия задачи;
определяются значения истинности этой логической формулы;
из полученных значений истинности формулы определяются
значения истинности введённых логических высказываний, на
основании которых делается заключение о решении.