User Tools

Site Tools


gram:case-007

Кейс 007: Кинематика - равномерное движение (gram:case-007)

Общая информация

Уровень сложности 🟡 Средний
Рекомендуемые языки Python
Основные инструменты ANTLR4
Предметная область Физика 9 класс

Описание кейса

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

Грамматика языка

// Лексемы
NUMBER    : [0-9]+ ('.' [0-9]+)?
UNIT      : 'м' | 'с' | 'м/с' | 'км' | 'ч' | 'км/ч'
ID        : [vVsStT]
PLUS      : '+'
MINUS     : '-'  
MUL       : '*'
DIV       : '/'
EQ        : '='
LPAREN    : '('
RPAREN    : ')'
WS        : [ \t\r\n]+ -> skip

// Синтаксис
problem     : 'движение' body conditions question
body        : 'тело' | 'автомобиль' | 'пешеход'
conditions  : condition+
condition   : (speed | distance | time) EQ value
speed       : 'скорость' | 'v'
distance    : 'расстояние' | 's'  
time        : 'время' | 't'
value       : NUMBER UNIT?

question    : 'найти' (speed | distance | time)

expression  : term ( (PLUS | MINUS) term )*
term        : factor ( (MUL | DIV) factor )*
factor      : NUMBER | ID | LPAREN expression RPAREN

План лабораторных работ

ЛР1: Лексический анализ

Задачи:

  1. Распознавание физических величин и единиц
  2. Поддержка различных обозначений (v, скорость)
  3. Обработка математических операций

ЛР2: Синтаксический анализ

Задачи:

  1. Парсер условий задач по кинематике
  2. Построение AST физической задачи
  3. Валидация структуры условия

ЛР3: Семантический анализ

Задачи:

  1. Проверка размерностей величин
  2. Решение уравнений движения
  3. Контроль применения формул

ЛР4: Генерация задач

Задачи:

  1. Создание вариантов задач на движение
  2. Генерация числовых данных
  3. Проверка решений учащихся

Примеры задач

// Формулировка задачи
движение автомобиль скорость=60 км/ч, время=2 ч, найти расстояние

// Проверка решения
s = v * t = 60 * 2 = 120 км

Педагогическое применение

Использование в школе:

  1. Тренажер решения задач по кинематике
  2. Автоматическая проверка домашних работ
  3. Подготовка к ОГЭ по физике

← К списку | ← 006 | 008 →

gram/case-007.txt · Last modified: by eugeneai