ПРИМЕНЕНИЕ СТАНДАРТНЫХ ФУНКЦИЙ MATHCAD ДЛЯ РЕШЕНИЯ ЛОГИЧЕСКИХ ЗАДАЧ ПО ИНФОРМАТИКЕ

№58-1,

Физико-математические науки

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

Похожие материалы

В данной статье предлагается и рассматривается метод решения логических уравнений, синтеза логических выражений с помощью встроенных стандартных функций математического пакета Mathcad. Задачи математической логики у школьников и учителей информатики вызывают немало вопросов, опасений за получение конечного положительного результата, а при сдаче ЕГЭ по информатике уровень тревожности в обеих группах значительно возрастает, что приводит к снижению процента (до 13%) правильно решенных задач [1-3].

Организуя поиск простых и верных решений логических задач для обеспечения информационной поддержки учителей школ, нами было предложено использовать возможности математических пакетов, в частности, Mathcad [5,6,7].

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

На рис. 1 представлена операция импликации (функция F2), значения которой определены в виде вектора-столбца. Для формирования таблицы истинности, с включением в нее F2, применяется операция присваивания каждому столбцу матрицы TI значений соответствующего вектора-столбца функции или переменной. Из рисунка 1 видно, что значения функции F2 разместились в пятом столбце, функции F1 – в третьем, а в четвертом разместились значения инверсии F1.

Формирование таблицы истинности TI.
Рисунок 1. Формирование таблицы истинности TI.

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

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

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

Пример формирования логических функций двух переменных.
Рисунок 2. Пример формирования логических функций двух переменных.

Пример. B 2 № 911 (Задание взято из задач сайта «Решу ЕГЭ»). Символом F обозначено одно из указанных ниже логических выражений от трех аргументов: X, Y, Z. Дан фрагмент таблицы истинности выражения F (см. табл. 1):

Таблица 1. Фрагмент таблицы истинности выражения F.

X

Y

Z

F

1

0

0

0

0

1

0

1

0

0

1

0

Какое выражение соответствует F? Даны четыре варианта ответа:

  1. (0 ∧ Y) ∧ (X ≡ Z)
  2. (1 ∧ Y) ∧ (X ≡ Z)
  3. (0 ∨ ¬Z) ∧ (X ≡ Y)
  4. (¬1 ∧ Y) ∧ (X ≡ Z)

Решение.

  1. Заметим, что первый вариант дает в результате 0 во всех случаях, так как конъюнкция ложна, если ложен хотя бы один из её аргументов, а это не соответствует значениям F.
  2. Выражение в варианте 2, как и в варианте 4, принимает ложные значения, если X не эквивалентно Z, а значит, по первой и третьей строчке и 2, и 4 вариант удовлетворяют F.
  3. Остается сравнить их по второй строке, в которой F – истинно. В этой строке X=0, Y=1, Z=0, значит, выражение в варианте 2 здесь истинно.
  4. Так как значения F и значения функции в варианте 2 сошлись по всем трем строкам, вариант 2 является ответом к данной задаче.

Для решения рассматриваемой задачи в Mathcad зададим X, Y, Z, F как векторы. Используем ранее описанную логическую операцию эквиваленции (см. рис.3). Представляя каждое ЛогВ в виде вектора, можно увидеть, что у второго выражения значения по строкам совпадают с значениями функции F. Присвоим второму ЛогВ имя FLV и проверим правильность решения логической задачи операцией «булево равенство» (обозначается в модуле «Boolen» жирным знаком «=»), связав ее с функцией F, тем самым, получим простое логическое уравнение. Если это уравнение связать обычным знаком равенства с 1, т.е. вывести все его решения, при которых это уравнение принимает истинные значения, то получим вектор решений. В данном случае их будет три (все три строки вектора-столбца решений приняли единичное значение).

Пример решения задачи ЕГЭ.
Рисунок 3. Пример решения задачи ЕГЭ.

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

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

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

  1. Фёдорова Е.А. Информатика и ТРИЗ – педагогика: инструменты решения задач. // Информационные технологии в образовании Материалы Международной заочной научно-практической конференции. ФГБОУ ВПО «УлГПУ им. И.Н. Ульянова»; Под редакцией Ю.И. Титаренко. г. Ульяновск, 2014. С. 126-130.
  2. Фёдорова Е.А. Развитие творческой активности студентов с помощью технологий ТРИЗ – педагогики (на занятиях по информатике). Информатика и образование. 2009. № 2. С. 110-111. ISSN: 0234-0453.
  3. Федорова Е.А. Развитие творческой активности студентов средствами ТРИЗ-педагогики (на примере изучения информатики). Диссертация на соискание ученой степени кандидата педагогических наук / Ульяновский государственный педагогический университет им. И.Н. Ульянова. Ульяновск, 2009.
  4. Шубович В.Г., Полякова Т.С., Капитанчук В.В. Формирование профессиональных знаний на основе метода матричного кодирования. // Информационные технологии в образовании: Материалы Международной заочной научно-практической конференции. главный редактор: Ильина Н.А., ответственный редактор: Титаренко Ю.И. Ульяновск, 2013. С. 241-247. ISBN 978-5-86045-640-2.
  5. Шубович В.Г. Анализ, классификация и моделирование алгоритмов сжатия. // Диссертация на соискание ученой степени кандидата технических наук. Ульяновск, 2001.
  6. Шубович В.Г. Обоснование и выбор системы математических расчетов при обработке экспериментальных данных. // Научно-технический сборник. Ульяновск: УФВАТТ, 2000. №2.
  7. Шубович В.Г., Капитанчук В.В., Знаенко Н.С., Титаренко Ю.И. Разработка моделей криптографической защиты информации. Монография. Ульяновск: УлГПУ, 2013. -127 с. ISBN 978-5-86045-640-2.