Исследование и сравнение способов решения логических задач

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 22.03.2019
Размер файла 1,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru//

Размещено на http://www.allbest.ru//

«Исследование и сравнение способов решения логических задач»

Выполнила

Торосян Надежда

Научный руководитель: Пяткина Г.А.

Москва 2013 г.

Введение

Вся наша жизнь - это непрерывное решение разнообразных логических проблем. Логические задачи отличаются от математических тем, что для их решения необходима сообразительность, а не какие-то особые знания, и, чаще всего, решающий логические задачи должен иметь в виду некоторые очевидные истины, такие как: отец старше своего сына; генерал старше майора по званию и т.п. Иначе говоря, решающий задачу использует исключительно логику. «Логика (от греч. logos - слово, понятие, рассуждение, разум) - наука о законах и формах рационального мышления, методах формализации содержательных теорий.» См.: Логика в информатике /В.Ю. Лыскова, Е.А. Ракитина Чтобы научиться логически мыслить, необходимо уметь анализировать, сравнивать, обобщать, систематизировать полученную информацию, а также доказывать и опровергать, определять и объяснять понятия. Во многих ситуациях человек действует интуитивно, или опираясь на жизненный опыт, не нуждаясь в пояснении своих решений, но при логическом подходе к проблеме всегда необходимо пояснение принятых решений и выводов. Решение логических задач в некоторой степени напоминает решение научной проблемы, так как исследователь сначала сталкивается с массой данных, и часто не имеет возможности сразу сделать какие-либо заключения. Поэтому ему приходится выдвигать одну или несколько гипотез, а затем сопоставлять полученные из исследования гипотез результаты с исходными данными. Если обнаруживается несоответствие теоретических данных фактам, гипотеза отвергается и заменяется новой, после чего проверятся так же, как предыдущая. И так до тех пор, пока результаты не совпадут с изначальными данными. Такой же принцип используется и при решении логических задач.

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

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

Цель работы - изучить различные известные способы решения логических задач и эффективность их применения к задачам разного типа и разработать рекомендации по поводу их применения.

Задачами моего исследования являются:

- изучить теоретически способы решения логических задач;

- сравнить между собой эффективность применения этих способов по отношении к разным типам задач;

- создать сайт, содержащий рекомендации по использованию разных способов в решении задач;

- написать программу в среде Delphi, позволяющую проверить навыки, полученные при изучении материала сайта;

- написать отчет о проделанной работе.

Моя работа будет состоять из двух частей: теоретической и практической. Теоретическая часть будет представлять собой подробное описание основных методов решения логических задач. Практическая часть будет представлять собой сайт и тестирующую программу.

В процессе работы над дипломом были использованы задачник по моделированию «Информатика и ИКТ» Н.В. Макаровой, справочник «Логика в информатике» В. Ю. Лысковой и Е. А. Ракитиной. При выполнении следующей части работы будут использованы учебник для 9 класса «Информатика и ИКТ. Базовый курс Н. Д. Угриновича и самоучитель «Программирование в среде Delphi 7» Галисеева Г.В.

Глава I. Теоретическая часть. Методы решения логических задач

1.1 Метод рассуждений

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

Рассмотрим этот способ на примере некоторых задач.

Задача 1. В поездке пятеро друзей - Антон, Борис, Вадим, Дима и Гриша знакомились с попутчицей. Они предложили ей отгадать их фамилии, и каждый из них высказал одно истинное и одно ложное утверждение. Вот что они сказали:

Дима: моя фамилия - Мишин, а фамилия Бориса - Хохлов.

Антон: Мишин - это моя фамилия, а фамилия Вадима - Белкин.

Борис: фамилия Вадима - Тихонов, а моя фамилия - Мишин.

Вадим: моя фамилия - Белкин, а фамилия Гриши - Чехов.

Гриша: да, моя фамилия Чехов, а фамилия Антона - Тихонов.

Какую фамилию носит каждый из друзей?

Решение. Обозначим высказывательную форму «юноша по имени А носит фамилию Б» как АБ, где буквы А и Б соответствуют первым буквам имени и фамилии. Далее, зафиксируем высказывания каждого мальчика. Получается:

ДМ и БХ; АМ и ВБ; ВТ и БМ; ВБ и ГЧ; ГЧ и АТ.

Сначала, допустим, что истинно ДМ. Следовательно, АМ и БМ ложно, так как у Антона и Бориса должны быть другие фамилии. Но если АМ и БМ ложны, то должны быть верны другие два высказывания из пар, то есть ВБ и ВТ, но они не могут быть истинными одновременно. Вернемся к началу: из первой пары высказываний ДМ не верно, значит, верно БХ. А значит, те случаи, в которых первая буква Б, а вторая не Х ложны. Таковым является второе высказывание из третьей пары - БМ, а значит из этой пары верно второе высказывание, то есть ВТ. С ним можно поступить также как и с предыдущим верным, в результате чего получаем, что из четвертой пары верно ГЧ, а из второй - АМ. Следовательно, получаем такие верные высказывания: БХ, ВТ, ГЧ, АМ. Остается одна свободная буква имени и одна буква фамилии - ДБ. Получаем ответ: Фамилия Бориса - Хохлов, Вадима - Тихонов, Гриши - Чехов, Антона - Мишин, а Димы - Белкин.

