В данной статье описывается программный пакет, представляющий собой генератор новых математических тестов.
Основные особенности нашего пакета заключаются в ориентации на создание качественной печатной продукции и большой вариативности создаваемых задач, что достигается с помощью текстового процессора LATEX и мощностей языка Python. Пакет состоит из управляющей оболочки, синтаксического анализатора задач, предметной логики, системы форматирования и базы данных задач. Предметная логика представляет набор абстракций, которые могут быть использованы в задачах (например, графы, булевы функции и др.). База данных задач существует в виде JSON-файлов на специально созданным языке формирования задач.
На текущий момент в базе данных задач наиболее полно представлены задачи по дискретной математику. Было реализовано более пятидесяти видов задач по темам: операции над множествами, представление множеств диаграммами Эйлера-Венна, алгебра множеств, различные способы представления графов, операции над графами, некоторые задачи на графах, представление булевых функций различными способами, нахождение совершенных форм, построение и минимизация с помощью карт Карно, диаграмм Венна и гиперкубов, анализ и синтез логических схем.
Генератор задач может быть использован преподавателем при проведении практических и контрольных работ, создании индивидуальных материалов для учащихся. Задачи можно дифференцировать по уровню сложности путём изменения управляющих параметров.
Сформированные задания были использованы в учебном процессе для более чем 1000 студентов Военной академии связи имени С. М. Будённого, в результате чего наблюдалось улучшение усвоения дискретной математики. (на англ.) C. 65-71.
This article describes the software package representing new math tests generator. The main features of our software are in the focus on creating a high-quality printed product and large variability of the generated tasks. That were achieved by using the LaTeX~text processor and power of the Python language. Logically it consists of the control shell, the task parser, subject logic, formatting system and task database. The logic implements the set of abstractions that can be used in tasks (for example graphs, boolean functions, etc.). The task database exists in the form of JSON files with the specially created task formation language. Currently, the most developed branch in task database is the discrete mathematics problems and abstractions. More than fifty types of tasks were implemented: operations on sets, representation of sets by Euler-Venn diagrams, algebra of sets, various ways of representing graphs, operations on graphs, some problems on graphs, representing Boolean functions in various ways, finding perfect forms, constructing and minimization using Karnaugh maps, Venn diagrams and hypercubes, analysis and synthesis of logic circuits. The task generator can be used by a teacher when conducting practical and control classes, creating individual materials for the students. Tasks can be differentiated by the level of complexity when changing control parameters. The generated tasks were used in education process for more than 1000 students of Military Academy of the Signal Corps and the improvement of mastering of discrete math was shown.
Ключевые слова: дискретная математика, образование, теория множеств, теория графов, булева алгебра.
Keywords: Discrete mathematics, education, set theory, graph theory, boolean algebra.