fix(textbooks): Физика 9 — escape § в num + phys9_legacy.js + финалы 5 глав
Багфиксы: - gen_phys9_ch.js: убран двойной escape \u00a7 → литерал § (раньше карточка показывала '\u00a7 1' вместо '§ 1') - phys9_legacy.js (262 КБ): извлечён весь JS монолита для глобальных onclick- обработчиков (startAnim1, lab11add/all/reset, checkNum, togglePend36 и пр.). Setup-код в конце обёрнут в try/catch — он рассчитан на DOM монолита. - migrate_phys9_ch4.js + migrate_phys9_content.js: подключают phys9_legacy.js во все 5 ch-файлов перед закрытием <head>. Финалы глав (write_phys9_finals.js): - ch1: 5 задач (кинематика — поезд, разгон, окружность, лодка/река) - ch2: 5 задач (динамика — трение, Гук, свободное падение, перегрузка) - ch3: 5 задач (статика — рычаг, Архимед, блок, КПД накл. плоск., льдина) - ch4: 5 задач (импульс — неупр. удар, ЗСЭ, мощность крана, пуля, бросок) - ch5: 5 контрольных по практикуму (среднее, ЛР2, ЛР4, ЛР6, ЛР10) Все задачи с автопроверкой через checkNum() (теперь работает из legacy.js).
This commit is contained in:
@@ -15,6 +15,7 @@
|
||||
<script src="/js/api.js" defer></script>
|
||||
<script src="/js/xp.js" defer></script>
|
||||
<script src="/js/phys.js" defer></script>
|
||||
<script src="/js/phys9_legacy.js" defer></script>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Manrope:wght@600;700;800;900&family=Unbounded:wght@700;800;900&family=JetBrains+Mono:wght@500;700&display=swap" rel="stylesheet">
|
||||
<style>
|
||||
:root{
|
||||
@@ -1258,11 +1259,69 @@ function build_final5(){
|
||||
const box = document.getElementById('final5-body');
|
||||
let html = '';
|
||||
html += makeCard('theory', "Финал главы 5", "★", `
|
||||
<p><b>Финал главы 5</b> — этот параграф в разработке (Phase 5+).</p>
|
||||
<p>Здесь появятся: теория, формулы, разобранные примеры и 3–4 интерактива в стиле «физики 10» — векторные диаграммы, графики движения, ползунки и автопроверяемые тренажёры.</p>
|
||||
<p style="margin-top:10px;padding:10px 14px;background:var(--sec-acc-soft);border-radius:9px;font-size:.92rem">
|
||||
<b>Phase 0:</b> создан скелет. <b>Phase 5:</b> наполнение по учебнику «Физика 9» (Исаченкова, Сокольский, Захаревич, 2019).
|
||||
</p>
|
||||
|
||||
<div class="formula-grid" style="margin-bottom:20px">
|
||||
<div class="fcard highlight"><h3>Погрешности</h3>
|
||||
<div class="main-f">$\\Delta x = \\Delta x_{\\text{сист}} + \\Delta x_{\\text{случ}}$</div>
|
||||
<p>$\\varepsilon_x = \\dfrac{\\Delta x}{\\langle x\\rangle}\\cdot 100\\%$ · итог: $x = \\langle x\\rangle \\pm \\Delta x$</p>
|
||||
</div>
|
||||
<div class="fcard"><h3>Ключевые формулы 12 ЛР</h3>
|
||||
<div class="main-f">$a = \\dfrac{2l}{t^2}$, $\\mu = \\dfrac{F_{\\text{тр}}}{P}$, $F_A = F_1 - F_2$</div>
|
||||
<p>$k = F/x$ · $\\eta = \\dfrac{A_{\\text{пол}}}{A_{\\text{сов}}}$ · $v_0 = l\\sqrt{g/(2h)}$</p>
|
||||
</div>
|
||||
<div class="fcard"><h3>Проверка законов</h3>
|
||||
<div class="main-f">ЗСИ · ЗСЭ · условие равновесия</div>
|
||||
<p>ЛР7: $F_1 \\ell_1 = F_2 \\ell_2$ · ЛР11: $m_1 l_1 = m_1 l_1' + m_2 l_2'$ · ЛР12: $F|x| = ml^2 g/(2h)$</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section-title"><i class="fas fa-star"></i> Контрольные вопросы по практикуму</div>
|
||||
|
||||
<div class="task-card">
|
||||
<div class="task-num">Вопрос 1</div>
|
||||
<div class="task-text">При пяти повторных измерениях времени получены значения: $4{,}8$ · $5{,}0$ · $5{,}2$ · $4{,}9$ · $5{,}1$ с. Найдите среднее значение $\\langle t\\rangle$.</div>
|
||||
<div class="task-hint">$\\langle t\\rangle = (t_1 + t_2 + t_3 + t_4 + t_5)/5$.</div>
|
||||
<div class="ans-row"><input type="number" class="ans-inp" id="fin5-q1" step="any"><span class="unit-lbl">с</span>
|
||||
<button class="btn btn-pri" onclick="checkNum('fin5-q1', 5.0, 'с', 0.02)">Проверить</button></div>
|
||||
<div class="feedback" id="fb-fin5-q1"></div>
|
||||
</div>
|
||||
|
||||
<div class="task-card">
|
||||
<div class="task-num">Вопрос 2</div>
|
||||
<div class="task-text">В ЛР2 шарик прошёл по жёлобу длину $l = 0{,}80$ м за $t = 1{,}0$ с. Найдите модуль ускорения шарика.</div>
|
||||
<div class="task-hint">$a = 2l/t^2$.</div>
|
||||
<div class="ans-row"><input type="number" class="ans-inp" id="fin5-q2" step="any"><span class="unit-lbl">м/с²</span>
|
||||
<button class="btn btn-pri" onclick="checkNum('fin5-q2', 1.6, 'м/с²', 0.05)">Проверить</button></div>
|
||||
<div class="feedback" id="fb-fin5-q2"></div>
|
||||
</div>
|
||||
|
||||
<div class="task-card">
|
||||
<div class="task-num">Вопрос 3</div>
|
||||
<div class="task-text">В ЛР4 при подвешивании груза массой $m = 0{,}2$ кг пружина растянулась на $x = 4$ см. Найдите жёсткость пружины. $g = 10$ м/с².</div>
|
||||
<div class="task-hint">$k = mg/x$.</div>
|
||||
<div class="ans-row"><input type="number" class="ans-inp" id="fin5-q3" step="any"><span class="unit-lbl">Н/м</span>
|
||||
<button class="btn btn-pri" onclick="checkNum('fin5-q3', 50, 'Н/м', 0.5)">Проверить</button></div>
|
||||
<div class="feedback" id="fb-fin5-q3"></div>
|
||||
</div>
|
||||
|
||||
<div class="task-card">
|
||||
<div class="task-num">Вопрос 4</div>
|
||||
<div class="task-text">В ЛР6 шарик упал на пол с высоты $h = 0{,}8$ м, пройдя по горизонтали $l = 1{,}6$ м. Найдите начальную горизонтальную скорость шарика. $g = 10$ м/с².</div>
|
||||
<div class="task-hint">$v_0 = l\\sqrt{g/(2h)}$. Подставьте численно.</div>
|
||||
<div class="ans-row"><input type="number" class="ans-inp" id="fin5-q4" step="any"><span class="unit-lbl">м/с</span>
|
||||
<button class="btn btn-pri" onclick="checkNum('fin5-q4', 4, 'м/с', 0.1)">Проверить</button></div>
|
||||
<div class="feedback" id="fb-fin5-q4"></div>
|
||||
</div>
|
||||
|
||||
<div class="task-card">
|
||||
<div class="task-num">Вопрос 5</div>
|
||||
<div class="task-text">В ЛР10 цилиндр в воздухе весил $F_1 = 1{,}0$ Н, а полностью погружённый в воду — $F_2 = 0{,}6$ Н. Найдите модуль выталкивающей силы.</div>
|
||||
<div class="task-hint">$F_A = F_1 - F_2$.</div>
|
||||
<div class="ans-row"><input type="number" class="ans-inp" id="fin5-q5" step="any"><span class="unit-lbl">Н</span>
|
||||
<button class="btn btn-pri" onclick="checkNum('fin5-q5', 0.4, 'Н', 0.02)">Проверить</button></div>
|
||||
<div class="feedback" id="fb-fin5-q5"></div>
|
||||
</div>
|
||||
|
||||
`);
|
||||
html += secNav('lr12', null);
|
||||
html += readButton('final5');
|
||||
|
||||
Reference in New Issue
Block a user