Задача 2. В первом туре школьного конкурса «Эрудит» в четверку лучших вошли: Дима, Катя, Миша и Нина. И конечно, болельщики высказывали свои предположения о распределении мест во втором, финальном туре. Один считал, что первым будет Дима, а Миша будет вторым. Другой болельщик выразил надежду на то, что Катя займет четвертое место, а второе место достанется Нине. Третий же был уверен в том, что Катя займет третье место, а на втором месте будет Дима. В результате оказалось, что каждый из болельщиков был прав только в одном из своих прогнозов. Какие места заняли Дима, Катя, Миша, Нина?

Решение. Мы имеем три пары высказываний болельщиков, в каждой из которых одно высказывание истинно, а второе ложно: Дима-1 и Миша-2; Катя-4 и Нина-2; Катя-3 и Дима-2. Предположим, что из первой пары верно второе высказывание, то есть то, что Миша-2. Из этого следует, что больше никто не может быть вторым, то есть вторые высказывания во второй и третьей парах ложны. Остается считать истинными первые высказывания в этих парах, то есть Катя-4 и Катя-3, что, очевидно, невозможно. Значит, изначальное предположение было неверно. Значит, из первой пары верно первое высказывание, что Дима-1. Значит, последнее высказывание третьей пары, что Дима-2 ложно, а следовательно верно то, что Катя-3. Если Катя-3, то первое высказывание второй пары, что Катя-4 ложно, а значит второе, что Нина-2 верно. Получаем, что Дима-1, Нина-2, Катя-3, а следовательно Миша-4.

1.2 Метод таблиц

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

Рассмотрим данный метод на примере нескольких задач.

Задача 3. В симфонический оркестр приняли на работу трех музыкантов - Брауна, Смита и Вессона, умеющих играть на скрипке, флейте, альте, кларнете, гобое и трубе. Известно, что:

Смит самый высокий;

Играющий на скрипке ниже ростом играющего на флейте;

Играющие на скрипке и флейте и Браун любят пиццу;

Когда между альтистом и трубачом возникает ссора, Смит мирит их;

Браун не умеет играть ни на трубе, ни на гобое.

На каких инструментах играет каждый из музыкантов, если каждый владеет двумя инструментами?

Решение. Составим таблицу, в которой в строках будут фамилии музыкантов, а в столбцах названия музыкальных инструментов. Отразим в ней условия задачи, заполнив соответствующие клетки + и - в зависимости от того, возможен такой вариант или нет. Так, если сопоставить 1 и 2 утверждения, можно сделать вывод, что Смит не играет на скрипке. Из условия 4 следует, что Смит не играет ни на альте, ни на трубе и из условий 3 и 5, что Браун не играет ни на скрипке, ни на флейте, ни на трубе, ни на гобое. Итак, получаем таблицу со знаками «-» в соответствующих клетках:

скрипка

флейта

альт

кларнет

гобой

труба

Браун

-

-

-

-

Смит

-

-

-

Вессон

Теперь, мы видим, что в столбцах «скрипка» и «труба» стоят минусы в двух строках из трех, значит остается только один вариант - поставить в оставшийся строке «+». Получается, что Вессон играет на трубе и на скрипке. Тогда, в строке «Вессон» можно поставить минусы во всех остальных клеточках. Вот что мы получим:

скрипка

флейта

альт

кларнет

гобой

труба

Браун

-

-

-

-

Смит

-

-

-

Вессон

+

-

-

-

-

+

Теперь, в столбцах «флейта», «альт» и «гобой» тоже стоит по два минуса. Значит, в оставшихся клеточках этих столбцов тоже можно поставить знак «+».

скрипка

флейта

альт

кларнет

гобой

труба

Браун

-

-

+

-

-

Смит

-

+

-

+

-

Вессон

+

-

-

-

-

+

Итак, остается недозаполненным только один столбец - «кларнет». А именно, клеточки на пересечении этого столбца со строками «Браун» и «Смит». В этом случае, смотрим на количество знаков «+» в этих строках. В строке «Смит» их два, значит, в соответствующей клеточке мы ставим «-», так как в строке не может быть три «+», потому что каждый музыкант играет только на двух музыкальных инструментах. Значит, в клеточке на пересечении строки «Браун» и столбца «кларнет» ставим «+». Получается полностью заполненная таблица:

скрипка

флейта

альт

кларнет

гобой

труба

Браун

-

-

+

+

-

-

Смит

-

+

-

-

+

-

Вессон

+

-

-

-

-

+

Ответ: Браун играет на альте и кларнете, Смит - на флейте и гобое, а Вессон - на скрипке и трубе.

Задача 4. Беседуют трое друзей: Белокуров, Чернов и Рыжов. Брюнет сказал Белокурову: «Любопытно, что один из нас блондин, другой брюнет, а третий - рыжий, но ни у кого цвет волос не соответствует фамилии». Какой цвет волос у каждого из друзей?

Решение. Для начала составим таблицу, в которой в строках будут фамилии мальчиков, а в столбцах - цвета волос. Так как ни у одного из друзей цвет волос не соответствует фамилии, можно сразу поставить «-» в соответствующих клеточках:

блондин

брюнет

рыжий

Белокуров

-

Чернов

-

Рыжов

-

Далее, следует обратить внимание на то, что в разговоре брюнет обращается к Белокурову, а значит, это не может быть один и тот же человек. Ставим «-» в соответствующей клеточке:

блондин

брюнет

