Генератор уникальных вариантов контрольных работ по булевой алгебре.
Лабораторная работа по дискретной математике и одновременно самостоятельный проект.
На основе числового seed генерирует вариант контрольной в формате LaTeX (.tex) с возможностью компиляции в PDF:
- Задание 1а — формула от 3 переменных, построить таблицу истинности
- Задание 1б — формула от 5 переменных, построить таблицу истинности
- Задание 2 — по таблице истинности построить формулу, СКНФ и СДНФ
Каждый seed даёт полностью уникальный вариант. PDF содержит лист с заданиями и отдельную страницу с ответами (ключ).
Сборка:
- gcc (или любой C99-совместимый компилятор)
Генерация PDF (опционально):
- pdflatex из любого дистрибутива TeX Live
macOS (basictex):
brew install --cask basictex
sudo tlmgr update --self --all
sudo tlmgr install babel-russian cyrillic lh cm-super booktabs fancyhdr tcolorbox xcolor etoolbox environ pgfmacOS (полный MacTeX) — всё из коробки:
brew install --cask mactexLinux (Ubuntu/Debian):
apt install texlive-latex-recommended texlive-lang-cyrillic texlive-latex-extramake # собрать
make run SEED=42 # сгенерировать .tex
make pdf SEED=42 # сгенерировать .tex + скомпилировать в PDF
make clean # удалить бинарник и сгенерированные файлыИли без Makefile:
gcc -Wall -Wextra -O2 -o bool_gen bool_gen.c
./bool_gen 42 # только .tex
./bool_gen 42 --pdf # .tex + PDFbool_gen.c — исходный код генератора
Makefile — сборка и запуск
На выходе: variant_<seed>.tex и (при флаге --pdf) variant_<seed>.pdf.