gram:case-003
Table of Contents
Кейс 003: Проверка алгебраических преобразований (gram:case-003)
Общая информация
| Уровень сложности | 🟢 Начальный |
|---|---|
| Рекомендуемые языки | Python |
| Основные инструменты | ANTLR4 |
| Предметная область | Алгебра 7-9 класс |
Описание кейса
Система проверки правильности алгебраических преобразований для школьных задач.
Грамматика языка
// Лексемы
NUMBER : [0-9]+
VARIABLE : [a-zA-Z]
PLUS : '+'
MINUS : '-'
MUL : '*'
DIV : '/'
POW : '^'
LPAREN : '('
RPAREN : ')'
EQ : '='
WS : [ \t\r\n]+ -> skip
// Синтаксис
expression : term ( (PLUS | MINUS) term )*
term : factor ( (MUL | DIV) factor )*
factor : base (POW base)?
base : NUMBER | VARIABLE | LPAREN expression RPAREN
equation : expression EQ expression
План лабораторных работ
ЛР1: Лексический анализ
Задачи:
- Распознавать переменные, числа, операторы
- Поддержка степеней (^)
- Игнорирование пробелов
ЛР2: Синтаксический анализ
Задачи:
- Построить парсер алгебраических выражений
- Реализовать приоритет операций
- Поддержка уравнений
ЛР3: Семантический анализ
Задачи:
- Проверка эквивалентности выражений
- Упрощение выражений
- Проверка тождественных преобразований
ЛР4: Генерация отчета
Задачи:
- Сравнение эталонного и ученического решения
- Генерация пояснений к ошибкам
- Создание GIFT-вопросов для Moodle
Примеры проверки
// Правильные преобразования (x + 2)(x - 3) → x^2 - x - 6 2(x + 3) → 2x + 6 // Типичные ошибки (x + 2)^2 → x^2 + 4 // ОШИБКА! Должно быть x^2 + 4x + 4
Педагогическое применение
Использование в школе:
- Автоматическая проверка домашних работ
- Тренажер алгебраических преобразований
- Подготовка к ОГЭ
← К списку | ← 002 | 004 →
gram/case-003.txt · Last modified: by eugeneai