рыжий

Белокуров

-

-

Чернов

-

Рыжов

-

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

блондин

брюнет

рыжий

Белокуров

-

-

Чернов

-

Рыжов

-

+

-

Теперь, в столбце «блондин» уже два минуса и одна свободная клеточка. Значит, в ней мы можем поставить «+», что будет означать, что фамилия блондина - Чернов. Следовательно, в оставшейся свободной клеточке в строке «Чернов» можно поставить «-», так как у Чернова может быть только один цвет волос, то есть только один «+».

блондин

брюнет

рыжий

Белокуров

-

-

Чернов

+

-

-

Рыжов

-

+

-

Теперь в таблице остается только одна свободная клеточка, соответствующая утверждению «Белокуров - рыжий». И поскольку Чернов и Рыжов не рыжие, а Белокуров не брюнет и не блондин, то это утверждение верно. Ставим знак «+»:

блондин

брюнет

рыжий

Белокуров

-

-

+

Чернов

+

-

-

Рыжов

-

+

-

Ответ: Белокуров - рыжий, Чернов - блондин, а Рыжов - брюнет.

1.3 Метод графов

Граф - это схема, в которой обозначается только наличие объектов и наличие и вид связи между объектами. Объекты в графе представляются вершинами (кружочками, прямоугольниками и т.п.), а связи - как дуги, или рёбра. Сборник научных статей. Решение занимательных логических задач: http://e-lib.gasu.ru/konf/sssk/arhive/2006/01/R_5_12.html - данные соответствуют 27.12.12 Если связь однонаправленная, то связь представляется дугой и обозначается на схеме линией со стрелкой, а если двусторонняя, то ребром и обозначается линией без стрелок. Как и метод таблиц, метод графов в основном используется для решения задач типа «кто есть кто?». Рассмотрим этот метод на примере решения задачи.

Задача 5. Жила-была одна дружная семья: мама, папа и сын. Они все любили делать вместе, но вот мультфильмы любили разные: «Ну погоди!», «Покемоны», «Том и Джерри». Определите, какой мультфильм любит каждый из них, если мама, папа и любитель мультфильма «Покемоны» никогда не унывают, а папа и любитель мультфильма «Том и Джерри» делают зарядку по утрам?

Решение. Рассмотрим два множества: множество людей (мама, папа, сын) и множество мультфильмов («Ну погоди!», «Покемоны», «Том и Джерри»). Обозначим элементы множеств точками:

Будем соединять точки, соответствующие друг другу сплошной линией, а не соответствующие - прерывистой. По условию задачи у каждого человека только один любимый мультфильм. Из фрагмента условия «мама, папа и любитель мультфильма «Покемоны» никогда не унывают» следует, что мама и папа не являются любителями мультфильма «Покемоны». Из фрагмента «папа и любитель мультфильма «Том и Джерри» делают зарядку по утрам» следует, что папа - не любитель мультфильма «Том и Джерри»

Из условия задачи следует, что нужно найти единственно возможное соответствие между элементами двух множеств. Так как в каждом множестве по три элемента, то если точка соединена с двумя точками прерывистой линией, то с третьей точкой она обязательно должна быть соединена сплошной. От элементов «папа» и «Покемоны» графа отходят по две прерывистые линии, а значит, третьи линии должны быть сплошные.

Итак, получается, что папа любит мультфильм «Ну погоди!», а сын - «Покемоны». В обоих множествах остается по одному элементу, значит мама любит мультфильм «Том и Джерри».

1.4 Метод блок-схем

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

Задача 6. Имеются два сосуда: трехлитровый и пятилитровый. Нужно, пользуясь этими сосудами, получить 1, 2, 3, 4, 5, 6, 7 и 8 литров воды. Также в распоряжении имеется водопроводный кран и раковина, куда можно сливать воду.

Решение. Перечислим все возможные операции, которые могут быть использованы, и введем для них следующие сокращенные обозначения: НБ -- наполнить большой сосуд водой из-под крана; НМ -- наполнить маленький сосуд водой из-под крана; ОБ -- опорожнить большой сосуд, вылив воду в раковину; ОМ -- опорожнить маленький сосуд, вылив воду в раковину; Б>М -- перелить из большого сосуда в маленький, пока большой сосуд не опустеет или маленький сосуд не наполнится; М>Б -- перелить из маленького в большой, пока маленький сосуд не опустеет или большой сосуд не наполнится. Выделим среди перечисленных команд только три: НБ, Б>М, ОМ. Кроме этих трех команд рассмотрим еще две вспомогательные команды: Б = 0? -- посмотреть, пуст ли большой сосуд; М = З? -- посмотреть, наполнен ли маленький сосуд.

В зависимости от результатов этого осмотра мы переходим к выполнению следующей команды по одному из двух ключей - "да" или "нет" (командой условного перехода)

Договоримся теперь о последовательности выполнения выделенных команд. После Б>М будем выполнять ОМ всякий раз, как меньший сосуд оказывается наполненным, и НБ всякий раз, как больший сосуд будет опорожнен. Последовательность команд изобразим в виде блок-схемы.

Начнем выполнение программы. Будем фиксировать, как меняется количество воды в сосудах, если действовать по приведенной схеме. Результаты оформим в виде таблицы:

Большой

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 литров, надо наполнить оба сосуда.

1.5 Метод кругов Эйлера

