feat(trainer): больше разнообразия в «Параллельные и секущая» — +3 генератора

Тема g-angles: к соответственным углам добавлены остальные пары при параллельных
прямых и секущей (переиспользуют фигуру parallel-lines-transversal с rel):
- ang-alternate — накрест лежащие углы (равны, = a);
- ang-cointerior — односторонние внутренние (сумма 180°, = 180−a);
- ang-parallel-solve — алгебра: соответственные углы заданы выражениями
  ((a·x+b)° и c°), найти x (kind solve, «корень-вперёд» c=a·root+b).

Итого 178 генераторов. Смоук v41 74272 проверки (новые: рендер фигуры,
приём/отказ ответа, шаги→LaTeX); figures-смоук на 41 геом-генераторе.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Maxim Dolgolyov
2026-06-29 16:09:20 +03:00
parent 16ddb27013
commit 9061a9f5a5
+49 -1
View File
@@ -2511,6 +2511,53 @@
]
},
/* параллельные и секущая — накрест лежащие углы */
{
id: 'ang-alternate', topic: 'g-angles', order: 4.2, subject: 'geometry', grade: 7, kind: 'compute',
title: 'Накрест лежащие углы',
figure: { type: 'parallel-lines-transversal', given: 'a', rel: 'alternate' },
figurePrompt: 'Найдите накрест лежащий угол по чертежу (в градусах).',
pick: { a: [30, 150] }, derive: { val: 'a' },
lhs: 'x', rhs: '{a}', display: 'Прямые параллельны, секущая образует угол {a}°. Найдите накрест лежащий с ним угол (в градусах).',
answerVar: 'x', answer: 'val', integerAnswer: true,
solution: [
{ note: 'Накрест лежащие углы при параллельных прямых и секущей равны.', tex: 'x = {a}' },
{ note: 'Ответ.', tex: 'x = {ans}' }
]
},
/* параллельные и секущая — односторонние (внутренние) углы */
{
id: 'ang-cointerior', topic: 'g-angles', order: 4.4, subject: 'geometry', grade: 7, kind: 'compute',
title: 'Односторонние углы',
figure: { type: 'parallel-lines-transversal', given: 'a', rel: 'cointerior' },
figurePrompt: 'Найдите односторонний внутренний угол (в градусах).',
pick: { a: [30, 150] }, derive: { val: '180 - a' },
lhs: 'x', rhs: '180 - {a}', display: 'Прямые параллельны, секущая образует угол {a}°. Найдите односторонний (внутренний) с ним угол (в градусах).',
answerVar: 'x', answer: 'val', integerAnswer: true,
solution: [
{ note: 'Сумма односторонних внутренних углов при параллельных прямых равна 180°.', tex: 'x = 180 - {a}' },
{ note: 'Считаем.', tex: 'x = {ans}' }
]
},
/* параллельные и секущая — алгебра: соответственные углы заданы выражениями, найти x */
{
id: 'ang-parallel-solve', topic: 'g-angles', order: 4.6, subject: 'geometry', grade: 7,
title: 'Параллельные: найти x',
figure: { type: 'parallel-lines-transversal', given: 'c', rel: 'corresponding' },
figurePrompt: 'Соответственные углы равны. Найдите x.',
pick: { a: [2, 6], b: [1, 20], root: [2, 12] },
derive: { c: 'a*root + b', cmb: 'a*root' }, require: 'c >= 20 && c <= 160',
lhs: '{a}*x + {b}', rhs: '{c}', display: 'Прямые параллельны. Соответственные углы равны: один равен ({a}x + {b})°, другой — {c}°. Найдите x.',
answerVar: 'x', answer: 'root', integerAnswer: true,
solution: [
{ note: 'Соответственные углы при параллельных прямых равны, поэтому составим уравнение.', tex: '{a}x + {b} = {c}' },
{ note: 'Переносим {b} вправо.', tex: '{a}x = {cmb}' },
{ note: 'Делим обе части на {a}.', tex: 'x = {root}' }
]
},
/* угол при основании равнобедренного */
{
id: 'ang-isosceles-base', topic: 'g-angles', order: 5, subject: 'geometry', grade: 7, kind: 'compute',
@@ -2883,7 +2930,8 @@
'dec-div': 3, 'dec-round': 2, 'dec-times-pow10': 1, 'dec-compare': 1,
'neg-div': 2, 'neg-order-ops': 3, 'neg-abs': 2, 'neg-compare-line': 1, 'neg-square': 2,
// V4.1 — Геометрия (углы/Пифагор/площади/многоугольники/подобие/окружность)
'ang-parallel-transversal': 2, 'ang-isosceles-base': 2, 'ang-vertical': 1,
'ang-parallel-transversal': 2, 'ang-alternate': 1, 'ang-cointerior': 2, 'ang-parallel-solve': 3,
'ang-isosceles-base': 2, 'ang-vertical': 1,
'pyth-perimeter': 3, 'pyth-distance': 3, 'pyth-rect-diagonal': 2, 'pyth-space-diagonal': 3,
'area-rect-inverse': 2, 'area-l-shape': 3, 'area-sector': 3,
'poly-diagonals': 2, 'poly-find-n': 3, 'poly-exterior-sum': 2,