Files
Learn_System/frontend/js/exam9/variants/v14.js
T
Maxim Dolgolyov 6cff327e88 feat: exam9 — Экзамен 9 класс по математике (80 вариантов)
Новый отдельный модуль /exam9 в стиле LearnSpace:
- 80 вариантов × 10 заданий = 800 задач с разбором (KaTeX + SVG)
- Сайдбар: пункт «Экзамен 9 класс» (clipboard-check)
- Feature flag: feature_exam9_enabled (мигр. 002)
- Видим всем авторизованным; рендер на стороне клиента
- Прогресс в localStorage: подсветка вариантов (done/partial)
- Возобновление последнего варианта при возврате

Структура:
  frontend/exam9.html              — страница (LearnSpace layout)
  frontend/js/exam9/app.js         — рендерер
  frontend/js/exam9/variants/      — 80 файлов с данными
  frontend/img/exam9/              — 22 PNG/JPG фигур заданий

Картинки путей _tmp/ → /img/exam9/ переписаны автоматически.

Все маршруты проверены: 200 OK на /exam9, /js/exam9/*, /img/exam9/*.
2026-05-16 12:53:49 +03:00

235 lines
17 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
VARIANTS[14] = {
label: "Вариант 14",
tasks: [
{
text: `Определите, какая из следующих пар чисел является вершиной параболы
$y = -(x-2)^2 - 1$:`,
opts: [
["а", "$(2;\\ 1)$"], ["б", "$(2;\\ {-1})$"], ["в", "$(-2;\\ 1)$"],
["г", "$(-2;\\ {-1})$"], ["д", "$(-1;\\ {-2})$"],
],
sol: `Парабола $y = a(x-h)^2 + k$ имеет вершину $(h;\\,k)$. Здесь $h=2$, $k=-1$.
<svg viewBox="0 0 175 145" xmlns="http://www.w3.org/2000/svg" style="max-width:175px;width:100%;height:auto;display:block;margin:10px 0">
<defs><marker id="a14t1" viewBox="0 0 7 6" refX="7" refY="3" markerWidth="5" markerHeight="5" orient="auto"><path d="M0,0.5 L7,3 L0,5.5Z" fill="#94a3b8"/></marker></defs>
<line x1="5" y1="20" x2="168" y2="20" stroke="#bbb" stroke-width="1.2" marker-end="url(#a14t1)"/>
<line x1="44" y1="138" x2="44" y2="5" stroke="#bbb" stroke-width="1.2" marker-end="url(#a14t1)"/>
<text x="169" y="24" font-size="10" fill="#777">x</text><text x="46" y="6" font-size="10" fill="#777">y</text>
<polyline points="44,120 66,60 88,40 110,60 132,120" fill="none" stroke="#2563eb" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"/>
<circle cx="88" cy="40" r="5" fill="#e11d48"/>
<text x="92" y="37" font-size="10" fill="#e11d48" font-weight="bold">(2; 1)</text>
<line x1="86" y1="18" x2="86" y2="22" stroke="#777" stroke-width="1"/>
<text x="86" y="14" font-size="9" fill="#555" text-anchor="middle">2</text>
<text x="34" y="44" font-size="9" fill="#555">1</text>
</svg>
<div class="sol-ans">Ответ: б)&ensp;$(2;\\,-1)$</div>`
},
{
text: `Определите, какие из чисел <b>НЕ</b> являются решением двойного неравенства
$-6 < 3x \\leq 12$:`,
opts: [
["а", "$-2$"], ["б", "$0$"], ["в", "$4$"], ["г", "$-3$"], ["д", "$1$"],
],
sol: `Разделим на $3$: $-2 \\lt x \\leq 4$.
<br>Проверяем каждое число:
<ul>
<li>а) $-2$: не строго больше $-2$ ✗ — <b>НЕ решение</b></li>
<li>б) $0$: $-2\\lt 0\\leq4$ ✓ — решение</li>
<li>в) $4$: $-2\\lt 4\\leq4$ ✓ — решение</li>
<li>г) $-3$: $-3\\lt-2$ ✗ — <b>НЕ решение</b></li>
<li>д) $1$: ✓ — решение</li>
</ul>
<div class="sol-ans">Ответ: а) и г)</div>`
},
{
text: `Какое из следующих утверждений <b>НЕ</b> верно:`,
opts: [
["а", "медианы треугольника пересекаются в одной точке;"],
["б", "периметр равностороннего треугольника со стороной $a$ равен $3a$;"],
["в", "основания равнобедренной трапеции равны;"],
["г", "у прямоугольника все углы равны между собой?"],
],
sol: `<ul>
<li>а) Медианы пересекаются в центроиде — <b>верно</b></li>
<li>б) Периметр равностороннего треугольника $= 3a$ — <b>верно</b></li>
<li>в) Основания равнобедренной трапеции равны — <b style="color:#dc2626">НЕВЕРНО</b></li>
<li>г) У прямоугольника все углы по $90°$ — <b>верно</b></li>
</ul>
В равнобедренной трапеции равны <em>боковые стороны</em> и <em>углы при основаниях</em>, но основания по определению различны по длине.
<div class="sol-ans">Ответ: в)</div>`
},
{
text: `Найдите значение выражения $4x - 9$,
если $\\dfrac{2x^2 - 7x}{x} = 0$.`,
sol: `При $x\\neq 0$:
$$\\frac{2x^2-7x}{x} = \\frac{x(2x-7)}{x} = 2x-7 = 0 \\implies x = \\frac{7}{2}$$
$$4x-9 = 4\\cdot\\frac{7}{2}-9 = 14-9 = 5$$
<div class="sol-ans">Ответ: $5$</div>`
},
{
text: `Диагональ $BD$ ромба $ABCD$ равна $24$ см. Угол между стороной $AB$
и диагональю $AC$ равен $30^{\\circ}$. Найдите периметр ромба.`,
sol: `<svg viewBox="0 0 170 118" xmlns="http://www.w3.org/2000/svg" style="max-width:170px;width:100%;height:auto;display:block;margin:10px 0">
<!-- равносторонний треугольник ABD (светло-оранжевый) -->
<polygon points="20,90 92,90 56,28" fill="rgba(251,146,60,0.2)" stroke="none"/>
<!-- ромб -->
<polygon points="20,90 92,90 128,28 56,28" fill="none" stroke="#334155" stroke-width="1.8"/>
<!-- диагональ AC (синяя, дана) -->
<line x1="20" y1="90" x2="128" y2="28" stroke="#2563eb" stroke-width="1.3" stroke-dasharray="5,3"/>
<!-- диагональ BD (зелёная, дана) -->
<line x1="92" y1="90" x2="56" y2="28" stroke="#16a34a" stroke-width="1.6" stroke-dasharray="5,3"/>
<!-- дуга ∠BAC = 30° (между AB и AC) -->
<!-- AB: A+18×(1,0)=(38,90); AC: A+18×(0.867,0.498)=(36,81) -->
<path d="M38,90 A18,18 0 0,0 36,81" fill="none" stroke="#e11d48" stroke-width="1.5"/>
<text x="40" y="85" font-size="10" fill="#e11d48" font-weight="bold">30°</text>
<!-- дуга ∠DAB = 60° (между AB и AD, пунктир) -->
<path d="M40,90 A20,20 0 0,0 30,73" fill="none" stroke="#94a3b8" stroke-width="1" stroke-dasharray="3,2"/>
<text x="20" y="80" font-size="9" fill="#94a3b8">60°</text>
<!-- метки вершин -->
<text x="3" y="100" font-size="13" font-family="serif" font-style="italic">A</text>
<text x="94" y="102" font-size="13" font-family="serif" font-style="italic">B</text>
<text x="130" y="24" font-size="13" font-family="serif" font-style="italic">C</text>
<text x="44" y="22" font-size="13" font-family="serif" font-style="italic">D</text>
<!-- подписи -->
<text x="56" y="102" font-size="10" fill="#334155" text-anchor="middle">a = ?</text>
<text x="69" y="57" font-size="10" fill="#2563eb">AC</text>
<text x="69" y="72" font-size="10" fill="#16a34a" font-weight="bold">BD = 24</text>
</svg>
<b>Свойства ромба:</b> все четыре стороны равны; диагонали — биссектрисы углов ромба.
<br><b>Признак равностороннего треугольника:</b> равнобедренный треугольник с углом $60°$ является равносторонним.
<br><br>
<b>Шаг 1.</b> Диагональ $AC$ — биссектриса угла $A$ ромба, поэтому $\\angle BAC = \\dfrac{\\angle BAD}{2}$. По условию $\\angle BAC = 30°$, значит:
$$\\angle BAD = 2\\cdot 30° = 60°$$
<b>Шаг 2.</b> Рассмотрим треугольник $ABD$:
<ul>
<li>$AB = AD = a$ (стороны ромба равны),</li>
<li>$\\angle BAD = 60°$.</li>
</ul>
Равнобедренный треугольник с углом при вершине $60°$ — <b>равносторонний</b>. Значит, $BD = AB = a$.
<br><b>Шаг 3.</b> По условию $BD = 24$ см, поэтому $a = 24$ см.
<br><b>Шаг 4.</b> Периметр ромба:
$$P = 4a = 4\\cdot 24 = 96\\text{ см}$$
<div class="sol-ans">Ответ: $P = 96$ см</div>`
},
{
text: `Сократите дробь $\\dfrac{25m^2 - 4n^2}{4n^2 + 25m^2 + 20mn}$.`,
sol: `<b>Формула разности квадратов:</b> $a^2-b^2 = (a-b)(a+b)$.
<br><b>Формула квадрата суммы:</b> $(a+b)^2 = a^2+2ab+b^2$.
<br><br>
<b>Шаг 1.</b> Разложим <em>числитель</em> по формуле разности квадратов ($a=5m$, $b=2n$):
$$25m^2 - 4n^2 = (5m)^2 - (2n)^2 = (5m-2n)(5m+2n)$$
<b>Шаг 2.</b> Разложим <em>знаменатель</em>. Это квадрат суммы:
$$25m^2 + 20mn + 4n^2 = (5m)^2 + 2\\cdot 5m\\cdot 2n + (2n)^2 = (5m+2n)^2$$
<b>Шаг 3.</b> Сокращаем общий множитель $(5m+2n)$:
$$\\dfrac{(5m-2n)(5m+2n)}{(5m+2n)^2} = \\dfrac{5m-2n}{5m+2n}$$
<div class="sol-ans">Ответ: $\\dfrac{5m-2n}{5m+2n}$</div>`
},
{
text: `Решите систему уравнений
$$\\begin{cases} x - 3y = 4, \\\\[4pt] xy - 7y = 6 \\end{cases}$$
и найдите значение выражения $x_1 \\cdot y_1 + x_2 \\cdot y_2$,
где $(x_1;\\, y_1)$, $(x_2;\\, y_2)$ — решения системы.`,
sol: `<b>Метод подстановки:</b> выражаем одну переменную через другую и подставляем.
<br><b>Теорема Виета (обратная):</b> $y^2+py+q=(y-y_1)(y-y_2)$, где $y_1+y_2=-p$, $y_1\\cdot y_2=q$.
<br><br>
<b>Шаг 1.</b> Из первого уравнения выразим $x$:
$$x = 4 + 3y$$
<b>Шаг 2.</b> Подставим во второе:
$$(4+3y)y - 7y = 6$$
$$4y + 3y^2 - 7y = 6$$
$$3y^2 - 3y - 6 = 0$$
<b>Шаг 3.</b> Разделим на $3$:
$$y^2 - y - 2 = 0$$
<b>Шаг 4.</b> По теореме Виета: $y_1+y_2=1$, $y_1\\cdot y_2=-2$. Подходят $2$ и $-1$:
$$(y-2)(y+1)=0$$
<b>Шаг 5.</b> Находим $x = 4+3y$ для каждого $y$:
<table style="border-collapse:collapse;margin:6px 0"><tr><td style="padding:2px 12px 2px 0"><b>$y_1=2$:</b></td><td>$x_1=4+6=10$</td></tr><tr><td><b>$y_2=-1$:</b></td><td>$x_2=4-3=1$</td></tr></table>
<b>Шаг 6.</b> Вычисляем требуемое выражение:
$$x_1y_1+x_2y_2 = 10\\cdot 2 + 1\\cdot(-1) = 20-1 = 19$$
<div class="sol-ans">Ответ: $19$</div>`
},
{
text: `Найдите значение выражения $\\sqrt{19 - 6\\sqrt{10}} + \\sqrt{26 - 8\\sqrt{10}}$.
В ответ запишите число, противоположное полученному.`,
sol: `<b>Формула квадрата разности:</b> $(a-b)^2 = a^2 - 2ab + b^2$.
<br><b>Формула выноса корня из квадрата:</b> $\\sqrt{a^2}=|a|$. Если $a\\geq 0$, то $|a|=a$; если $a\\lt 0$, то $|a|=-a$.
<br><b>Идея:</b> подкоренное выражение вида $A - 2\\sqrt{B}$ часто можно представить как квадрат разности $(\\sqrt{m}-\\sqrt{n})^2$, где $m+n=A$ и $mn=B$.
<br><br>
<b>Шаг 1.</b> Преобразуем <em>первое</em> подкоренное выражение: $19 - 6\\sqrt{10}$.
<br>Здесь $2\\sqrt{mn}=6\\sqrt{10}$, то есть $\\sqrt{mn}=3\\sqrt{10}$, $mn=90$. И $m+n=19$. Подходят $m=9$, $n=10$:
$$19 - 6\\sqrt{10} = 9 - 6\\sqrt{10} + 10 = 3^2 - 2\\cdot 3\\cdot\\sqrt{10} + (\\sqrt{10})^2 = (3-\\sqrt{10})^2$$
Извлекаем корень. Оценим $\\sqrt{10}$: так как $9\\lt 10\\lt 16$, имеем $3\\lt\\sqrt{10}\\lt 4$, точнее $\\sqrt{10}\\approx 3{,}16$. Значит, $3-\\sqrt{10}\\lt 0$, и модуль раскрывается как $|3-\\sqrt{10}|=\\sqrt{10}-3$:
$$\\sqrt{19-6\\sqrt{10}} = |3-\\sqrt{10}| = \\sqrt{10}-3$$
<b>Шаг 2.</b> Преобразуем <em>второе</em> подкоренное выражение: $26 - 8\\sqrt{10}$. Здесь $2\\sqrt{mn}=8\\sqrt{10}$, $mn=160$, $m+n=26$. Подходят $m=16$, $n=10$:
$$26 - 8\\sqrt{10} = 16 - 8\\sqrt{10} + 10 = 4^2 - 2\\cdot 4\\cdot\\sqrt{10} + (\\sqrt{10})^2 = (4-\\sqrt{10})^2$$
Так как $\\sqrt{10}\\approx 3{,}16\\lt 4$, имеем $4-\\sqrt{10}\\gt 0$:
$$\\sqrt{26-8\\sqrt{10}} = 4-\\sqrt{10}$$
<b>Шаг 3.</b> Складываем оба корня:
$$(\\sqrt{10}-3) + (4-\\sqrt{10}) = -3 + 4 + (\\sqrt{10}-\\sqrt{10}) = 1$$
<b>Шаг 4.</b> Запишем число, противоположное $1$:
$$-1$$
<div class="sol-ans">Ответ: $-1$</div>`
},
{
text: `Периметр параллелограмма равен $32$ см, соседние стороны относятся как $3:5$.
Угол между высотами, проведёнными к соседним сторонам из вершины тупого угла
параллелограмма, равен $30^{\\circ}$. Найдите площадь параллелограмма.`,
sol: `<b>Формула периметра параллелограмма:</b> $P = 2(a+b)$.
<br><b>Формула площади параллелограмма:</b> $S = a\\cdot b\\cdot\\sin\\alpha$, где $\\alpha$ — угол между сторонами.
<br><b>Свойство:</b> угол между двумя высотами, проведёнными из вершины тупого угла параллелограмма к соседним сторонам, равен острому углу параллелограмма.
<br><br>
<b>Шаг 1 — стороны.</b>
<br>Пусть соседние стороны $a = 3k$ и $b = 5k$ (по условию относятся как $3:5$). Из формулы периметра:
$$2(3k + 5k) = 32$$
$$16k = 32 \\implies k = 2$$
Значит, $a = 6$ см, $b = 10$ см.
<br><b>Шаг 2 — острый угол параллелограмма.</b>
<svg viewBox="0 0 180 128" xmlns="http://www.w3.org/2000/svg" style="max-width:180px;width:100%;height:auto;display:block;margin:10px 0">
<polygon points="50,110 158,110 122,48 14,48" fill="rgba(37,99,235,0.07)" stroke="#334155" stroke-width="1.8"/>
<!-- h₁: от A(50,110) до H₁(131,63) на стороне BC -->
<line x1="50" y1="110" x2="131" y2="63" stroke="#2563eb" stroke-width="1.5" stroke-dasharray="4,2"/>
<circle cx="131" cy="63" r="2.5" fill="#2563eb"/>
<path d="M129,59 L124,61 L127,66" fill="none" stroke="#555" stroke-width="1.2"/>
<!-- h₂: от A(50,110) до H₂(50,48) на стороне CD -->
<line x1="50" y1="110" x2="50" y2="48" stroke="#e11d48" stroke-width="1.5" stroke-dasharray="4,2"/>
<circle cx="50" cy="48" r="2.5" fill="#e11d48"/>
<path d="M44,48 L44,54 L50,54" fill="none" stroke="#555" stroke-width="1.2"/>
<path d="M50,88 A22,22 0 0,1 69,99" fill="none" stroke="#333" stroke-width="1.3"/>
<text x="59" y="87" font-size="10" fill="#333" font-weight="bold">30°</text>
<text x="32" y="122" font-size="13" font-family="serif" font-style="italic">A</text>
<text x="160" y="122" font-size="13" font-family="serif" font-style="italic">B</text>
<text x="124" y="43" font-size="13" font-family="serif" font-style="italic">C</text>
<text x="4" y="43" font-size="13" font-family="serif" font-style="italic">D</text>
<text x="140" y="69" font-size="10" fill="#2563eb">$h_1$</text>
<text x="36" y="80" font-size="10" fill="#e11d48">$h_2$</text>
</svg>
Так как угол между двумя высотами из вершины тупого угла равен <b>острому углу</b> параллелограмма, получаем $\\beta = 30°$.
<br><b>Шаг 3 — площадь.</b>
<br>По формуле площади параллелограмма:
$$S = a\\cdot b\\cdot\\sin\\beta = 6\\cdot 10\\cdot\\sin 30° = 60\\cdot\\dfrac{1}{2} = 30\\text{ см}^2$$
<div class="sol-ans">Ответ: $30$ см²</div>`
},
{
text: `Во время строительных работ на Всебелорусской молодёжной стройке в Брестской
крепости двое студентов были определены на подсобные работы. Работая с одной
скоростью, они выполнили половину отведённой работы, затем увеличили скорость:
один — на $25\\%$, а второй — на $30\\%$, и вторую половину работы выполнили
на один день раньше запланированного времени. Успеют ли студенты выполнить
работу за $7$ дней? Ответ обоснуйте.`,
sol: `Пусть $n$ — плановое число дней. Скорость каждого $s = \\dfrac{1}{2n}$, вместе: $\\dfrac{1}{n}$.
<br><b>Первая половина</b>:
$$t_1 = \\frac{1/2}{1/n} = \\frac{n}{2}\\text{ дней}$$
<b>Вторая половина</b> — скорости увеличились:
$$\\text{1-й: }1{,}25s,\\quad \\text{2-й: }1{,}30s,\\quad \\text{вместе: }2{,}55s = \\frac{1{,}275}{n}$$
$$t_2 = \\frac{1/2}{1{,}275/n} = \\frac{n}{2{,}55} = \\frac{20n}{51}\\text{ дней}$$
<b>Фактическое время:</b>
$$t = \\frac{n}{2}+\\frac{20n}{51} = \\frac{51n+40n}{102} = \\frac{91n}{102}$$
<b>Условие «на 1 день раньше»:</b>
$$n - \\frac{91n}{102} = \\frac{11n}{102} = 1 \\implies n = \\frac{102}{11} \\approx 9{,}3$$
<b>Фактическое время:</b>
$$t = \\frac{91}{11} = 8\\frac{3}{11} \\approx 8{,}3\\text{ дней}$$
Так как $8{,}3 \\gt 7$, студенты <b>не успеют</b> за $7$ дней.
<div class="sol-ans">Ответ: нет, не успеют ($\\approx 8{,}3$ дней $\\gt 7$ дней)</div>`
},
]
};