Суть данного метода - определение количества элементов, обладающих общими свойствами. Способ назван по фамилии его изобретателя Леонарда Эйлера. Задачи, которые решаются с помощью кругов Эйлера, чаще всего нельзя решить никак иначе. Рассмотрим этот метод на примере решения некоторых задач.

Задача 7. В магазин «Мир музыки» пришло 35 покупателей. Из них 20 человек купили диски «Metallica», 11 - диски «Skillet», 10 человек не купили ни одного диска. Сколько человек купили диски и «Metallica», и «Skillet»?

Решение. Изобразим эти множества на кругах Эйлера.

Теперь считаем: всего внутри большого круга 35 покупателей, значит внутри двух меньших 35-10=25 покупателей. По условию 20 покупателей купили диск «Metallica», следовательно, только диск «Skillet» купили 25-20=5 покупателей. Также есть условие, что диск «Skillet» купили 11 человек, а значит, 11-5=6 покупателей купили диски и «Metallica», и «Skillet».

Ответ: 6 покупателей купили диски и «Metallica», и «Skillet».

Задача 8. В классе 36 человек. Ученики этого класса посещают математический, физический и химический кружки, причем математический кружок посещают 18 человек, физический - 14, химический - 10. Кроме того, известно, что 2 человека посещают все три кружка, 8 человек - и математический, и физический, 5 - и математический, и химический, 3 - и физический, и химический. Сколько учеников класса не посещают никаких кружков?

Решение. Изобразим все множества в виде кругов. На пересечении всех трех множеств, находящихся внутри большого множества 2 человека. Так как 8 человек посещают математический и физический кружки, значит, тех, кто посещает их без химического 8-2=6. Так же посчитаем количество человек, которые посещают только математический и химический, и только физический и химический. Получается 5-2=3 и 3-2=1.

Далее, найдем число учащихся, посещающих только один кружок. Так как всего кружок математики посещает 18 человек, а число учеников, посещающих также другие кружки равно 6+2+3=11, то число учеников, посещающих только кружок математики равно 18-11=7. Аналогичным образом вычислим число учеников, посещающих только кружок физики и только кружок химии. Получим 14-(6+2+1)=14-9=5 и 10-(2+1+3)=10-6=4. Впишем эти числа в соответствующие области.

Внутри большого круга мы получили 7 непересекающихся областей, численные значения которых нам известны, и оставшуюся область, численное значение которой нам надо найти. Так как всего в классе 36 человек, то надо из 36 вычесть суммы всех известных областей, обозначающих количество учеников, посещающих кружки. 36-(7+3+2+6+1+5+4)=36-28=8. Ответ: в классе 8 учеников, не посещающих кружки.

1.6 Метод математического бильярда

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

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

Рассмотрим задачу 6, которая служила примером использования метода блок-схем.

Задача 6. Имеются два сосуда: трехлитровый и пятилитровый. Нужно, пользуясь этими сосудами, получить 1, 2, 3, 4, 5, 6, 7 и 8 литров воды. Также в распоряжении имеется водопроводный кран и раковина, куда можно сливать воду.

Решение. В рассматриваемой задаче стороны параллелограмма должны иметь длины 3 и 5 единиц. По горизонтали будем откладывать количество воды в литрах в 5-литровом сосуде, а по вертикали - в 3-литровом сосуде. На всем параллелограмме нанесена сетка из одинаковых равносторонних треугольников.

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

Пусть шар находится в левом нижнем углу и после удара начнет перемещаться вверх вдоль левой боковой стороны параллелограмма до тех пор, пока не достигнет верхней стороны в точке А. Это означает, что мы полностью наполнили водой малый сосуд. Отразившись упруго, шар покатится вправо вниз и ударится о нижний борт в точке В, координаты которой 3 по горизонтали и 0 по вертикали. Это означает, что в большом сосуде 3 литра воды, а в малом сосуде воды нет, то есть мы перелили воду из малого сосуда в большой сосуд.

Пусть шар находится в левом нижнем углу и после удара начнет перемещаться вверх вдоль левой боковой стороны параллелограмма до тех пор, пока не достигнет верхней стороны в точке А. Это означает, что мы полностью наполнили водой малый сосуд. Отразившись упруго, шар покатится вправо вниз и ударится о нижний борт в точке В, координаты которой 3 по горизонтали и 0 по вертикали. Это означает, что в большом сосуде 3 литра воды, а в малом сосуде воды нет, то есть мы перелили воду из малого сосуда в большой сосуд.

О

А

В

Н

М

0

3

0

3

1

1

0

3

0

Б

0

0

3

3

5

0

1

1

4

Однако это решение не является самым коротким. Существует второй путь, когда воду сначала наливают в пятилитровый сосуд. Если на диаграмме шар из точки О покатится вправо по нижней стороне параллелограмма и затем, отразившись от правой боковой стороны, в точку 2 на верхней стороне параллелограмма и т.д., то получим более короткое решение задачи. Можно показать, что полученное решение с 6 переливаниями уже является самым коротким.

1.7 Сравнение методов решения логических задач

Как видно из предыдущих параграфов, задачи бывают нескольких типов. Например, задачи типа «кто есть кто?» или задачи «на переливание». Также есть отдельный тип задач «на множества», решаемых с помощью кругов Эйлера.

