feat(ctmath): пробник РТ-2024/25 Этап II Вариант 1 (variant=102)
Чистый 30-задачный пробник Этапа II (другой набор тем, чем Этап I: обратные тригфункции, логарифмы, производная, стереометрия). По 1 варианту на Этап (правило «без повторов»). 3 чертежа из PDF (параллельные прямые, панель из 5 графиков для y=|x|, график функции). KaTeX-рендер 30/30, self-сверка. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,298 @@
|
||||
'use strict';
|
||||
/* ───────────────────────────────────────────────────────────────────────────
|
||||
seed_ctmath_rt2425_e2v1.js — РТ–2024/2025, Этап II, Вариант 1 → variant=102
|
||||
Чистый 30-задачный пробник (А1–А10 + В1–В20). Этап II — другой набор тем, чем
|
||||
Этап I (позже по программе: обратные тригфункции, логарифмы, производная,
|
||||
стереометрия). Перенабрано вручную в KaTeX по PDF
|
||||
(…\РТ\2024-2025\МАТ РТ-2 24_25 В1.pdf); чертежи вырезаны из PDF.
|
||||
Правило тиража: 1 вариант на Этап (В1/В2 одного этапа — дубли, берём один).
|
||||
|
||||
Запуск: node backend/scripts/seed_ctmath_rt2425_e2v1.js [--apply]
|
||||
Контракт формата/проверок — см. seed_ctmath_rt2425_e1v1.js.
|
||||
─────────────────────────────────────────────────────────────────────────── */
|
||||
|
||||
const { DatabaseSync } = require('node:sqlite');
|
||||
const path = require('path');
|
||||
|
||||
const APPLY = process.argv.includes('--apply');
|
||||
const EXAM = 'ctmath';
|
||||
const VARIANT = 102;
|
||||
const PROV = 'РТ–2024/2025, Этап II, Вариант 1';
|
||||
const FIGDIR = 'rt2425_e2v1';
|
||||
const R = String.raw;
|
||||
|
||||
const FIG = (name, alt) =>
|
||||
`<img src="/img/ct/math/${FIGDIR}/${name}" alt="${alt}" ` +
|
||||
`style="max-width:300px;width:100%;height:auto;display:block;margin:10px auto;` +
|
||||
`background:#fff;border-radius:8px;padding:6px;">`;
|
||||
|
||||
const L = ['а', 'б', 'в', 'г', 'д'];
|
||||
const mc = (...html) => html.map((h, i) => [L[i], h]);
|
||||
|
||||
const TASKS = [
|
||||
// ── Часть A ──────────────────────────────────────────────────────────────
|
||||
{ idx: 1, type: 'mc', topic: 'numbers', subtopic: 'num-divisibility', diff: 1,
|
||||
text: R`Юра и Ян собирали яблоки. Юра собрал яблок в $4$ раза больше, чем Ян. Какую часть всех собранных яблок собрал Ян?`,
|
||||
opts: mc('$\dfrac45$', '$\dfrac15$', '$\dfrac13$', '$\dfrac14$', '$\dfrac34$'),
|
||||
answer: 'б',
|
||||
sol: R`Ян собрал в $4$ раза меньше Юры, поэтому всё количество яблок делится на $4+1=5$ равных частей, и Ян собрал одну из них, то есть $\dfrac15$.`,
|
||||
ref: 'Герасимов «Математика, 5 кл.», ч. 2, гл. 3, § 1' },
|
||||
|
||||
{ idx: 2, type: 'mc', topic: 'planimetry', subtopic: 'plan-triangles', diff: 2,
|
||||
text: R`Используя данные рисунка, определите, чему должна быть равна градусная мера угла $1$, чтобы прямые $a$ и $b$ были параллельны.`,
|
||||
opts: mc('$68^\circ$', '$48^\circ$', '$46^\circ$', '$36^\circ$', '$44^\circ$'),
|
||||
answer: 'д',
|
||||
sol: R`Угол $2$, смежный с углом $136^\circ$, равен $44^\circ$. Прямые $a$ и $b$ параллельны, если соответственные углы $1$ и $2$ при секущей $c$ равны, поэтому $\angle 1=44^\circ$.`,
|
||||
ref: 'Казаков «Геометрия, 7 кл.», гл. 3, § 15',
|
||||
fig: FIG('a2.png', 'Прямые a и b, секущая c; угол 1 и угол 136°') },
|
||||
|
||||
{ idx: 3, type: 'mc', topic: 'functions', subtopic: 'fn-graphs', diff: 1,
|
||||
text: R`Укажите номер рисунка, на котором изображён график функции $y=|x|$.`,
|
||||
opts: mc('$1$', '$2$', '$3$', '$4$', '$5$'),
|
||||
answer: 'в',
|
||||
sol: R`График функции $y=|x|$ — это «уголок» с вершиной в начале координат (ветви $y=x$ при $x\ge0$ и $y=-x$ при $x<0$). Ему соответствует рисунок $3$.`,
|
||||
ref: 'Арефьева «Алгебра, 8 кл.», гл. 4, § 19',
|
||||
fig: FIG('a3.png', 'Пять графиков-кандидатов 1–5; график 3 — «уголок» y=|x|') },
|
||||
|
||||
{ idx: 4, type: 'mc', topic: 'expressions', subtopic: 'expr-polynomials', diff: 1,
|
||||
text: R`Среди значений переменной $x$, равных $16;\ -1;\ 1;\ -4;\ -15$, укажите то, при котором значение выражения $0{,}36-x^2$ равно $-15{,}64$.`,
|
||||
opts: mc('$16$', '$-1$', '$1$', '$-4$', '$-15$'),
|
||||
answer: 'г',
|
||||
sol: R`Проверяем: при $x=-4$ имеем $0{,}36-(-4)^2=0{,}36-16=-15{,}64$. Остальные значения дают другой результат.`,
|
||||
ref: 'Арефьева «Алгебра, 7 кл.», гл. 2, § 4' },
|
||||
|
||||
{ idx: 5, type: 'mc', topic: 'equations', subtopic: 'eq-linear', diff: 2,
|
||||
text: R`Укажите номер, под которым приведено множество всех решений системы неравенств $\begin{cases}x\le 6,\\ x<-4.\end{cases}$`,
|
||||
opts: mc('$(-\infty;-4)$', '$(-\infty;6]$', '$(-4;6]$', '$(-\infty;6)$', '$(-\infty;-4)\cup(-4;6]$'),
|
||||
answer: 'а',
|
||||
sol: R`Решение первого неравенства — луч $(-\infty;6]$, второго — открытый луч $(-\infty;-4)$. Пересечением является $(-\infty;-4)$.`,
|
||||
ref: 'Арефьева «Алгебра, 8 кл.», гл. 1, § 6' },
|
||||
|
||||
{ idx: 6, type: 'open', topic: 'numbers', subtopic: 'num-real', diff: 2,
|
||||
text: R`Среди выражений $\log_{\sqrt2}4$; $\ -5^2$; $\ \cos\dfrac{5\pi}{6}$; $\ 7^{-1}$; $\ \sqrt[5]{(-2)^5}$ укажите те, значение которых является отрицательным числом.<br><i>Ответ запишите номерами в порядке возрастания, без пробелов.</i>`,
|
||||
answer: '235', ansShow: '2, 3, 5',
|
||||
sol: R`$1)\ \log_{\sqrt2}4=4>0$. $\ 2)\ -5^2=-25<0$. $\ 3)\ \cos\dfrac{5\pi}{6}=-\dfrac{\sqrt3}{2}<0$. $\ 4)\ 7^{-1}=\dfrac17>0$. $\ 5)\ \sqrt[5]{(-2)^5}=-2<0$. Отрицательны выражения 2, 3, 5.`,
|
||||
ref: 'Арефьева «Алгебра, 11 кл.», гл. 1, § 3' },
|
||||
|
||||
{ idx: 7, type: 'mc', topic: 'expressions', subtopic: 'expr-polynomials', diff: 2,
|
||||
text: R`Результат разложения многочлена $(a-b)+2c(b-a)$ на множители имеет вид:`,
|
||||
opts: mc('$(a-b)(1+2c)$', '$(a-b)(2c-1)$', '$(a-b)(1-2c)$', '$-2c(a-b)$', '$2c(a-b)$'),
|
||||
answer: 'в',
|
||||
sol: R`$(a-b)+2c(b-a)=(a-b)-2c(a-b)=(a-b)(1-2c)$.`,
|
||||
ref: 'Арефьева «Алгебра, 7 кл.», гл. 2, § 14' },
|
||||
|
||||
{ idx: 8, type: 'mc', topic: 'equations', subtopic: 'eq-linear', diff: 2,
|
||||
text: R`Укажите номер неравенства, которое равносильно неравенству $x>5$.`,
|
||||
opts: mc('$x^2>5x$', '$\dfrac{1}{x-5}<0$', '$(x-5)^2>0$', '$-2x<-10$', '$(0{,}5)^{x-5}>0$'),
|
||||
answer: 'г',
|
||||
sol: R`Решение $x>5$ — луч $(5;+\infty)$. Неравенство $-2x<-10$ равносильно $x>5$ — то же множество решений. (Остальные дают другие множества.)`,
|
||||
ref: 'Арефьева «Алгебра, 9 кл.», гл. 3, § 13' },
|
||||
|
||||
{ idx: 9, type: 'mc', topic: 'stereometry', subtopic: 'ster-polyhedra', diff: 2,
|
||||
text: R`У правильной четырёхугольной призмы площадь основания равна $28$ см$^2$. Какой должна быть высота (в сантиметрах) этой призмы, чтобы её объём был равен $98$ см$^3$?`,
|
||||
opts: mc('$2$', '$4$', '$3{,}2$', '$4{,}5$', '$3{,}5$'),
|
||||
answer: 'д',
|
||||
sol: R`Объём призмы $V=S_{\text{осн}}\cdot h$. Тогда $98=28h$, откуда $h=3{,}5$ см.`,
|
||||
ref: 'Латотин «Геометрия, 11 кл.», разд. 1, § 1' },
|
||||
|
||||
{ idx: 10, type: 'open', topic: 'functions', subtopic: 'fn-properties', diff: 3,
|
||||
text: R`На рисунке изображён график функции $y=f(x)$, определённой на промежутке $[-6;6]$. Укажите номера верных утверждений.<br>1) множеством значений функции является отрезок $[-3;4]$;<br>2) функция является нечётной;<br>3) график функции $y=f(x-1)$ проходит через точку $(0;2)$;<br>4) функция убывает на промежутках $[-1;0]$ и $[1;6]$;<br>5) $f(-5)+f(2)<0$.<br><i>Ответ запишите номерами в порядке возрастания, без пробелов.</i>`,
|
||||
answer: '14', ansShow: '1, 4',
|
||||
sol: R`$1)$ верно: $E(f)=[-3;4]$. $\ 2)$ неверно: график симметричен относительно оси ординат, функция чётная. $\ 3)$ неверно: точка $(0;2)$ не принадлежит графику $y=f(x-1)$. $\ 4)$ верно: на $[-1;0]$ и $[1;6]$ значения убывают. $\ 5)$ неверно: $-2<f(-5)<-1$ и $2<f(2)<3$, поэтому $f(-5)+f(2)>0$.`,
|
||||
ref: 'Арефьева «Алгебра, 9 кл.», гл. 2, § 6–9',
|
||||
fig: FIG('a10.png', 'График чётной функции y=f(x) на [-6;6], с пиками y=4 и краями y=-3') },
|
||||
|
||||
// ── Часть B ──────────────────────────────────────────────────────────────
|
||||
{ idx: 11, type: 'long', topic: 'trigonometry', subtopic: 'trig-identities', diff: 3,
|
||||
text: R`Для начала каждого из предложений А–В подберите его окончание 1–6 так, чтобы получилось верное утверждение.<br><b>Начало:</b><br>А) Значение выражения $\arcsin 0-|-5|$ равно …<br>Б) Значение выражения $\dfrac1\pi\arccos\left(-\dfrac{\sqrt3}{2}\right)-\dfrac13$ равно …<br>В) Значение выражения $4\sqrt6\,\sin\left(2\arccos\dfrac{\sqrt2}{2}-\dfrac\pi4\right)$ равно …<br><b>Окончание:</b><br>1) $6\sqrt2$; 2) $-5$; 3) $\dfrac13$; 4) $-4$; 5) $4\sqrt3$; 6) $\dfrac12$.<br><i>Ответ запишите сочетанием букв и цифр, например: А1Б1В4.</i>`,
|
||||
answer: 'А2Б6В5', ansShow: 'А2Б6В5',
|
||||
sol: R`А) $\arcsin0-|-5|=0-5=-5$ — окончание 2. Б) $\dfrac1\pi\cdot\dfrac{5\pi}{6}-\dfrac13=\dfrac56-\dfrac13=\dfrac12$ — окончание 6. В) $4\sqrt6\,\sin\left(2\cdot\dfrac\pi4-\dfrac\pi4\right)=4\sqrt6\sin\dfrac\pi4=4\sqrt6\cdot\dfrac{\sqrt2}{2}=4\sqrt3$ — окончание 5.`,
|
||||
ref: 'Арефьева «Алгебра, 10 кл.», гл. 1, § 7' },
|
||||
|
||||
{ idx: 12, type: 'open', topic: 'stereometry', subtopic: 'ster-polyhedra', diff: 3,
|
||||
text: R`$ABCDA_1B_1C_1D_1$ — куб. Длина пространственной ломаной $ABB_1C_1C$ равна $16\sqrt3$. Выберите верные утверждения.<br>1) длина диагонали грани $ABCD$ равна $4\sqrt3$;<br>2) площадь полной поверхности куба равна $192$;<br>3) длина диагонали куба равна $4\sqrt6$;<br>4) площадь треугольника $AC_1C$ равна $24\sqrt2$;<br>5) длина ребра куба равна $4\sqrt3$;<br>6) объём куба равен $192\sqrt3$.<br><i>Ответ запишите номерами в порядке возрастания, без пробелов.</i>`,
|
||||
answer: '456', ansShow: '4, 5, 6',
|
||||
sol: R`Ломаная $ABB_1C_1C$ состоит из четырёх рёбер: $16\sqrt3:4=4\sqrt3$ — ребро. $\ 1)$ диагональ грани $=4\sqrt3\cdot\sqrt2=4\sqrt6$ — неверно. $\ 2)\ S=6a^2=6\cdot48=288$ — неверно. $\ 3)$ диагональ куба $=a\sqrt3=4\sqrt3\cdot\sqrt3=12$ — неверно. $\ 4)\ S_{AC_1C}=\tfrac12\cdot4\sqrt6\cdot4\sqrt3=24\sqrt2$ — верно. $\ 5)$ ребро $=4\sqrt3$ — верно. $\ 6)\ V=a^3=(4\sqrt3)^3=192\sqrt3$ — верно.`,
|
||||
ref: 'Латотин «Геометрия, 11 кл.», разд. 1, § 1' },
|
||||
|
||||
{ idx: 13, type: 'open', topic: 'trigonometry', subtopic: 'trig-identities', diff: 3,
|
||||
text: R`Найдите значение выражения $15\sqrt{10}\,\operatorname{tg}\alpha$, если $\operatorname{ctg}\alpha=-\dfrac{\sqrt{10}}{8}$.`,
|
||||
answer: '-120',
|
||||
sol: R`Из тождества $\operatorname{tg}\alpha\cdot\operatorname{ctg}\alpha=1$: $\operatorname{tg}\alpha=\dfrac1{\operatorname{ctg}\alpha}=-\dfrac{8}{\sqrt{10}}=-\dfrac{4\sqrt{10}}{5}$. Тогда $15\sqrt{10}\cdot\left(-\dfrac{4\sqrt{10}}{5}\right)=15\cdot\left(-\dfrac{4\cdot10}{5}\right)=-120$.`,
|
||||
ref: 'Арефьева «Алгебра, 10 кл.», гл. 1, § 4' },
|
||||
|
||||
{ idx: 14, type: 'open', topic: 'planimetry', subtopic: 'plan-quadrilaterals', diff: 2,
|
||||
text: R`Диагонали ромба равны $4$ и $10$. Найдите значение выражения $\sqrt{29}\cdot P$, где $P$ — периметр ромба.`,
|
||||
answer: '116',
|
||||
sol: R`Диагонали ромба перпендикулярны и делятся точкой пересечения пополам. Сторона $a=\sqrt{2^2+5^2}=\sqrt{29}$. Периметр $P=4\sqrt{29}$, тогда $\sqrt{29}\cdot P=\sqrt{29}\cdot4\sqrt{29}=4\cdot29=116$.`,
|
||||
ref: 'Казаков «Геометрия, 8 кл.», гл. 1, § 5' },
|
||||
|
||||
{ idx: 15, type: 'open', topic: 'numbers', subtopic: 'num-divisibility', diff: 3,
|
||||
text: R`Пусть $A$ — наименьшее натуральное число, большее $50$, при делении которого на $9$ и на $12$ получается остаток $1$. Найдите остаток при делении числа $A$ на $13$. В ответ запишите сумму числа $A$ и полученного остатка.`,
|
||||
answer: '81',
|
||||
sol: R`$A-1$ делится и на $9$, и на $12$, то есть кратно $\text{НОК}(9;12)=36$. Наименьшее такое $A-1>49$ равно $72$, значит $A=73$. Остаток от деления $73$ на $13$ равен $8$. Сумма $73+8=81$.`,
|
||||
ref: 'Герасимов «Математика, 5 кл.», ч. 1, гл. 1, § 11–13' },
|
||||
|
||||
{ idx: 16, type: 'open', topic: 'word-sequences', subtopic: 'seq-progressions', diff: 3,
|
||||
text: R`Найдите, при каком значении переменной $x$ значения выражений $x-18$; $\ x-3$; $\ x+17$ будут последовательными членами геометрической прогрессии.`,
|
||||
answer: '63',
|
||||
sol: R`По характеристическому свойству геометрической прогрессии $(x-3)^2=(x-18)(x+17)$. Раскрывая: $x^2-6x+9=x^2-x-306$, $-5x=-315$, $x=63$.`,
|
||||
ref: 'Арефьева «Алгебра, 9 кл.», гл. 4, § 17' },
|
||||
|
||||
{ idx: 17, type: 'open', topic: 'equations', subtopic: 'eq-rational', diff: 4,
|
||||
text: R`Пусть $(x_1;y_1)$ и $(x_2;y_2)$ — решения системы уравнений $\begin{cases}x^2+3y=27,\\ x-y=-9.\end{cases}$ Найдите значение выражения $x_1x_2-y_1y_2$.`,
|
||||
answer: '-54',
|
||||
sol: R`Из второго уравнения $y=x+9$. Тогда $x^2+3(x+9)=27$, $x^2+3x=0$, $x=0$ или $x=-3$. Решения: $(-3;6)$ и $(0;9)$. Значение $x_1x_2-y_1y_2=(-3)\cdot0-6\cdot9=-54$ (не зависит от выбора нумерации пар).`,
|
||||
ref: 'Арефьева «Алгебра, 9 кл.», гл. 3, § 11' },
|
||||
|
||||
{ idx: 18, type: 'open', topic: 'word-sequences', subtopic: 'word-problems', diff: 3,
|
||||
text: R`Аппликация состоит из двух подобных треугольников $\mathrm{I}$ и $\mathrm{II}$. Площадь треугольника $\mathrm{I}$ равна $75$ см$^2$, а длины сторон треугольника $\mathrm{II}$ на $20\%$ больше длин соответствующих сторон треугольника $\mathrm{I}$. Найдите (в см$^2$) площадь всей аппликации.`,
|
||||
answer: '183',
|
||||
sol: R`Коэффициент подобия (II к I) равен $1{,}2=\dfrac65$. Отношение площадей подобных треугольников равно квадрату коэффициента: $S_{\mathrm{II}}=75\cdot\left(\dfrac65\right)^2=75\cdot\dfrac{36}{25}=108$ см$^2$. Площадь всей аппликации $75+108=183$ см$^2$.`,
|
||||
ref: 'Казаков «Геометрия, 8 кл.», гл. 3, § 23' },
|
||||
|
||||
{ idx: 19, type: 'open', topic: 'equations', subtopic: 'eq-logarithmic', diff: 3,
|
||||
text: R`Найдите значение выражения $2\log_{25}\left(\dfrac{a}{125}\right)-\log_5\dfrac{25}{b}$, если $\log_{25}(ab)=19$.`,
|
||||
answer: '33',
|
||||
sol: R`$2\log_{25}\left(\dfrac{a}{125}\right)=\log_5\dfrac{a}{125}$. Тогда выражение равно $\log_5\dfrac{a}{125}-\log_5\dfrac{25}{b}=\log_5\dfrac{ab}{5^5}=\log_5(ab)-5=2\log_{25}(ab)-5=2\cdot19-5=33$.`,
|
||||
ref: 'Арефьева «Алгебра, 11 кл.», гл. 3, § 7' },
|
||||
|
||||
{ idx: 20, type: 'open', topic: 'planimetry', subtopic: 'plan-triangles', diff: 4,
|
||||
text: R`В равнобедренном треугольнике $KMN$ проведена высота $MH$ к основанию $KN$. Точка $P$ — середина боковой стороны $MN$. Известно, что длина высоты $MH$ равна длине отрезка $HP$ и $KN=6\sqrt6$. Найдите значение выражения $S^2$, где $S$ — площадь треугольника $KMN$.`,
|
||||
answer: '972',
|
||||
sol: R`Высота $MH$ равнобедренного треугольника является и медианой, поэтому $HN=\tfrac12 KN=3\sqrt6$. В прямоугольном треугольнике $MHN$ отрезок $HP$ — медиана к гипотенузе $MN$, значит $HP=\tfrac12 MN$; по условию $MH=HP=\tfrac12 MN$, то есть катет $MH$ равен половине гипотенузы, и $\angle MNH=30^\circ$. Тогда $MH=HN\operatorname{tg}30^\circ=3\sqrt6\cdot\dfrac{\sqrt3}{3}=3\sqrt2$. Площадь $S=\tfrac12\cdot KN\cdot MH=\tfrac12\cdot6\sqrt6\cdot3\sqrt2=18\sqrt3$, откуда $S^2=972$.`,
|
||||
ref: 'Казаков «Геометрия, 8 кл.», гл. 2, § 15–16' },
|
||||
|
||||
{ idx: 21, type: 'open', topic: 'functions', subtopic: 'fn-properties', diff: 3,
|
||||
text: R`Найдите количество всех целых чисел из множества значений функции $y=\left(\dfrac13\right)^{-x}$ на отрезке $[3;4]$.`,
|
||||
answer: '55',
|
||||
sol: R`$y=\left(\dfrac13\right)^{-x}=3^x$ — возрастающая функция. При $3\le x\le4$ имеем $3^3\le 3^x\le 3^4$, то есть $E=[27;81]$. Целых чисел на отрезке $[27;81]$ — $81-27+1=55$.`,
|
||||
ref: 'Арефьева «Алгебра, 11 кл.», гл. 2, § 4' },
|
||||
|
||||
{ idx: 22, type: 'open', topic: 'word-sequences', subtopic: 'word-problems', diff: 3,
|
||||
text: R`Первый турист ехал от базы со скоростью $40$ км/ч и успел на станцию за $3$ мин до отправления поезда. Второй турист, выехавший одновременно с первым от той же базы со скоростью $35$ км/ч, опоздал на этот же поезд на $3$ мин. На каком расстоянии (в километрах) от базы находится станция?`,
|
||||
answer: '28',
|
||||
sol: R`Пусть расстояние равно $x$ км. Разница во времени между туристами составляет $6$ мин $=\dfrac1{10}$ ч: $\dfrac{x}{35}-\dfrac{x}{40}=\dfrac1{10}$, $\dfrac{x}{280}=\dfrac1{10}$, $x=28$ км.`,
|
||||
ref: 'Арефьева «Алгебра, 7 кл.», гл. 3, § 16; гл. 4, § 25' },
|
||||
|
||||
{ idx: 23, type: 'open', topic: 'equations', subtopic: 'eq-logarithmic', diff: 4,
|
||||
text: R`Найдите произведение наименьшего целого решения на количество всех целых решений неравенства $\log_{0{,}4}\left(\dfrac{x^2}{4}-3\right)\ge 0$.`,
|
||||
answer: '-8',
|
||||
sol: R`$0=\log_{0{,}4}1$, и так как $0<0{,}4<1$, неравенство равносильно системе $\dfrac{x^2}{4}-3\le1$ и $\dfrac{x^2}{4}-3>0$, то есть $x^2\le16$ и $x^2>12$. Решение: $[-4;-2\sqrt3)\cup(2\sqrt3;4]$. Целых решений два ($-4$ и $4$), наименьшее $-4$. Произведение $-4\cdot2=-8$.`,
|
||||
ref: 'Арефьева «Алгебра, 11 кл.», гл. 3, § 10' },
|
||||
|
||||
{ idx: 24, type: 'open', topic: 'trigonometry', subtopic: 'trig-equations', diff: 4,
|
||||
text: R`Найдите (в градусах) наименьший положительный корень уравнения $4\sin\dfrac{x}{7}\cos\dfrac{x}{7}=\sqrt3$.`,
|
||||
answer: '210',
|
||||
sol: R`По формуле синуса двойного аргумента $2\sin\dfrac{2x}{7}=\sqrt3$, $\sin\dfrac{2x}{7}=\dfrac{\sqrt3}{2}$. Тогда $\dfrac{2x}{7}=(-1)^k60^\circ+180^\circ k$, $x=(-1)^k210^\circ+630^\circ k$. Наименьший положительный корень — $210^\circ$ (при $k=0$).`,
|
||||
ref: 'Арефьева «Алгебра, 10 кл.», гл. 1, § 8; § 11' },
|
||||
|
||||
{ idx: 25, type: 'open', topic: 'stereometry', subtopic: 'ster-polyhedra', diff: 4,
|
||||
text: R`В правильной треугольной пирамиде ребро основания равно $2\sqrt2$, а угол между боковым ребром и плоскостью основания равен $30^\circ$. Найдите значение выражения $9\sqrt6\cdot V$, где $V$ — объём этой пирамиды.`,
|
||||
answer: '24',
|
||||
sol: R`Высота $SO$, $\angle SAO=30^\circ$. $AO=\tfrac23 AM$, где медиана $AM=\sqrt6$, значит $AO=\dfrac{2\sqrt6}{3}$. Тогда $SO=AO\operatorname{tg}30^\circ=\dfrac{2\sqrt6}{3}\cdot\dfrac{\sqrt3}{3}=\dfrac{2\sqrt2}{3}$. Объём $V=\dfrac13\cdot\dfrac{(2\sqrt2)^2\sqrt3}{4}\cdot\dfrac{2\sqrt2}{3}=\dfrac{4\sqrt6}{9}$. Тогда $9\sqrt6\cdot V=9\sqrt6\cdot\dfrac{4\sqrt6}{9}=4\cdot6=24$.`,
|
||||
ref: 'Латотин «Геометрия, 11 кл.», разд. 2, § 3' },
|
||||
|
||||
{ idx: 26, type: 'open', topic: 'equations', subtopic: 'eq-irrational', diff: 4,
|
||||
text: R`Найдите произведение корней (корень, если он единственный) уравнения $\sqrt[4]{x^2+6x-27}\cdot\sqrt[3]{x^2-6x-27}=0$.`,
|
||||
answer: '-243',
|
||||
sol: R`Произведение равно нулю, когда один из множителей равен нулю, а другой имеет смысл. $x^2+6x-27=0\Rightarrow x=-9,\ 3$ (оба удовлетворяют ОДЗ). $x^2-6x-27=0\Rightarrow x=-3,\ 9$, но при $x=-3$ подкоренное выражение $\sqrt[4]{\;}$ отрицательно — не подходит, остаётся $x=9$. Корни уравнения: $-9,\ 3,\ 9$; произведение $-9\cdot3\cdot9=-243$.`,
|
||||
ref: 'Арефьева «Алгебра, 10 кл.», гл. 2, § 17' },
|
||||
|
||||
{ idx: 27, type: 'open', topic: 'stereometry', subtopic: 'ster-angles-distances', diff: 5,
|
||||
text: R`$ABCA_1B_1C_1$ — прямая треугольная призма, все рёбра которой равны. Точки $K$ и $M$ — середины рёбер $A_1C_1$ и $B_1C_1$ соответственно. Точка $N$ лежит на ребре $AB$ так, что $AN:NB=1:5$. Найдите значение выражения $\dfrac{1}{\cos^2\varphi}$, где $\varphi$ — угол между прямыми $A_1N$ и $KM$.`,
|
||||
answer: '37',
|
||||
sol: R`Пусть ребро равно $a$, $AN=\dfrac a6$. Так как $KM\parallel AB$ (средняя линия), угол между $A_1N$ и $KM$ равен углу $\angle NA_1B_1$. В прямоугольном треугольнике $A_1AN$: $A_1N=\sqrt{a^2+\left(\dfrac a6\right)^2}=\dfrac{a\sqrt{37}}{6}$, $\sin\angle AA_1N=\dfrac{a/6}{A_1N}=\dfrac{\sqrt{37}}{37}$. Тогда $\cos\varphi=\sin\angle AA_1N=\dfrac{\sqrt{37}}{37}$, и $\dfrac{1}{\cos^2\varphi}=37$.`,
|
||||
ref: 'Латотин «Геометрия, 10 кл.», разд. 2, § 4' },
|
||||
|
||||
{ idx: 28, type: 'open', topic: 'equations', subtopic: 'eq-exponential', diff: 4,
|
||||
text: R`Найдите произведение наибольшего целого отрицательного и наименьшего целого положительного решений неравенства $5\cdot25^{\frac{5-x}{23}}-26\cdot25^{\frac{5-x}{46}}+5\ge 0$.`,
|
||||
answer: '-504',
|
||||
sol: R`Замена $t=25^{\frac{5-x}{46}}$ даёт $5t^2-26t+5\ge0$, откуда $t\le\dfrac15$ или $t\ge5$. Тогда $\dfrac{5-x}{23}\le-1$ или $\dfrac{5-x}{23}\ge1$, то есть $x\ge28$ или $x\le-18$. Решение: $(-\infty;-18]\cup[28;+\infty)$. Наибольшее целое отрицательное — $-18$, наименьшее целое положительное — $28$; произведение $-18\cdot28=-504$.`,
|
||||
ref: 'Арефьева «Алгебра, 11 кл.», гл. 2, § 6' },
|
||||
|
||||
{ idx: 29, type: 'open', topic: 'functions', subtopic: 'fn-derivative', diff: 4,
|
||||
text: R`Найдите точку максимума и максимум функции $f(x)=x^3-75x-24\sin\dfrac{7\pi}{6}$. В ответ запишите их сумму.`,
|
||||
answer: '257',
|
||||
sol: R`$24\sin\dfrac{7\pi}{6}=24\cdot\left(-\dfrac12\right)=-12$, поэтому $f(x)=x^3-75x+12$. $f'(x)=3x^2-75=0$ при $x=\pm5$. Точка максимума $x_{\max}=-5$, $f(-5)=-125+375+12=262$. Сумма $-5+262=257$.`,
|
||||
ref: 'Арефьева «Алгебра, 10 кл.», гл. 3, § 20' },
|
||||
|
||||
{ idx: 30, type: 'open', topic: 'stereometry', subtopic: 'ster-rotation', diff: 5,
|
||||
text: R`Плоскость, параллельная основанию конуса, делит его высоту в отношении $2:5$, считая от вершины. Площадь сечения конуса меньше площади основания на $270\pi$. Образующая конуса составляет с плоскостью основания угол $\operatorname{arctg}\dfrac57$. Найдите значение выражения $\dfrac{\sqrt6\,V}{\pi}$, где $V$ — объём конуса.`,
|
||||
answer: '2940',
|
||||
sol: R`Сечением является круг; по свойству площади относятся как квадраты расстояний от вершины: $\dfrac{S_{\text{осн}}-270\pi}{S_{\text{осн}}}=\left(\dfrac27\right)^2=\dfrac{4}{49}$, откуда $45 S_{\text{осн}}=49\cdot270\pi$, $S_{\text{осн}}=294\pi$. Тогда $R^2=294$, $R=7\sqrt6$. Высота $SO=R\operatorname{tg}\left(\operatorname{arctg}\dfrac57\right)=7\sqrt6\cdot\dfrac57=5\sqrt6$. Объём $V=\dfrac13 S_{\text{осн}}\cdot SO=\dfrac13\cdot294\pi\cdot5\sqrt6=490\pi\sqrt6$. Тогда $\dfrac{\sqrt6\,V}{\pi}=490\cdot6=2940$.`,
|
||||
ref: 'Латотин «Геометрия, 11 кл.», разд. 2, § 4' },
|
||||
];
|
||||
|
||||
/* ── машинерия (как в e1v1) ────────────────────────────────────────────────── */
|
||||
function ansShowOf(t) { if (t.ansShow != null) return t.ansShow; if (t.type === 'mc') return `${t.answer})`; return `$${t.answer}$`; }
|
||||
function buildSolution(t) {
|
||||
let html = `${t.sol}<div class="sol-ans">Ответ: ${ansShowOf(t)}</div>`;
|
||||
if (t.ref) html += `<div class="sol-ref" style="margin-top:6px;font-size:.85em;opacity:.7">Учебник: ${t.ref}</div>`;
|
||||
return html;
|
||||
}
|
||||
const EPS = 1e-6;
|
||||
function srvToNumber(s) {
|
||||
if (s == null) return NaN;
|
||||
let t = String(s).trim().replace(/\$/g, '').replace(/\s+/g, '').replace(',', '.');
|
||||
const f = t.match(/^(-?\d+(?:\.\d+)?)\s*\/\s*(-?\d+(?:\.\d+)?)$/);
|
||||
if (f) { const n = Number(f[1]), d = Number(f[2]); return d === 0 ? NaN : n / d; }
|
||||
const n = Number(t); return Number.isFinite(n) ? n : NaN;
|
||||
}
|
||||
function checkAnswerServer(u, c0) {
|
||||
if (u == null || c0 == null) return false;
|
||||
const c = String(c0).trim();
|
||||
if (/^[а-д]$/.test(c)) return String(u).trim().toLowerCase() === c.toLowerCase();
|
||||
if (/^[^;]+;[^;]+$/.test(c)) return false;
|
||||
const cn = srvToNumber(c), un = srvToNumber(u);
|
||||
if (Number.isNaN(cn) || Number.isNaN(un)) return false;
|
||||
return Math.abs(cn - un) < EPS;
|
||||
}
|
||||
const problems = [];
|
||||
if (TASKS.length !== 30) problems.push(`Ожидалось 30, получено ${TASKS.length}`);
|
||||
const seen = new Set();
|
||||
for (const t of TASKS) {
|
||||
if (seen.has(t.idx)) problems.push(`Дубль idx=${t.idx}`); seen.add(t.idx);
|
||||
if (t.idx < 1 || t.idx > 30) problems.push(`idx вне 1..30: ${t.idx}`);
|
||||
if (!['mc', 'open', 'long'].includes(t.type)) problems.push(`#${t.idx}: тип ${t.type}`);
|
||||
if (t.type === 'mc') {
|
||||
if (!Array.isArray(t.opts) || t.opts.length !== 5) problems.push(`#${t.idx}: mc!=5 опций`);
|
||||
if (!t.opts.some(o => o[0] === t.answer)) problems.push(`#${t.idx}: answer "${t.answer}" не среди меток`);
|
||||
}
|
||||
if (!t.text || !t.sol) problems.push(`#${t.idx}: пустой text/sol`);
|
||||
if (t.type !== 'long' && !checkAnswerServer(t.answer, t.answer)) problems.push(`#${t.idx}: self-check "${t.answer}"`);
|
||||
if (/−/.test(String(t.answer))) problems.push(`#${t.idx}: Unicode-минус в answer`);
|
||||
}
|
||||
module.exports = { TASKS, buildSolution, ansShowOf, checkAnswerServer, EXAM, VARIANT, PROV };
|
||||
if (require.main !== module) return;
|
||||
|
||||
const DB = path.join(__dirname, '..', 'data', 'learnspace.db');
|
||||
const db = new DatabaseSync(DB);
|
||||
if (!db.prepare(`SELECT exam_key FROM exam_tracks WHERE exam_key=?`).get(EXAM)) { console.error(`✗ Трек '${EXAM}' не найден.`); process.exit(1); }
|
||||
console.log(`\n=== seed_ctmath_rt2425_e2v1 (${PROV}) variant=${VARIANT} ===`);
|
||||
console.log(`Режим: ${APPLY ? 'APPLY' : 'DRY-RUN'}\n`);
|
||||
console.log('Типы:', JSON.stringify(TASKS.reduce((a, t) => (a[t.type] = (a[t.type] || 0) + 1, a), {})), '| фигур:', TASKS.filter(t => t.fig).length, '\n');
|
||||
console.log('idx | type | subtopic | d | answer | fig');
|
||||
console.log('----+------+-----------------------+---+-----------+----');
|
||||
for (const t of TASKS) console.log(`${String(t.idx).padStart(3)} | ${t.type.padEnd(4)} | ${String(t.subtopic).padEnd(21)} | ${t.diff} | ${String(t.answer).padEnd(9)} | ${t.fig ? '✓' : ''}`);
|
||||
if (problems.length) { console.error(`\n✗ ПРОБЛЕМЫ (${problems.length}):`); problems.forEach(p => console.error(' - ' + p)); db.close(); process.exit(1); }
|
||||
console.log('\n✓ Валидация и self-check ответов пройдены (30/30).');
|
||||
if (!APPLY) { console.log('\nDRY-RUN: ничего не записано. Для записи добавьте --apply\n'); db.close(); process.exit(0); }
|
||||
|
||||
const upsert = db.prepare(`
|
||||
INSERT INTO exam_tasks (exam_key, variant, task_idx, task_type, text_html, figure_html, opts_json, answer, solution_html, topic, subtopic, difficulty)
|
||||
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
||||
ON CONFLICT(exam_key, variant, task_idx) DO UPDATE SET
|
||||
task_type=excluded.task_type, text_html=excluded.text_html, figure_html=excluded.figure_html,
|
||||
opts_json=excluded.opts_json, answer=excluded.answer, solution_html=excluded.solution_html,
|
||||
topic=excluded.topic, subtopic=excluded.subtopic, difficulty=excluded.difficulty`);
|
||||
let n = 0; db.exec('BEGIN');
|
||||
try {
|
||||
for (const t of TASKS) { upsert.run(EXAM, VARIANT, t.idx, t.type, t.text, t.fig || null, t.type === 'mc' ? JSON.stringify(t.opts) : null, t.answer, buildSolution(t), t.topic, t.subtopic, t.diff); n++; }
|
||||
const distinct = db.prepare(`SELECT COUNT(DISTINCT variant) c FROM exam_tasks WHERE exam_key=?`).get(EXAM).c;
|
||||
db.prepare(`UPDATE exam_tracks SET variants_count=? WHERE exam_key=?`).run(distinct, EXAM);
|
||||
db.exec('COMMIT');
|
||||
console.log(`\n✓ Записано/обновлено ${n} заданий (variant=${VARIANT}). variants_count=${distinct}.`);
|
||||
console.log(`\nПробник: /exam-prep/ctmath → «Варианты» → «Вариант ${VARIANT}».\n`);
|
||||
} catch (e) { db.exec('ROLLBACK'); console.error('\n✗ Ошибка записи, откат:', e.message); process.exitCode = 1; }
|
||||
db.close();
|
||||
Reference in New Issue
Block a user