Первый тип задач, задачи типа «кто есть кто?» решаются с помощью трех из описанных методов. Это метод рассуждений, метод таблиц и метод графов. Самые простые можно решить с помощью метода рассуждений, то есть не делая никаких записей, так как все умозаключения можно производить в уме. Если данных больше, или если для решения задачи необходимо представить материал более наглядно, используются метод таблиц и метод графов. Таблица дает возможность объединить все данные задачи и делать пометки на каждом этапе решения. Графы удобны соей наглядностью. Однако зачастую ими неудобно пользоваться при решении задач с большим количеством исходных данных из-за чрезмерной громоздкости.

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

Глава II. Практическая часть. Разработка сайта и тестирующей программы

2.1 Сайт с описанием методов решения логических задач

Как уже было сказано в введении, одной из задач моего диплома было создание сайта с описанием методов решения логических задач для удобства ознакомления с ними. Сайт был написан на языке HTML с использованием элементов JavaScript, так как HTML прост в использовании и изучении и является стандартным языком разметки веб - страниц.

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

На основной странице сайта расположены три связанных фрейма (рис.1)

Рис.1

Верхний фрейм содержит заголовок и бегущую строку с приветственной фразой (декоративный элемент), задаваемой тегом <marquee>. Программный код этого фрейма представлен в Приложении 1.

В нижнем левом фрейме расположен список методов решения логических задач, рассматриваемых в дипломной работе. Название каждого метода представляет собой ссылку на его описание, отрабатываемую в нижнем правом фрейме. Для создания ссылок был использован тег <a href>, а также одно из его основных свойств - свойство target. Также в качестве элемента декоративного оформления текста была использована функция, написанная на JavaScript. Программный код нижнего левого фрейма представлен в Приложении 2.

2.2 Тестирующая программа

Вторая половина теоретической части моего диплома - программа, позволяющая проверить знания, полученные в результате изучения теоретической части работы. Программа написала в HTML с использованием JavaScript.

Как сказано в введении, я планировала написание тестирующей программы в среде программирования Delphi, однако в ходе работы мной был сделан вывод, что JavaScript больше подходит для создания тестирующей программы в данном случае, так как является прототипно - ориентированным сценарным языком программирования, широко применяемым в создании веб - страниц.

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

Рис.2

Рис.3

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

Заключение.

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

Изучила подобранную литературу

Описала каждый из методов решения на примере конкретных задач и провела их сравнение

Создала сайт по теме дипломной работы с описанием каждого метода

Написала тестирующую программу для проверки знаний, полученных при прочтении теоретической части моего диплома

Написала отчет о проделанной работе

Составила презентацию результатов исследования в бумажной и электронной формах

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

Список литературы

Информатика и ИКТ. Задачник по моделированию. 9-11 класс. Базовый уровень / Под ред. проф. Н. В. Макаровой. - Питер, 2008. - 192 с.: ил.

Информатика и ИКТ. Базовый курс: Учебник для 9 класса / Н. Д. Угринович. - 3-е изд. - М.: БИНОМ. Лаборатория знаний, 2006. - 320 с.: ил.

Программирование в среде Delphi 7. Самоучитель. : - М. : Издательский дом «Вильямс», 2003. - 288 с. : ил.

Логика в информатике /В.Ю. Лыскова, Е.А. Ракитина; М.: Лаборатория Базовых Знаний, 2004. - 160с.:ил.

Приложение 1

<html>

<head>

<title>заголовок</title>

</head>

<body background=f-m.png text=#990045 bgcolor="#FFDCD2">

<h2 align=center>Методы решения логических задач</h2><p>

<center><marquee width=500 height=30 bgcolor=#FFDCD2 direction=left behavior=alternate

scrollamount=3 scrolldelay=9 align=middle>Добро пожаловать на наш сайт!

</marquee></center>

</body>

</html>

Приложение 2

<html>

<head>

<title> ссылки </title>

<SCRIPT>

k=0;

function color()

{cvet=new Array("red","blue","yellow","gold","orange","purple","navy");

head1.style.color=cvet[k];

k++;

if (k==cvet.length)k=0;

setTimeout("color()",200);}

</SCRIPT>

</head>

<body onLoad="color()" background=f2.jpg text=#000098>

<center><img src=k.png align=center width=100 height=83></center><p>

<a href=0.htm target="frame3"> На главную </a><p>

<a>1.Методы решения логических задач</a><p>

<a href=1.htm target="frame3"> Метод рассуждений </a><p>

<a href=2.htm target="frame3"> Метод таблиц</a><p>

<a href=3.htm target="frame3"> Метод графов</a><p>

<a href=4.htm target="frame3"> Метод блок - схем</a><p>

<a href=5.htm target="frame3"> Метод кругов Эйлера</a><p>

<a href=6.htm target="frame3"> Метод математического бильярда</a><p>

<a href=7.htm target="frame3"> Сравнение методов решения логических задач</a><p>

<h3 ID="head1"><i>Вы можете пройти тест на решение логических задач разными методами!</i></h3>

<a href=test_main.htm target=_blank> Тест</a><p>

</body>

</html>

Приложение 3

<html>

<head>

<meta http-equiv="Content-Language" content="ru">

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

<title>Тест</title>

<script>

function sbros()

{for(i=0;i<5;i++){document.forms[i].reset();}}

function test()

{var re=new Array(7,6,7,8,9);

t=new Array(0,0,0,0,0);

r=0;

k=0;

for(i=0;i<5;i++)

{for(j=6;j<10;j++){if(document.forms[i].elements[j].checked==true)

t[i]=j}}

{if((document.forms[0].elements[0].checked==true)&&(document.forms[0].elements[1].checked==false)&&(document.forms[0].elements[2].checked==true)&&

(document.forms[0].elements[3].checked==false)&&(document.forms[0].elements[4].checked==false)&&(document.forms[0].elements[5].checked==false))k++;}

{if((document.forms[1].elements[0].checked==true)&&(document.forms[1].elements[1].checked==false)&&(document.forms[1].elements[2].checked==true)&&

(document.forms[1].elements[3].checked==false)&&(document.forms[1].elements[4].checked==false)&&(document.forms[1].elements[5].checked==false))k++;}

{if((document.forms[2].elements[0].checked==false)&&(document.forms[2].elements[1].checked==false)&&(document.forms[2].elements[2].checked==false)&&

(document.forms[2].elements[3].checked==true)&&(document.forms[2].elements[4].checked==false)&&(document.forms[2].elements[5].checked==true))k++;}

{if((document.forms[3].elements[0].checked==false)&&(document.forms[3].elements[1].checked==false)&&(document.forms[3].elements[2].checked==false)&&

(document.forms[3].elements[3].checked==false)&&(document.forms[3].elements[4].checked==true)&&(document.forms[3].elements[5].checked==false))k++;}

{if((document.forms[4].elements[0].checked==false)&&(document.forms[4].elements[1].checked==true)&&(document.forms[4].elements[2].checked==false)&&

(document.forms[4].elements[3].checked==false)&&(document.forms[4].elements[4].checked==false)&&(document.forms[4].elements[5].checked==false))k++;}

for(i=0;i<5;i++)

{if(re[i]==t[i])r++};

{alert("Оценка за задачи = "+r+", оценка за выбор методов решения = "+k+".");}}

</script>

</head>

<body bgcolor="FFCCCC">

<form method="POST" action="--WEBBOT-SELF--">

<!--webbot bot="SaveResults" U-File="C:\Users\Nadya-T\Desktop\_private\form_results.csv" S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->

<p><b>Задача 1. </b>Левин, Митерев, Набатов работают в банке, в качестве бухгалтера, кассира и экономиста. Если Набатов - экономист, то Митерев - бухгалтер. Если Митерев - не кассир, то Левин - не экономист. Если Левин - бухгалтер, то Набатов - экономист. Кто какую должность занимает?</p>

<p>Каким методом/методами можно решить данную задачу?</p>

<p><input type="checkbox" name="C1" value="ON">рассуждений

<input type="checkbox" name="C2" value="ON">таблиц

<input type="checkbox" name="C3" value="ON">графов

<input type="checkbox" name="C4" value="ON">блок-схем

<input type="checkbox" name="C5" value="ON">кругов Эйлера

<input type="checkbox" name="C6" value="ON">математического бильярда</p>

<p>Выберите правильный ответ:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>

<p><input type="radio" value="V9" name="R1">Левин - бухгалтер,

Митерев - кассир, Набатов - экономист</p>

<p><input type="radio" value="V8" name="R1">Левин - кассир, Митерев -

экономист, Набатов - бухгалтер</p>

<p><input type="radio" value="V7" name="R1">Левин - кассир, Митерев -

бухгалтер, Набатов - экономист</p>

<p><input type="radio" value="V10" name="R1">Левин - экономист, Митерев

- бухгалтер, Набатов - кассир</p>

<p>&nbsp;</p>

</form>

<form method="POST" action="--WEBBOT-SELF--">

<!--webbot bot="SaveResults" U-File="C:\Users\Nadya-T\Desktop\_private\form_results.csv" S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->

<p class="MsoNormal"><b>Задача 2. </b>В соревнованиях по гимнастике

участвуют: Аня, Валя, Таня и Даша. Болельщики строят прогнозы:<br>

1) Таня займет I место, Валя - II;<br>

2) Таня займет II место, Даша - III;<br>

3) Аня займет II место, Даша - IV.<br>

По окончании соревнований оказалось, что в каждом предположении только

одно из высказываний каждого болельщика истинно, другое - ложно. Каковы

результаты соревнований, если на каждом месте по одной девушке?</p>

<p>Каким методом/методами можно решить данную задачу?</p>

<p><input type="checkbox" name="C7" value="ON">рассуждений

<input type="checkbox" name="C8" value="ON">таблиц

<input type="checkbox" name="C9" value="ON">графов

<input type="checkbox" name="C10" value="ON">блок-схем

<input type="checkbox" name="C11" value="ON">кругов Эйлера

<input type="checkbox" name="C12" value="ON">математического бильярда</p>

<p>Выберите правильный ответ:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>

<p><input type="radio" value="V9" name="R1">Аня - 2, Валя - 4,

Таня - 1, Даша - 3</p>

<p><input type="radio" value="V10" name="R1">Аня - 3, Валя - 2, Таня -

3, Даша - 1</p>

<p><input type="radio" value="V11" name="R1">Аня - 2, Валя - 1, Таня -

2, Даша - 4</p>

<p><input type="radio" value="V12" name="R1">Аня - 1, Валя - 3, Таня -

2, Даша - 4</p>

</form>

<form method="POST" action="--WEBBOT-SELF--">

<!--webbot bot="SaveResults" U-File="C:\Users\Nadya-T\Desktop\_private\form_results.csv" S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->

<p><b>Задача 3. </b>

<span style="font-size: 13.5pt; font-family: Times New Roman; color: black">

Как разделить поровну между двумя семьями 12 литров хлебного кваса,

находящегося в двенадцатилитровом сосуде, воспользовавшись для этого

двумя пустыми сосудами: 8-литровым и 3-литровым? В ответе укажите

количество ходов для решения задачи.</span></p>

<p>Каким методом/методами можно решить данную задачу?</p>

<p><input type="checkbox" name="C13" value="ON">рассуждений

<input type="checkbox" name="C14" value="ON">таблиц

<input type="checkbox" name="C15" value="ON">графов

<input type="checkbox" name="C16" value="ON">блок-схем

<input type="checkbox" name="C17" value="ON">кругов Эйлера

<input type="checkbox" name="C18" value="ON">математического бильярда</p>

<p>Выберите правильный ответ:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>

<p><input type="radio" value="V9" name="R1">3</p>

<p><input type="radio" value="V10" name="R1">5</p>

<p><input type="radio" value="V11" name="R1">6</p>

<p><input type="radio" value="V12" name="R1">8</p>

</form>

<form method="POST" action="--WEBBOT-SELF--">

<!--webbot bot="SaveResults" U-File="C:\Users\Nadya-T\Desktop\_private\form_results.csv" S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->

<p><b>Задача 4. </b><strong>

<span style="font-size:13.5pt;color:black;font-weight:

normal">В&nbsp; трёх&nbsp; седьмых&nbsp; классах 70 ребят. Из&nbsp; них&nbsp; 27&nbsp; занимаются&nbsp; в&nbsp;

драмкружке,&nbsp; 32&nbsp; поют&nbsp; в хоре,&nbsp; 22&nbsp; увлекаются&nbsp; спортом.&nbsp; В&nbsp; драмкружке&nbsp;

10 ребят из хора, в хоре 6 спортсменов, в драмкружке 8&nbsp; спортсменов;&nbsp; 3&nbsp;

спортсмена&nbsp; посещают&nbsp; и&nbsp; драмкружок&nbsp; и&nbsp; хор. Сколько&nbsp; ребят&nbsp; не&nbsp; поют&nbsp;

в&nbsp; хоре,&nbsp; не увлекаются спортом и не занимаются в драмкружке?</span></strong></p>

<p>Каким методом/методами можно решить данную задачу?</p>

<p><input type="checkbox" name="C19" value="ON">рассуждений

<input type="checkbox" name="C20" value="ON">таблиц

<input type="checkbox" name="C21" value="ON">графов

<input type="checkbox" name="C22" value="ON">блок-схем

<input type="checkbox" name="C23" value="ON">кругов Эйлера

<input type="checkbox" name="C24" value="ON">математического бильярда</p>

<p>Выберите правильный ответ:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>

<p><input type="radio" value="V9" name="R1">3</p>

<p><input type="radio" value="V10" name="R1">8</p>

<p><input type="radio" value="V11" name="R1">10</p>

<p><input type="radio" value="V12" name="R1">15</p>

</form>

<form method="POST" action="--WEBBOT-SELF--">

<!--webbot bot="SaveResults" U-File="C:\Users\Nadya-T\Desktop\_private\form_results.csv" S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->

<p><b>Задача 5. </b>

<span style="font-size: 13.5pt; font-family: Times New Roman; background-image: none; background-repeat: repeat; background-attachment: scroll; background-position: 0% 0%">

Пятеро одноклассников - Саша, Катя, Егор, Вика и Андрей стали

победителями олимпиад школьников по физике, математике, информатике,

литературе и химии. Известно, что: победитель олимпиады по информатике

учит Сашу и Катю работе на компьютере; Егор и Вика тоже заинтересовались

информатикой; Катя всегда побаивалась физики; Катя, Егор и победитель

олимпиады по литературе занимаются плаванием; Егор и Катя поздравили

победителя олимпиады по математике; Саша сожалеет о том, что у него

остается мало времени на литературу. Победителем какой олимпиады стал

каждый из этих ребят?</span></p>

<p>Каким методом/методами можно решить данную задачу?</p>

<p><input type="checkbox" name="C25" value="ON">рассуждений

<input type="checkbox" name="C26" value="ON">таблиц

<input type="checkbox" name="C27" value="ON">графов

<input type="checkbox" name="C28" value="ON">блок-схем

<input type="checkbox" name="C29" value="ON">кругов Эйлера

<input type="checkbox" name="C30" value="ON">математического бильярда</p>

<p>Выберите правильный ответ:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>

<p><input type="radio" value="V9" name="R1">Саша - химия, Катя -

литература, Егор - физика, Вика - математика, Андрей - информатика</p>

<p><input type="radio" value="V10" name="R1">Саша - математика, Катя -

литература, Егор - информатика, Вика - химия, Андрей - физика</p>

<p><input type="radio" value="V11" name="R1">Саша - литература, Катя -

физика, Егор - химия, Вика - информатика, Андрей - математика</p>

<p><input type="radio" value="V12" name="R1">Саша - математика, Катя -

химия, Егор - физика, Вика - литература, Андрей - информатика</p>

</form>

<form method="POST" action="--WEBBOT-SELF--">

<!--webbot bot="SaveResults" U-File="C:\Пользователи\User\рабочий стол\диплом_сайт\form_results.csv" S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->

<p><input type="button" value="Готово" name="B1"onClick="test()"><span lang="en-us">

<input type="button" value="Очистить" name="B2"onClick="sbros()"></span></p>

</form>

<p>&nbsp;</p>

</body>

</html>

Размещено на Allbest.ru

...

Подобные документы

  • Примеры решения математических и экономических задач, выполняемых с помощью средств электронной таблицы Excel и логических функций. Создание и форматирование таблиц. Создание разных баз данных с помощью системы Microsoft Access с использованием запроса.

    контрольная работа [88,7 K], добавлен 28.05.2009

  • Фурье и Данцига как основоположники методов математического программирования. Знакомство с теорией решения транспортных задач. Анализ способов применения симплекс-метода. Рассмотрение примера решения транспортной задачи в области электроэнергетики.

    презентация [981,0 K], добавлен 28.04.2014

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

    контрольная работа [259,8 K], добавлен 22.05.2010

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

    курсовая работа [821,6 K], добавлен 19.03.2012

  • Принципы составления простейших логических программ на примере баз знаний "Родственные отношения". Составление ориентированного графа без циклов, решения алгебраических уравнений с легко воспринимаемой внутренней логикой. Алгоритмы и листинги программ.

    лабораторная работа [50,5 K], добавлен 24.01.2014

  • Понятие логических выражений, их назначение в создании алгоритмов. Список операторов сравнения, используемых в табличном редакторе Excel. Синтаксис функции "если" и примеры ее использования. Логические операторы "и", "или", "не", "истина", "ложь".

    презентация [108,9 K], добавлен 07.03.2013

  • Способы применения нейронных сетей для решения различных математических и логических задач. Принципы архитектуры их построения и цели работы программных комплексов. Основные достоинства и недостатки каждой из них. Пример рекуррентной сети Элмана.

    курсовая работа [377,4 K], добавлен 26.02.2015

  • Определение задач и основной концепции сайта, особенностей целевой аудитории, выбор среды разработки и языка программирования. Характеристика способов регистрации и связи клиента с администрацией. Изучение интерфейса, расположения и назначения страниц.

    курсовая работа [1,4 M], добавлен 28.05.2012

  • Использование информационных технологий для решения транспортных задач. Составление программ и решение задачи средствами Pascal10; алгоритм решения. Работа со средствами пакета Microsoft Excel18 и MathCad. Таблица исходных данных, построение диаграммы.

    курсовая работа [749,1 K], добавлен 13.08.2012

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

    реферат [42,4 K], добавлен 06.03.2010

  • Способы формирования у учащихся знаний по информационным технологиям в математике, умения правильного выбора инструментария для решения практических задач. Разработка методики решения математических задач с использованием прикладного пакета Maple 9.

    дипломная работа [2,4 M], добавлен 19.03.2012

  • Создание программы для мобильного устройства, для решения геометрических задач: нахождения площади треугольника по формуле Герона, площади прямоугольного треугольника и круга. Реализация программных модулей, интерфейс программы, руководство пользователя.

    курсовая работа [314,9 K], добавлен 07.12.2014

  • Возможности современных компьютерных технологий решения задач в средах MS Excel, MS Word. Область программирования в офисных пакетах. Применение ЭВМ в решении математических задач. Разработка программного обеспечения. Разработка приложений с помощью VBA.

    дипломная работа [742,2 K], добавлен 29.01.2009

  • Изучение в реальных условиях способов представления знаний во Всемирной сети. Представления данных в интернет и способы эффективной публикации данных. Конфигурация Web-сервера на виртуальном хостинге. Настройка и отладка работы сайтов на разных CMS.

    отчет по практике [947,2 K], добавлен 09.02.2012

  • Модель динамического программирования для решения задач оптимального распределения ресурсов. Принцип оптимальности, уравнение Беллмана. Двумерная и дискретная динамическая модель. Значение метода в решении прикладных задач различных областей науки.

    курсовая работа [400,2 K], добавлен 01.10.2009

  • Разработка программы на языке Си++ и осуществление постановки и выбора алгоритмов решения задач обработки экономической информации, создание и редактирование базы данных, сортировка записей по определенному запросу, анализ эффективности обработки данных.

    контрольная работа [316,8 K], добавлен 28.08.2012

  • Характеристика параметрических методов решения задач линейного программирования: методы внутренней и внешней точки, комбинированные методы. Алгоритм метода барьерных поверхностей и штрафных функций, применяемых для решения задач большой размерности.

    контрольная работа [59,8 K], добавлен 30.10.2014

  • Анализ метода линейного программирования для решения оптимизационных управленческих задач. Графический метод решения задачи линейного программирования. Проверка оптимального решения в среде MS Excel с использованием программной надстройки "Поиск решения".

    курсовая работа [2,2 M], добавлен 29.05.2015

  • Разработка технологии обработки информации, а также структуры и формы представления данных. Подбор алгоритма и программы решения задачи. Определение конфигурации технических средств. Специфика процесса тестирования и оценки надежности программы.

    курсовая работа [959,1 K], добавлен 12.12.2011

  • Постановка задачи линейного программирования и формы ее записи. Понятие и методика нахождения оптимального решения. Порядок приведения задач к каноническому виду. Механизмы решения задач линейного программирования аналитическим и графическим способами.

    методичка [366,8 K], добавлен 16.01.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.