From 85c516e81159ce9e1ae040a897ed3e504a4f25dc Mon Sep 17 00:00:00 2001 From: Maxim Dolgolyov Date: Tue, 2 Jun 2026 21:14:56 +0300 Subject: [PATCH] =?UTF-8?q?feat(math6):=20=D0=BE=D0=B1=D0=BE=D0=B3=D0=B0?= =?UTF-8?q?=D1=89=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B2=D1=81=D0=B5=D1=85=20?= =?UTF-8?q?=D0=B3=D0=BB=D0=B0=D0=B2=20=E2=80=94=20=D1=85=D1=83=D0=BA,=20?= =?UTF-8?q?=D1=80=D0=B0=D0=B7=D0=B1=D0=BE=D1=80=20=D0=BF=D0=BE=20=D1=88?= =?UTF-8?q?=D0=B0=D0=B3=D0=B0=D0=BC,=20=D1=84=D0=B0=D0=BA=D1=82=D1=8B=20?= =?UTF-8?q?=D0=B2=20=D0=BA=D0=B0=D0=B6=D0=B4=D0=BE=D0=BC=20=C2=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Каждый содержательный параграф 6 глав дополнен (Sonnet, по главе): - карточка «Где это в жизни» (реальный контекст темы); - «Разбор по шагам» (нумерованный алгоритм решения); - «А знаешь ли ты?» (интересный факт/история); - доведено до ≥2 рабочих интерактивов (где было меньше — добавлены). Движок/общие файлы не трогались; структура M6/порядок init сохранены. Проверено: тесты math6 18/18, честный рендер 4 глав — контент появляется, рантайм-ошибок нет (только jsdom scrollTo-заглушка). Co-Authored-By: Claude Opus 4.8 (1M context) --- frontend/textbooks/math_6_ch1.html | 142 +++++++++++++++++++++ frontend/textbooks/math_6_ch2.html | 130 ++++++++++++++++++- frontend/textbooks/math_6_ch3.html | 81 +++++++++++- frontend/textbooks/math_6_ch4.html | 163 +++++++++++++++++++++++- frontend/textbooks/math_6_ch5.html | 143 ++++++++++++++++++++- frontend/textbooks/math_6_ch6.html | 119 ++++++++++++++++- plans/textbooks-6/PLAN_MATH_6_ENRICH.md | 47 +++++++ 7 files changed, 813 insertions(+), 12 deletions(-) create mode 100644 plans/textbooks-6/PLAN_MATH_6_ENRICH.md diff --git a/frontend/textbooks/math_6_ch1.html b/frontend/textbooks/math_6_ch1.html index c405004..dcd0974 100644 --- a/frontend/textbooks/math_6_ch1.html +++ b/frontend/textbooks/math_6_ch1.html @@ -110,6 +110,8 @@ function _round(n,d){ var p=Math.pow(10,d); return Math.round(n*p)/p; } /* ===================== § 1. ЗАПИСЬ И РАЗРЯДЫ ===================== */ function buildP1(){ var box=document.getElementById('p1-body'); var h=''; + h+=makeCard('oral','Где это в жизни','1.0', + '

Десятичные дроби окружают нас каждый день. Цена в чеке: 2,50 руб. Температура тела: 36,6 °C. Показание счётчика воды: 123,47 м³. Даже спортивный результат на 100 метров объявляют с десятыми секунды: 9,58 с — рекорд мира. Без умения читать эти цифры не обойтись нигде.

'); h+=makeCard('theory','Что такое десятичная дробь','1.1', '

Десятичная дробь — это дробь со знаменателем $10$, $100$, $1000$ и т. д. Такие дроби записывают без знаменателя, отделяя целую часть от дробной запятой.

' +'

$\\dfrac{7}{10}=0{,}7$  ·  $\\dfrac{25}{100}=0{,}25$  ·  $3\\dfrac{4}{100}=3{,}04$

' @@ -122,6 +124,17 @@ function buildP1(){ h+=makeCard('example','Читаем по разрядам','1.3', '

$0{,}7$ — семь десятых;   $0{,}09$ — девять сотых;   $5{,}28$ — пять целых двадцать восемь сотых.

' +'

Приписывание нулей справа не меняет дробь: $0{,}5=0{,}50=0{,}500$.

'); + h+=makeCard('example','Разбор по шагам','1.4', + '

Запишем дробь $\\dfrac{305}{1000}$ в десятичном виде.

' + +'
    ' + +'
  1. Считаем нули в знаменателе: $1\\underbrace{000}_{3}$ — три нуля.
  2. ' + +'
  3. Значит, после запятой будет 3 цифры.
  4. ' + +'
  5. Числитель $305$ — три цифры: $3,\\,0,\\,5$.
  6. ' + +'
  7. Записываем: $0{,}305$ — ноль целых триста пять тысячных.
  8. ' + +'
  9. Проверка: десятые — $3$, сотые — $0$, тысячные — $5$. Верно!
  10. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','1.5', + '

Запятую в записи дробей начали использовать в Европе около 400 лет назад. В большинстве стран разделителем служит запятая (Беларусь, Россия, Германия…), а в США и Великобритании — точка: $3.14$ и $3{,}14$ означают одно и то же число!

'); h+='
Интерактив 1
Разрядный конструктор
' +'
Двигай ползунки разрядов — число собирается из целой части и десятых, сотых, тысячных.
' +'
' @@ -177,6 +190,8 @@ function buildP1(){ /* ===================== § 2. СРАВНЕНИЕ И ОКРУГЛЕНИЕ ===================== */ function buildP2(){ var box=document.getElementById('p2-body'); var h=''; + h+=makeCard('oral','Где это в жизни','2.0', + '

Округление используется повсюду. Кассир округляет сдачу до копеек. Синоптик сообщает: «температура минус 12 °C», хотя прибор показал $-12{,}4$ °C. В спорте прыгун в длину прыгнул $7{,}847$ м — результат записывают как $7{,}84$ м (до сотых). Умение сравнивать дроби нужно, чтобы выбрать более выгодную цену или более тёплый день.

'); h+=makeCard('rule','Как сравнивать десятичные дроби','2.1', '

1) Сначала сравнивают целые части: больше та дробь, у которой целая часть больше.

' +'

2) Если целые части равны — сравнивают поразрядно слева направо: десятые, потом сотые и т. д.

' @@ -189,6 +204,16 @@ function buildP2(){ h+=makeCard('example','Примеры','2.3', '

$0{,}9>0{,}89$, ведь $0{,}90>0{,}89$.   $2{,}1<2{,}15$.   $7{,}0=7$.

' +'

$12{,}96 \\approx 13{,}0$ (до десятых) — при округлении $9$ превратилось в $10$, перенос в целые.

'); + h+=makeCard('example','Разбор по шагам','2.4', + '

Сравним $3{,}07$ и $3{,}7$.

' + +'
    ' + +'
  1. Целые части: у обоих $3$. Равны — смотрим дальше.
  2. ' + +'
  3. Уравняем знаки: $3{,}07$ и $3{,}70$.
  4. ' + +'
  5. Десятые: $0 < 7$. Значит $3{,}07 < 3{,}7$.
  6. ' + +'
' + +'

Округлим $4{,}853$ до десятых: смотрим на сотые — $5$. Так как $5 \\ge 5$, десятые увеличиваем: $4{,}9$.

'); + h+=makeCard('theory','А знаешь ли ты?','2.5', + '

Правило «от 5 и выше — увеличиваем» знали ещё математики Древней Индии. Именно они первыми стали записывать дробные части чисел с помощью позиционной системы. Само слово «цифра» пришло из арабского языка — оттуда, откуда к нам пришла эта система записи чисел.

'); h+='
Интерактив 1
Что больше?
' +'
Сравни два числа на координатной прямой и выбери верный знак.
' +'
Вопрос 1 / 6Очки: 0 / 6
' @@ -244,6 +269,8 @@ function buildP2(){ /* ===================== § 3. КООРДИНАТНЫЙ ЛУЧ ===================== */ function buildP3(){ var box=document.getElementById('p3-body'); var h=''; + h+=makeCard('oral','Где это в жизни','3.0', + '

Координатный луч — основа любой шкалы вокруг нас: термометр, линейка, шкала весов, ось времени в редакторе видео. Когда ты видишь, что «стрелка показывает $36{,}6$», ты фактически читаешь координату точки на луче. Географические карты тоже построены на системе координат — из двух таких лучей!

'); h+=makeCard('theory','Координатный луч','3.1', '

Координатный луч — это луч с началом в точке $O$, которой соответствует число $0$, выбранным единичным отрезком и направлением.

' +'

Каждой точке луча соответствует координата — число, показывающее, на каком расстоянии (в единичных отрезках) от начала она находится.

'); @@ -252,6 +279,16 @@ function buildP3(){ +'

$1{,}3$ лежит между $1$ и $2$, ближе к $1$; $2{,}5$ — ровно посередине между $2$ и $3$.

'); h+=makeCard('example','Пример','3.3', '

Точка с координатой $0{,}4$ — четвёртое деление после нуля. Точка с координатой $1{,}8$ — восьмое деление после единицы.

'); + h+=makeCard('example','Разбор по шагам','3.4', + '

Отметим точку с координатой $1{,}3$ на луче с единичным отрезком $1$ см.

' + +'
    ' + +'
  1. Целая часть — $1$: отмечаем точку $1$ на луче.
  2. ' + +'
  3. Дробная часть — $0{,}3$: надо пройти $3$ деления из $10$.
  4. ' + +'
  5. Делим отрезок от $1$ до $2$ на $10$ равных частей.
  6. ' + +'
  7. От точки $1$ идём вправо $3$ деления — вот наша точка $1{,}3$.
  8. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','3.5', + '

Систему координат придумал французский математик и философ Рене Декарт в XVII веке — по легенде, он лежал в постели и наблюдал за мухой на потолке: «В каком месте потолка находится муха?» Именно этот вопрос навёл его на идею задавать положение точки двумя числами.

'); h+='
Интерактив 1
Прочитай координату
' +'
Определи координату отмеченной точки. Запятую вводи как точку или запятую.
' +'
Вопрос 1 / 5Очки: 0 / 5
' @@ -306,6 +343,7 @@ function buildP3(){ /* ===================== § 4. СЛОЖЕНИЕ И ВЫЧИТАНИЕ ===================== */ function _dec(x){ var s=String(x), i=s.indexOf('.'); return i<0?0:s.length-i-1; } + function _mant(x,d){ return Math.round(x*Math.pow(10,d)); } function _splitNum(x){ var s=String(x).replace(',','.').split('.'); return {i:s[0], f:s[1]||''}; } function _rnum(maxd){ var d=_ri(0,maxd==null?2:maxd); var m=_ri(1, d===0?99:(d===1?499:4999)); return m/Math.pow(10,d); } @@ -317,6 +355,8 @@ function _colText(a,b,op){ } function buildP4(){ var box=document.getElementById('p4-body'); var h=''; + h+=makeCard('oral','Где это в жизни','4.0', + '

Сложение и вычитание десятичных дробей нужно каждый раз, когда ты платишь в магазине или считаешь сдачу. Купил булочку за 0,85 руб. и сок за 1,4 руб. — сколько всего? Ошибка в «запятой под запятой» стоит денег в прямом смысле. Кассовые программы делают это за тебя, но ошибки случаются — и тут на помощь приходит проверка вручную.

'); h+=makeCard('rule','Сложение и вычитание «в столбик»','4.1', '

1) Записывают числа так, чтобы запятая стояла под запятой, одинаковые разряды — друг под другом.

' +'

2) Уравнивают число знаков после запятой нулями.

' @@ -325,6 +365,18 @@ function buildP4(){ h+=makeCard('example','Примеры','4.2', '

$3{,}4 + 12{,}65 = 3{,}40 + 12{,}65 = 16{,}05$.

' +'

$7 - 2{,}3 = 7{,}0 - 2{,}3 = 4{,}7$.

'); + h+=makeCard('example','Разбор по шагам','4.3', + '

Вычислим $5{,}6 + 3{,}47$.

' + +'
    ' + +'
  1. Уравниваем знаки: $5{,}60$ и $3{,}47$ (дописали ноль).
  2. ' + +'
  3. Записываем столбиком: запятая строго под запятой.
  4. ' + +'
  5. Складываем сотые: $0+7=7$.
  6. ' + +'
  7. Складываем десятые: $6+4=10$ — пишем $0$, переносим $1$.
  8. ' + +'
  9. Складываем единицы: $5+3+1=9$.
  10. ' + +'
  11. Итог: $9{,}07$. Запятая — под запятыми.
  12. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','4.4', + '

Самая частая ошибка школьников при сложении десятичных дробей — выровнять числа по правому краю, как натуральные. Из-за этого $3{,}4 + 12{,}65$ превращается в неверный «$12{,}99$» вместо правильного $16{,}05$. Запятая под запятой — золотое правило!

'); h+='
Интерактив 1
Столбик: посчитай сам
' +'
Запятая под запятой — выполни действие и введи ответ (запятая или точка).
' +'
Пример 1 / 6Очки: 0 / 6
' @@ -387,12 +439,24 @@ function buildP4(){ /* ===================== § 5. УМНОЖЕНИЕ И ДЕЛЕНИЕ НА 10, 100, 1000 ===================== */ function buildP5(){ var box=document.getElementById('p5-body'); var h=''; + h+=makeCard('oral','Где это в жизни','5.0', + '

Перевод единиц — это всегда умножение или деление на степень десяти. $3{,}5$ км = $3{,}5 \\cdot 1000 = 3500$ м. $750$ г = $750 \\div 1000 = 0{,}75$ кг. В магазине, на кухне, в физике — этот приём работает мгновенно в уме, без калькулятора. Запомни: умножать — запятая вправо, делить — влево.

'); h+=makeCard('rule','Сдвиг запятой','5.1', '

Чтобы умножить десятичную дробь на $10$, $100$, $1000$, запятую переносят вправо на $1$, $2$, $3$ знака.

' +'

Чтобы разделить на $10$, $100$, $1000$, запятую переносят влево на $1$, $2$, $3$ знака.

' +'

Если цифр не хватает — дописывают нули: $3{,}5\\cdot 100 = 350$,   $4\\div 100 = 0{,}04$.

'); h+=makeCard('example','Примеры','5.2', '

$2{,}71\\cdot 10 = 27{,}1$  ·  $0{,}6\\cdot 1000 = 600$  ·  $58{,}3\\div 100 = 0{,}583$.

'); + h+=makeCard('example','Разбор по шагам','5.3', + '

Вычислим $0{,}047 \\cdot 1000$.

' + +'
    ' + +'
  1. У $1000$ три нуля, значит запятая сдвигается вправо на $3$ знака.
  2. ' + +'
  3. Запись: $0{,}047$ → сдвигаем: $0\\mathbf{,}047$ → $00{,}47$ → $004{,}7$ → $047{,}$
  4. ' + +'
  5. Убираем ведущие нули: $47$.
  6. ' + +'
  7. Ответ: $0{,}047 \\cdot 1000 = 47$.
  8. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','5.4', + '

Именно потому что в нашей системе счёта 10 цифр (0–9), умножение на 10 такое простое — достаточно сдвинуть запятую. Если бы мы считали, как компьютеры, — в двоичной системе (двойками), — тогда так же просто работало бы умножение на $2$, $4$, $8$… Но умножение на $10$ было бы сложным!

'); h+='
Интерактив 1
Куда сдвинуть запятую?
' +'
Выбери число и действие — посмотри, как и куда переносится запятая.
' +'
' @@ -445,12 +509,25 @@ function buildP5(){ /* ===================== § 6. УМНОЖЕНИЕ ДЕСЯТИЧНЫХ ДРОБЕЙ ===================== */ function buildP6(){ var box=document.getElementById('p6-body'); var h=''; + h+=makeCard('oral','Где это в жизни','6.0', + '

Умножение десятичных дробей — это цена × количество. Ткань стоит $3{,}5$ руб. за метр, тебе нужно $1{,}2$ м — сколько заплатить? Или: скорость $72{,}5$ км/ч, время $0{,}4$ ч — какое расстояние проедет машина? Все эти задачи решаются одним действием — умножением десятичных дробей.

'); h+=makeCard('rule','Как умножать десятичные дроби','6.1', '

1) Умножают числа, не обращая внимания на запятые (как натуральные).

' +'

2) В произведении отделяют запятой столько цифр справа, сколько их после запятой у обоих множителей вместе.

'); h+=makeCard('example','Пример','6.2', '

$1{,}2\\cdot 0{,}3$: умножаем $12\\cdot 3 = 36$; всего знаков после запятой $1+1=2$, значит $1{,}2\\cdot 0{,}3 = 0{,}36$.

' +'

$0{,}25\\cdot 4 = 1$ (знаков $2+0=2$: $100\\to 1{,}00 = 1$).

'); + h+=makeCard('example','Разбор по шагам','6.3', + '

Вычислим $2{,}4 \\cdot 0{,}15$.

' + +'
    ' + +'
  1. Считаем знаки: у $2{,}4$ — одна цифра после запятой, у $0{,}15$ — две. Итого: $1+2=3$.
  2. ' + +'
  3. Множим как натуральные: $24 \\cdot 15 = 360$.
  4. ' + +'
  5. В результате $360$ отсчитываем 3 цифры справа налево: $360 \\to 0{,}360$.
  6. ' + +'
  7. Убираем незначащий ноль: $0{,}36$.
  8. ' + +'
  9. Ответ: $2{,}4 \\cdot 0{,}15 = 0{,}36$.
  10. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','6.4', + '

Число $\\pi \\approx 3{,}14159\\ldots$ — бесконечная непериодическая дробь. Архимед вычислял её, умножая и деля вручную. Современные компьютеры рассчитали более 100 триллионов знаков числа $\\pi$ после запятой — и конца им не видно!

'); h+='
Интерактив 1
Считаем знаки после запятой
' +'
Двигай множители — смотри, как число знаков после запятой определяет ответ.
' +'
' @@ -496,17 +573,31 @@ function buildP6(){ /* ===================== § 7. ДЕЛЕНИЕ НА НАТУРАЛЬНОЕ ЧИСЛО ===================== */ function _gcd(a,b){ a=Math.abs(a);b=Math.abs(b); while(b){ var t=b; b=a%b; a=t; } return a||1; } + function _finite(p,q){ var g=_gcd(p,q); q=q/g; while(q%2===0)q/=2; while(q%5===0)q/=5; return q===1; } function _fracDec(p,q){ var ip=Math.floor(p/q), rem=p%q; if(rem===0)return String(ip); var dg='',seen={},pos=0,ps=-1; while(rem!==0){ if(seen[rem]!==undefined){ ps=seen[rem]; break; } seen[rem]=pos; rem*=10; dg+=Math.floor(rem/q); rem%=q; pos++; } if(rem===0) return ip+','+dg; return ip+','+dg.slice(0,ps)+'('+dg.slice(ps)+')'; } function buildP7(){ var box=document.getElementById('p7-body'); var h=''; + h+=makeCard('oral','Где это в жизни','7.0', + '

Деление используется, когда нужно разделить поровну: три друга складываются на подарок и платят $7{,}5$ руб. — сколько с каждого? Или: нитку длиной $3{,}6$ м нарезают на $4$ равных куска — какова длина каждого? Эти задачи решаются за секунды, если знать алгоритм деления уголком.

'); h+=makeCard('rule','Деление десятичной дроби на натуральное число','7.1', '

Делят «уголком», как натуральные числа. Как только заканчивается целая часть делимого, в частном ставят запятую и продолжают деление.

' +'

Если делимое меньше делителя, целая часть частного равна $0$. Если деление «не заканчивается» — дописывают нули к делимому.

'); h+=makeCard('example','Примеры','7.2', '

$7{,}2 \\div 3 = 2{,}4$  ·  $1 \\div 4 = 0{,}25$  ·  $9{,}6 \\div 8 = 1{,}2$

'); + h+=makeCard('example','Разбор по шагам','7.3', + '

Вычислим $5{,}4 \\div 4$.

' + +'
    ' + +'
  1. Делим целую часть: $5 \\div 4 = 1$, остаток $1$.
  2. ' + +'
  3. Перешли к дробной части — ставим в частном запятую.
  4. ' + +'
  5. Опускаем десятые: $10+4=14$. $14 \\div 4 = 3$, остаток $2$.
  6. ' + +'
  7. Остаток есть, дописываем ноль к делимому: $20 \\div 4 = 5$, остаток $0$.
  8. ' + +'
  9. Деление закончилось. Ответ: $5{,}4 \\div 4 = 1{,}35$.
  10. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','7.4', + '

Алгоритм деления «уголком» (столбиком) использовали ещё в Средние века. Тогда его называли «галера» — схема записи напоминала паруса корабля. Сейчас мы рисуем уголок, но принцип тот же: делим по частям, не пугаясь больших чисел.

'); h+='
Интерактив 1
Тренажёр деления
' +'
Раздели десятичную дробь на натуральное число. Ответ — десятичная дробь.
' +'
Пример 1 / 6Очки: 0 / 6
' @@ -556,11 +647,23 @@ function buildP7(){ /* ===================== § 8. ДЕЛЕНИЕ НА ДЕСЯТИЧНУЮ ДРОБЬ ===================== */ function buildP8(){ var box=document.getElementById('p8-body'); var h=''; + h+=makeCard('oral','Где это в жизни','8.0', + '

Деление на десятичную дробь встречается при расчёте количества: купили $1{,}5$ м ткани по цене $0{,}75$ руб. за метр — сколько метров можно купить на $3$ руб.? Или: одна таблетка весит $0{,}25$ г, пачка весит $3$ г — сколько таблеток в пачке? Ответ: $3 \\div 0{,}25 = 12$.

'); h+=makeCard('rule','Деление на десятичную дробь','8.1', '

Чтобы разделить на десятичную дробь, в делимом и делителе переносят запятую вправо на столько знаков, сколько их после запятой у делителя. Получается деление на натуральное число.

' +'

$4{,}5 \\div 0{,}5 = 45 \\div 5 = 9$  ·  $1{,}2 \\div 0{,}03 = 120 \\div 3 = 40$.

'); h+=makeCard('example','Почему так можно','8.2', '

Деление — это дробь. Умножив делимое и делитель на одно и то же число ($10$, $100$…), значение дроби не меняется: $\\dfrac{4{,}5}{0{,}5}=\\dfrac{45}{5}=9$.

'); + h+=makeCard('example','Разбор по шагам','8.3', + '

Вычислим $3{,}6 \\div 0{,}12$.

' + +'
    ' + +'
  1. У делителя $0{,}12$ — два знака после запятой.
  2. ' + +'
  3. Умножаем оба числа на $100$: $3{,}6 \\cdot 100 = 360$,  $0{,}12 \\cdot 100 = 12$.
  4. ' + +'
  5. Теперь делим натуральные числа: $360 \\div 12 = 30$.
  6. ' + +'
  7. Ответ: $3{,}6 \\div 0{,}12 = 30$.
  8. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','8.4', + '

Приём «умножить делимое и делитель на одно число» — это свойство дроби: числитель и знаменатель можно умножить на одно и то же (не ноль), и дробь не изменится. Это позволяет превращать любое деление на десятичную дробь в деление на целое число — удобный математический трюк!

'); h+='
Интерактив 1
Превращаем в деление на натуральное
' +'
Выбери пример — увидишь, как перенос запятой превращает делитель в натуральное число.
' +'
' @@ -605,12 +708,27 @@ function buildP8(){ /* ===================== § 9. КОНЕЧНЫЕ И БЕСКОНЕЧНЫЕ ДРОБИ ===================== */ function buildP9(){ var box=document.getElementById('p9-body'); var h=''; + h+=makeCard('oral','Где это в жизни','9.0', + '

Треть пиццы на троих — это $1 \\div 3 = 0{,}3333\\ldots$ — бесконечная дробь! Поэтому на калькуляторе мы видим $0{,}333333$, а не точный ответ. Компьютеры хранят числа с ограниченным числом знаков после запятой, и это порой приводит к маленьким ошибкам. Понимание конечных и бесконечных дробей помогает предсказать, когда возможна погрешность.

'); h+=makeCard('theory','Конечные и бесконечные десятичные дроби','9.1', '

Обыкновенную дробь обращают в десятичную делением числителя на знаменатель. Иногда деление заканчивается — получается конечная дробь ($\\tfrac{3}{4}=0{,}75$).

' +'

Иногда цифры начинают повторяться без конца — это бесконечная периодическая дробь. Повторяющуюся группу (период) пишут в скобках: $\\tfrac{1}{3}=0{,}(3)$, $\\tfrac{1}{6}=0{,}1(6)$.

'); h+=makeCard('rule','Когда дробь конечная','9.2', '

Несократимая обыкновенная дробь обращается в конечную десятичную тогда и только тогда, когда в разложении её знаменателя есть только множители 2 и 5.

' +'

$\\tfrac{7}{20}$ — конечная ($20=2^2\\cdot5$); $\\tfrac{5}{6}$ — бесконечная ($6=2\\cdot3$).

'); + h+=makeCard('example','Разбор по шагам','9.3', + '

Определим вид дроби $\\dfrac{7}{12}$.

' + +'
    ' + +'
  1. Сокращаем: $\\gcd(7,12)=1$ — дробь несократима.
  2. ' + +'
  3. Разложим знаменатель: $12 = 2^2 \\cdot 3$.
  4. ' + +'
  5. Есть множитель $3$ — значит дробь бесконечная.
  6. ' + +'
  7. Проверка делением: $7 \\div 12 = 0{,}58333\\ldots = 0{,}58(3)$.
  8. ' + +'
  9. Период — цифра $3$, он не заканчивается.
  10. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','9.4', + '
Что такое число $0{,}(9)$? Нажми, чтобы узнать.' + +'

$0{,}999\\ldots = 0{,}(9) = 1$ — это не ошибка, это математический факт! Докажем: пусть $x = 0{,}(9)$. Тогда $10x = 9{,}(9)$. Вычитаем: $10x - x = 9{,}(9) - 0{,}(9) = 9$, откуда $9x=9$, $x=1$. Бесконечные дроби умеют удивлять!

' + +'
'); h+='
Интерактив 1
Конечная или бесконечная?
' +'
Реши, обращается ли дробь в конечную десятичную (проверь множители знаменателя).
' +'
Вопрос 1 / 6Очки: 0 / 6
' @@ -661,11 +779,23 @@ function buildP9(){ /* ===================== § 10. ПРЕОБРАЗОВАНИЯ ВЫРАЖЕНИЙ ===================== */ function buildP10(){ var box=document.getElementById('p10-body'); var h=''; + h+=makeCard('oral','Где это в жизни','10.0', + '

В реальных задачах числа бывают «смешанными»: рецепт требует $\\tfrac{1}{4}$ стакана масла, а у тебя весы, которые показывают $0{,}25$. Или задача по физике: скорость дана в виде $\\tfrac{3}{4}$ м/с, а нужно сложить с $0{,}5$ м/с. Умение свободно переходить между видами дробей — это математическая гибкость, которая пригодится и в химии, и в физике, и на кухне.

'); h+=makeCard('rule','Обыкновенные и десятичные вместе','10.1', '

Десятичную дробь переводят в обыкновенную «по разрядам» и сокращают: $0{,}4=\\dfrac{4}{10}=\\dfrac{2}{5}$.

' +'

Обыкновенную дробь переводят в десятичную делением (если она конечная). В смешанном выражении удобно привести всё к одному виду.

'); h+=makeCard('example','Пример','10.2', '

$0{,}2 + \\dfrac{1}{4} = \\dfrac{1}{5} + \\dfrac{1}{4} = \\dfrac{9}{20} = 0{,}45$, или сразу $0{,}2 + 0{,}25 = 0{,}45$.

'); + h+=makeCard('example','Разбор по шагам','10.3', + '

Вычислим $\\dfrac{3}{4} - 0{,}2$.

' + +'
    ' + +'
  1. Проверяем: $\\tfrac{3}{4}$ — конечная? Знаменатель $4=2^2$, только двойки. Да.
  2. ' + +'
  3. Переводим: $\\tfrac{3}{4} = 3 \\div 4 = 0{,}75$.
  4. ' + +'
  5. Вычитаем: $0{,}75 - 0{,}20 = 0{,}55$.
  6. ' + +'
  7. Ответ: $\\dfrac{3}{4} - 0{,}2 = 0{,}55$.
  8. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','10.4', + '

Перевод обыкновенных дробей в десятичные использовали картографы ещё в XVI веке при составлении морских карт. Фламандский математик Симон Стевин в 1585 году написал книгу «Десятина», где показал, как упрощает расчёты запись дробей через запятую. С его лёгкой руки эта запись распространилась по всей Европе.

'); h+='
Интерактив 1
Сопоставь дробь и десятичную
' +'
Перетащи каждую десятичную дробь к равной ей обыкновенной (или нажми карточку, потом — ящик).
' +'
5 десятичных — 5 ящиков
' @@ -719,9 +849,21 @@ function buildP10(){ /* ===================== § 12. МАТЕМАТИКА ВОКРУГ НАС ===================== */ function buildApp(){ var box=document.getElementById('app-body'); var h=''; + h+=makeCard('oral','Где это в жизни','12.0', + '

Этот параграф — про то, как математика работает вне учебника. Ты идёшь в магазин, оцениваешь погоду по температуре, проверяешь скорость на спидометре, сравниваешь время в соревнованиях — и везде тебе нужны десятичные дроби. Попробуй решить задачи так, как будто это реальная ситуация.

'); h+=makeCard('theory','Десятичные дроби в жизни','12.1', '

Цены и сдача в магазине, рост и масса, показания счётчиков, спортивные результаты, средние значения — всё это десятичные дроби. Решим практические задачи.

' +'

В рублях, метрах, килограммах, секундах — десятичная дробь показывает «часть» единицы: $0{,}5$ кг — это полкилограмма, $1{,}25$ ч — это час с четвертью.

'); + h+=makeCard('example','Разбор по шагам','12.2', + '

Задача: в магазине купили $1{,}5$ кг яблок по $2{,}4$ руб. за кг и $0{,}8$ кг груш по $3{,}5$ руб. за кг. Сколько заплатили всего?

' + +'
    ' + +'
  1. Стоимость яблок: $1{,}5 \\cdot 2{,}4 = 3{,}60$ руб.
  2. ' + +'
  3. Стоимость груш: $0{,}8 \\cdot 3{,}5 = 2{,}80$ руб.
  4. ' + +'
  5. Итого: $3{,}60 + 2{,}80 = 6{,}40$ руб.
  6. ' + +'
  7. Ответ: заплатили $6{,}4$ руб.
  8. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','12.3', + '

Индекс массы тела (ИМТ) — показатель здоровья — это тоже десятичная дробь. Его считают по формуле: масса (кг) делить на рост (м) в квадрате. Например: масса $45$ кг, рост $1{,}5$ м: $45 \\div (1{,}5 \\cdot 1{,}5) = 45 \\div 2{,}25 = 20$. Это и есть ИМТ — совершенно нормальный показатель для шестиклассника!

'); h+='
Интерактив 1
Задачи из жизни
' +'
Реши практическую задачу. Ответ — число (запятая или точка), без единиц.
' +'
Задача 1 / 6Очки: 0 / 6
' diff --git a/frontend/textbooks/math_6_ch2.html b/frontend/textbooks/math_6_ch2.html index f0dcf68..607a834 100644 --- a/frontend/textbooks/math_6_ch2.html +++ b/frontend/textbooks/math_6_ch2.html @@ -108,9 +108,19 @@ function grid100(p){ var s=''; for(var r=0;r<10;r++)for(var c=0;c<10;c++){ var i /* ===================== § 1. ПРОЦЕНТЫ ===================== */ function buildP1(){ var box=document.getElementById('p1-body'); var h=''; + h+=makeCard('oral','Где это в жизни','1.0', + '

Проценты окружают нас повсюду: скидка 30% в магазине, 5% годовых на вкладе, 12% жира в сметане, 90% влажности на улице. Даже рейтинг игрока в онлайн-игре — это процент побед. Тот, кто понимает проценты, не даст себя обмануть на распродаже и сможет выбрать выгодный вклад в банке.

'); h+=makeCard('theory','Что такое процент','1.1', '

Процент — это сотая доля числа. $1\\% = \\dfrac{1}{100} = 0{,}01$. Знак процента — $\\%$.

' +'

Всё число — это $100\\%$. Половина — $50\\%$, четверть — $25\\%$, пятая часть — $20\\%$.

'); + h+=makeCard('example','Разбор по шагам','1.01', + '

Задача: переведи $35\\%$ в десятичную дробь и в обыкновенную дробь.

' + +'
  1. Вспоминаем: процент — сотая доля. Значит $35\\% = \\dfrac{35}{100}$.
  2. ' + +'
  3. Чтобы получить десятичную дробь, делим числитель на знаменатель: $35 \\div 100 = 0{,}35$.
  4. ' + +'
  5. Сокращаем обыкновенную дробь: $\\dfrac{35}{100} = \\dfrac{7}{20}$.
  6. ' + +'
  7. Проверка обратно: $0{,}35 \\times 100 = 35\\%$ — верно!
'); + h+=makeCard('theory','А знаешь ли ты?','1.02', + '

Слово «процент» происходит от латинского pro centum — «за сотню». В Древнем Риме торговцы брали плату за каждые 100 монет займа. Сегодня символ % используется во всём мире, хотя в некоторых странах пишут «pct» или «p.c.».

'); h+=makeCard('rule','Перевод процентов','1.2', '

Проценты $\\to$ десятичная дробь: делим на $100$ (запятая влево на 2 знака): $35\\% = 0{,}35$.

' +'

Десятичная дробь $\\to$ проценты: умножаем на $100$: $0{,}7 = 70\\%$.

' @@ -156,12 +166,27 @@ function buildP1(){ /* ===================== § 2. ОСНОВНЫЕ ЗАДАЧИ НА ПРОЦЕНТЫ ===================== */ function buildP2(){ var box=document.getElementById('p2-body'); var h=''; + h+=makeCard('oral','Где это в жизни','2.0', + '

Три задачи на проценты — это три реальных вопроса. В магазине: «Сколько рублей составляет скидка 20% от цены 500 руб.?» — тип 1. В банке: «Если 150 руб. — это 30% моих сбережений, сколько у меня всего?» — тип 2. В спорте: «Команда выиграла 18 игр из 24 — какой это процент побед?» — тип 3. Умея решать все три, ты разберёшься в любой жизненной ситуации с процентами.

'); h+=makeCard('rule','Три типа задач на проценты','2.1', '

1) Процент от числа. Найти $m\\%$ от $a$: $\\;b = \\dfrac{a}{100}\\cdot m$.

' +'

2) Число по его проценту. $b$ — это $m\\%$ от $a$, найти $a$: $\\;a = \\dfrac{b}{m}\\cdot 100$.

' +'

3) Процентное отношение. Какой процент $b$ от $a$: $\\;m\\% = \\dfrac{b}{a}\\cdot 100\\%$.

'); - h+=makeCard('example','Примеры','2.2', - '

$20\\%$ от $150$: $\\dfrac{150}{100}\\cdot 20 = 30$.   $15$ — это $30\\%$ от $\\dfrac{15}{30}\\cdot 100 = 50$.   $30$ от $120$: $\\dfrac{30}{120}\\cdot 100 = 25\\%$.

'); + h+=makeCard('example','Разбор по шагам','2.2', + '

Тип 1. Найти $20\\%$ от $150$.

' + +'
  1. Формула: $b = \\dfrac{a}{100}\\cdot m = \\dfrac{150}{100}\\cdot 20$.
  2. ' + +'
  3. Вычисляем: $\\dfrac{150}{100} = 1{,}5$; $\\;1{,}5 \\cdot 20 = 30$.
  4. ' + +'
  5. Ответ: $30$.
' + +'

Тип 2. $15$ — это $30\\%$ от какого числа?

' + +'
  1. Формула: $a = \\dfrac{b}{m}\\cdot 100 = \\dfrac{15}{30}\\cdot 100$.
  2. ' + +'
  3. $\\dfrac{15}{30} = 0{,}5$; $\\;0{,}5 \\cdot 100 = 50$.
  4. ' + +'
  5. Ответ: $50$.
' + +'

Тип 3. Какой процент $30$ составляет от $120$?

' + +'
  1. Формула: $m\\% = \\dfrac{b}{a}\\cdot 100\\% = \\dfrac{30}{120}\\cdot 100\\%$.
  2. ' + +'
  3. $\\dfrac{30}{120} = 0{,}25$; $\\;0{,}25 \\cdot 100 = 25$.
  4. ' + +'
  5. Ответ: $25\\%$.
'); + h+=makeCard('theory','А знаешь ли ты?','2.02', + '

В супермаркетах часто пишут «Скидка 50%», но рядом мелким шрифтом — «на второй товар». Это значит, что скидка не 50% от всей суммы, а лишь на половину покупки. Реальная скидка составляет только $25\\%$. Вот почему важно уметь точно считать проценты — чтобы не быть обманутым рекламой!

'); h+='
Интерактив 1
Определи тип задачи
' +'
К какому из трёх типов относится задача?
' +'
Вопрос 1 / 5Очки: 0 / 5
' @@ -214,12 +239,22 @@ function buildP2(){ /* ===================== § 3. ПРОПОРЦИЯ И ЕЁ СВОЙСТВА ===================== */ function buildP3(){ var box=document.getElementById('p3-body'); var h=''; + h+=makeCard('oral','Где это в жизни','3.0', + '

Пропорция — это равенство двух отношений. Кулинарный рецепт рассчитан на 4 порции, а нужно 6? Все ингредиенты надо увеличить в одном и том же отношении — это пропорция. Фотограф масштабирует снимок, сохраняя пропорции сторон. Архитектор строит модель здания в масштабе, используя пропорцию. Пропорция — это инструмент «справедливого пересчёта».

'); h+=makeCard('theory','Отношение и пропорция','3.1', '

Отношение двух чисел — их частное: $a:b=\\dfrac{a}{b}$. Пропорция — равенство двух отношений: $a:b = c:d$ (читается «$a$ относится к $b$, как $c$ к $d$»).

' +'

$a$ и $d$ — крайние члены, $b$ и $c$ — средние.

'); h+=makeCard('rule','Основное свойство пропорции','3.2', '

Произведение крайних членов равно произведению средних: $\\;a\\cdot d = b\\cdot c$ («крест-накрест»).

' +'

Отсюда находят неизвестный член: из $a:b=c:x$ получаем $x = \\dfrac{b\\cdot c}{a}$.

'); + h+=makeCard('example','Разбор по шагам','3.01', + '

Задача: решить пропорцию $3 : 4 = 15 : x$.

' + +'
  1. Запишем основное свойство пропорции: $3 \\cdot x = 4 \\cdot 15$.
  2. ' + +'
  3. Вычисляем правую часть: $4 \\cdot 15 = 60$.
  4. ' + +'
  5. Находим $x$: $x = \\dfrac{60}{3} = 20$.
  6. ' + +'
  7. Проверка: $3 : 4 = 0{,}75$ и $15 : 20 = 0{,}75$ — отношения равны, пропорция верна!
'); + h+=makeCard('theory','А знаешь ли ты?','3.02', + '

Древнегреческий математик Пифагор считал пропорцию основой красоты и гармонии. «Золотое сечение» $1 : 1{,}618$ — особая пропорция, которую можно найти в пропорциях тела человека, раковинах моллюсков и архитектуре Парфенона. Художники и архитекторы тысячи лет используют её для создания красивых произведений.

'); h+='
Интерактив 1
Найди неизвестный член
' +'
Реши пропорцию «крест-накрест»: $x = \\dfrac{b\\cdot c}{a}$.
' +'
Задача 1 / 6Очки: 0 / 6
' @@ -265,12 +300,25 @@ function buildP3(){ /* ===================== § 4. ПРЯМАЯ И ОБРАТНАЯ ЗАВИСИМОСТИ ===================== */ function buildP4(){ var box=document.getElementById('p4-body'); var h=''; + h+=makeCard('oral','Где это в жизни','4.0', + '

Представь, что едешь на велосипеде с постоянной скоростью: чем дольше едешь, тем больший путь проедешь — это прямая зависимость. Но если тот же путь надо проехать быстрее, скорость надо увеличить, а время уменьшится — это обратная зависимость. Ещё пример: чем больше друзей делят одну пиццу, тем меньше достаётся каждому. Распознав вид зависимости, можно правильно составить пропорцию и решить задачу.

'); h+=makeCard('theory','Прямая пропорциональность','4.1', '

Величины прямо пропорциональны, если при увеличении одной в несколько раз другая увеличивается во столько же раз. Их отношение постоянно: $\\dfrac{y}{x}=k$.

' +'

Пример: при постоянной цене стоимость покупки прямо пропорциональна количеству товара.

'); h+=makeCard('theory','Обратная пропорциональность','4.2', '

Величины обратно пропорциональны, если при увеличении одной в несколько раз другая во столько же раз уменьшается. Их произведение постоянно: $x\\cdot y=k$.

' +'

Пример: при постоянном пути время обратно пропорционально скорости.

'); + h+=makeCard('example','Разбор по шагам','4.01', + '

Прямая: 3 кг помидоров стоят 18 руб. Сколько стоят 5 кг?

' + +'
  1. Определяем вид зависимости: цена постоянна, значит стоимость и масса прямо пропорциональны.
  2. ' + +'
  3. Коэффициент: $k = \\dfrac{18}{3} = 6$ руб/кг.
  4. ' + +'
  5. Ответ: $5 \\cdot 6 = 30$ руб.
' + +'

Обратная: 4 рабочих делают ремонт за 6 дней. За сколько сделают 3 рабочих?

' + +'
  1. Зависимость обратная: чем меньше рабочих, тем дольше.
  2. ' + +'
  3. Произведение постоянно: $4 \\cdot 6 = 24$.
  4. ' + +'
  5. Ответ: $24 \\div 3 = 8$ дней.
'); + h+=makeCard('theory','А знаешь ли ты?','4.02', + '

Закон Ома в физике — это тоже пропорциональность. Сила тока прямо пропорциональна напряжению ($I = U/R$, при постоянном $R$) и обратно пропорциональна сопротивлению ($I = U/R$, при постоянном $U$). Изучая математику сегодня, ты уже готовишься к физике!

'); h+='
Интерактив 1
Прямая или обратная?
' +'
Определи вид зависимости в ситуации.
' +'
Вопрос 1 / 6Очки: 0 / 6
' @@ -326,10 +374,23 @@ function buildP4(){ /* ===================== § 5. РЕШЕНИЕ ЗАДАЧ С ПОМОЩЬЮ ПРОПОРЦИЙ ===================== */ function buildP5(){ var box=document.getElementById('p5-body'); var h=''; + h+=makeCard('oral','Где это в жизни','5.0', + '

Пропорция — универсальный инструмент для пересчёта. Рецепт рассчитан на 6 человек, а пришло 10 — сколько муки нужно? Строитель знает, что на 12 м² нужно 3 мешка штукатурки, и считает, сколько нужно на 20 м². Врач пересчитывает дозу лекарства по весу пациента. Пропорция работает везде, где есть «пересчёт в том же соотношении».

'); h+=makeCard('rule','Как решать задачи пропорцией','5.1', '

1) Обозначают неизвестное буквой $x$. 2) Записывают условие в две строки. 3) Если зависимость прямая — стрелки в одну сторону, составляют пропорцию напрямую; если обратная — одно из отношений переворачивают. 4) Решают «крест-накрест».

'); - h+=makeCard('example','Пример','5.2', - '

За $3$ кг яблок заплатили $12$ руб. Сколько за $5$ кг? (прямая) $\\;3:12 = 5:x$, $x=\\dfrac{12\\cdot5}{3}=20$ руб.

'); + h+=makeCard('example','Разбор по шагам','5.2', + '

Прямая пропорция: За $3$ кг яблок заплатили $12$ руб. Сколько за $5$ кг?

' + +'
  1. Обозначаем: $x$ — стоимость $5$ кг. Зависимость прямая (больше кг — больше денег).
  2. ' + +'
  3. Записываем пропорцию (стрелки в одну сторону): $3 : 5 = 12 : x$.
  4. ' + +'
  5. Решаем крест-накрест: $3 \\cdot x = 12 \\cdot 5 = 60$.
  6. ' + +'
  7. $x = 60 \\div 3 = 20$ руб. Ответ: $20$ руб.
' + +'

Обратная пропорция: $4$ трубы наполнят бак за $9$ мин. За сколько — $6$ труб?

' + +'
  1. Зависимость обратная: больше труб — меньше времени.
  2. ' + +'
  3. Переворачиваем одно отношение: $4 : 6 = x : 9$.
  4. ' + +'
  5. Крест-накрест: $4 \\cdot 9 = 6 \\cdot x$, значит $x = \\dfrac{36}{6} = 6$ мин.
  6. ' + +'
  7. Ответ: $6$ минут.
'); + h+=makeCard('theory','А знаешь ли ты?','5.02', + '

Пропорциональный пересчёт используется в кулинарии всего мира. Французские шеф-повара называют это «scaling recipe» — масштабирование рецепта. Профессиональные повара делают это автоматически, но в основе — обычная пропорция из учебника математики 6 класса.

'); h+='
Интерактив 1
Задачи на прямую пропорцию
' +'
Реши задачу с помощью прямой пропорции. Ответ — число.
' +'
Задача 1 / 6Очки: 0 / 6
' @@ -392,11 +453,23 @@ function buildP5(){ /* ===================== § 6. МАСШТАБ ===================== */ function buildP6(){ var box=document.getElementById('p6-body'); var h=''; + h+=makeCard('oral','Где это в жизни','6.0', + '

Масштаб — везде, где большое изображают маленьким (или наоборот). Карта страны, план квартиры, схема метро, чертёж детали — всё это масштабные изображения. Даже Google Maps использует масштаб: приближая карту, ты уменьшаешь знаменатель (1:1000 вместо 1:1 000 000). Космические снимки со спутника имеют масштаб 1:50 000 000 и больше!

'); h+=makeCard('theory','Что такое масштаб','6.1', '

Масштаб — отношение длины отрезка на чертеже (карте) к длине соответствующего отрезка в реальности. Запись $1:N$ означает: $1$ см на карте соответствует $N$ см на местности.

' +'

Карта: реальное расстояние $=$ расстояние на карте $\\times N$. Чертёж детали может быть и крупнее ($N<1$).

'); - h+=makeCard('example','Пример','6.2', - '

Масштаб $1:1000$. На карте $3$ см. Реально $3\\cdot 1000 = 3000$ см $= 30$ м.

'); + h+=makeCard('example','Разбор по шагам','6.2', + '

Задача: масштаб $1:1000$. На карте $3$ см. Найди реальное расстояние.

' + +'
  1. Масштаб $1:1000$ означает: $1$ см на карте $= 1000$ см в реальности.
  2. ' + +'
  3. На карте $3$ см, значит в реальности: $3 \\times 1000 = 3000$ см.
  4. ' + +'
  5. Переводим в метры: $3000$ см $\\div 100 = 30$ м.
  6. ' + +'
  7. Ответ: $30$ метров.
' + +'

Обратная задача: масштаб $1:500$, реальное расстояние $25$ м. Найди длину на карте.

' + +'
  1. Переводим метры в сантиметры: $25$ м $= 2500$ см.
  2. ' + +'
  3. Делим на знаменатель масштаба: $2500 \\div 500 = 5$ см.
  4. ' + +'
  5. Ответ: $5$ см на карте.
'); + h+=makeCard('theory','А знаешь ли ты?','6.02', + '

Самая точная карта мира — не на бумаге, а в голове у миграционных птиц. Дрозд, летящий из Беларуси в Африку, преодолевает тысячи километров без единой карты. Учёные до сих пор выясняют, как именно птицы ориентируются — но уже ясно, что они инстинктивно «знают масштаб» и расстояния.

'); h+='
Интерактив 1
Карта → местность
' +'
По расстоянию на карте найди реальное расстояние (ответ в метрах).
' +'
Задача 1 / 6Очки: 0 / 6
' @@ -444,9 +517,19 @@ function buildP6(){ /* ===================== § 7. КРУГОВЫЕ ДИАГРАММЫ ===================== */ function buildP7(){ var box=document.getElementById('p7-body'); var h=''; + h+=makeCard('oral','Где это в жизни','7.0', + '

Круговые диаграммы используют журналисты, учёные, компании и государства. Диаграмма расходов бюджета страны, диаграмма состава воздуха (азот — $78\\%$, кислород — $21\\%$, прочее — $1\\%$), диаграмма времени твоего дня — всё это круговые диаграммы. Они мгновенно показывают, какая доля чего-либо наибольшая. Без понимания диаграмм сегодня не обойтись ни в школе, ни в жизни.

'); h+=makeCard('theory','Круговая диаграмма','7.1', '

Круговая диаграмма наглядно показывает, как целое делится на части. Весь круг — это $100\\%$, или $360°$.

' +'

Сектор в $p\\%$ занимает угол $p\\%\\cdot 360° = 3{,}6\\cdot p$ градусов. Например, $25\\%$ — это $90°$ (четверть круга).

'); + h+=makeCard('example','Разбор по шагам','7.01', + '

Задача: в классе $30$ учеников. Отличников $6$, хорошистов $15$, остальные — троечники. Построй круговую диаграмму.

' + +'
  1. Находим доли: отличники $\\dfrac{6}{30} = 20\\%$; хорошисты $\\dfrac{15}{30} = 50\\%$; остальные $100\\% - 20\\% - 50\\% = 30\\%$.
  2. ' + +'
  3. Переводим в градусы: $20\\% \\cdot 3{,}6 = 72°$; $50\\% \\cdot 3{,}6 = 180°$; $30\\% \\cdot 3{,}6 = 108°$.
  4. ' + +'
  5. Проверка: $72° + 180° + 108° = 360°$ — весь круг. Верно!
  6. ' + +'
  7. Строим круг, откладываем сектора по очереди транспортиром, подписываем.
'); + h+=makeCard('theory','А знаешь ли ты?','7.02', + '

Круговую диаграмму придумала британская медсестра Флоренс Найтингейл в $1858$ году — не математик, а медик! Она использовала диаграмму, чтобы доказать военным чиновникам, что большинство солдат гибнет не от ран, а от болезней в грязных госпиталях. Её диаграмма спасла тысячи жизней — пример того, как математика меняет мир.

'); h+='
Интерактив 1
Диаграмма данных
' +'
Выбери набор данных — построится круговая диаграмма с долями.
' +'
' @@ -493,14 +576,30 @@ function buildP7(){ /* ===================== § 9. МАТЕМАТИКА ВОКРУГ НАС ===================== */ function buildApp(){ var box=document.getElementById('app-body'); var h=''; + h+=makeCard('oral','Где это в жизни','9.0', + '

Весь раздел «Проценты и пропорции» — это язык реального мира. Читая этикетку на продукте, анализируя результаты выборов, планируя ремонт или путешествие, оценивая выгоду банковского предложения — везде используются проценты и пропорции. Этот параграф — практика: решаем задачи из настоящей жизни.

'); h+=makeCard('theory','Проценты вокруг нас','9.1', '

Скидки и распродажи, наценки, банковские вклады под проценты, состав продуктов, статистика и опросы — везде встречаются проценты и пропорции.

'); + h+=makeCard('example','Разбор по шагам','9.01', + '

Задача: в магазине на куртку скидка $25\\%$, цена до скидки $800$ руб. Найди цену со скидкой.

' + +'
  1. Находим размер скидки: $25\\%$ от $800 = \\dfrac{800}{100} \\cdot 25 = 200$ руб.
  2. ' + +'
  3. Вычитаем из начальной цены: $800 - 200 = 600$ руб.
  4. ' + +'
  5. Ответ: $600$ руб.
  6. ' + +'
  7. Быстрый способ: цена со скидкой $= 800 \\cdot (1 - 0{,}25) = 800 \\cdot 0{,}75 = 600$ руб.
'); + h+=makeCard('theory','А знаешь ли ты?','9.02', + '

Самые большие «скидки» — до $90\\%$ — часто оказываются обманом. Продавец сначала искусственно завышает цену, а потом объявляет «грандиозную распродажу». Закон требует, чтобы скидка считалась от реальной цены, которая действовала раньше. Знание математики помогает не попасться на такие уловки.

'); h+='
Интерактив 1
Задачи из жизни
' +'
Реши практическую задачу на проценты. Ответ — число (рубли, штуки, проценты).
' +'
Задача 1 / 6Очки: 0 / 6
' +'
' +'
' +'
'; + h+='
Интерактив 2
Наценка или скидка?
' + +'
Определи: цена выросла (наценка) или упала (скидка)?
' + +'
Вопрос 1 / 5Очки: 0 / 5
' + +'
' + +'
' + +'
'; h+=secNav('p7','final')+readBtn('app'); box.innerHTML=h; renderMath(box); @@ -526,6 +625,25 @@ function buildApp(){ document.getElementById('app-go').addEventListener('click',go); document.getElementById('app-a').addEventListener('keydown',function(e){ if(e.key==='Enter')go(); }); show(); })(); + + (function(){ + var QQ=[ + {t:'s', q:'Куртка стоила 600 руб., теперь стоит 450 руб. Что произошло с ценой?'}, + {t:'n', q:'Цена на хлеб выросла с 1 руб. до 1 руб. 20 коп. Что произошло с ценой?'}, + {t:'s', q:'Магазин объявил распродажу: было 800 руб., стало 560 руб. Что произошло?'}, + {t:'n', q:'Из-за роста спроса цена на билет выросла с 200 до 300 руб. Что это?'}, + {t:'s', q:'Акция: было 500 руб., по акции 375 руб. Что произошло с ценой?'}, + {t:'n', q:'Производитель повысил цену молока с 1 руб. до 1 руб. 15 коп. Что это?'} + ]; + var order2=QQ.map(function(_,k){return k;}); for(var j2=order2.length-1;j2>0;j2--){var kk=_ri(0,j2),tt=order2[j2];order2[j2]=order2[kk];order2[kk]=tt;} + var i2=0,score2=0,cur2=null; + function show2(){ if(i2>=5){ document.getElementById('app-vq').innerHTML='Готово! '+score2+' / 5'; if(score2>=4){addXp(15,'app-iv2');bumpProgress('app',35);}else if(score2>=2){addXp(8,'app-iv2');bumpProgress('app',18);} return; } + cur2=QQ[order2[i2]]; document.getElementById('app-vi').textContent=i2+1; document.getElementById('app-vq').innerHTML=cur2.q; document.getElementById('app-vfb').style.display='none'; } + function ans2(v){ if(i2>=5)return; var fb=document.getElementById('app-vfb'); + if(v===cur2.t){ score2++; feedback(fb,true,'✓ Верно — это '+(cur2.t==='n'?'наценка (цена выросла)':'скидка (цена упала)')+'.'); } else feedback(fb,false,'✗ Нет. Это '+(cur2.t==='n'?'наценка':'скидка')+'.'); + document.getElementById('app-vs').textContent=score2; i2++; setTimeout(show2,1400); } + document.querySelectorAll('#app-iv2 [data-av]').forEach(function(b){ b.addEventListener('click',function(){ ans2(b.getAttribute('data-av')); }); }); show2(); + })(); } /* ===================== ФИНАЛ ГЛАВЫ — БОССЫ ===================== */ diff --git a/frontend/textbooks/math_6_ch3.html b/frontend/textbooks/math_6_ch3.html index d71d0f1..60d5715 100644 --- a/frontend/textbooks/math_6_ch3.html +++ b/frontend/textbooks/math_6_ch3.html @@ -102,12 +102,22 @@ function _union(A,B){ var u=A.slice(); B.forEach(function(x){ if(u.indexOf(x)<0) /* ===================== § 1. МНОЖЕСТВО. ЭЛЕМЕНТЫ. ПУСТОЕ МНОЖЕСТВО ===================== */ function buildP1(){ var box=document.getElementById('p1-body'); var h=''; + h+=makeCard('oral','Где это в жизни','1.0', + '

Множества — это буквально всё вокруг нас. Список покупок в магазине — множество товаров. Состав футбольной команды — множество игроков. Коллекция марок, набор инструментов, список друзей — везде одна и та же идея: несколько разных объектов, собранных вместе. В программировании массивы и коллекции данных — прямые родственники математических множеств.

'); h+=makeCard('theory','Множество и его элементы','1.1', '

Множество — это набор различных объектов, объединённых общим признаком. Объекты множества — его элементы. Множества обозначают большими буквами, элементы перечисляют в фигурных скобках: $A=\\{2;4;6;8\\}$.

' +'

Запись $3\\in A$ читается «$3$ принадлежит $A$», $5\\notin A$ — «$5$ не принадлежит $A$».

'); - h+=makeCard('rule','Пустое множество','1.2', + h+=makeCard('example','Разбор по шагам','1.2', + '

Дано: $A=\\{1;3;5;7;9\\}$. Принадлежит ли $5$ множеству $A$? А $4$?

' + +'
  1. Смотрим на элементы $A$: $1, 3, 5, 7, 9$.
  2. ' + +'
  3. Ищем $5$ в списке: $5$ есть — значит $5\\in A$.
  4. ' + +'
  5. Ищем $4$ в списке: $4$ нет — значит $4\\notin A$.
  6. ' + +'
  7. Сколько элементов? Считаем: $1, 2, 3, 4, 5$ — итого $|A|=5$.
'); + h+=makeCard('rule','Пустое множество','1.3', '

Пустое множество $\\varnothing$ не содержит ни одного элемента (например, множество натуральных решений уравнения $x+1=0$).

' +'

Множества равны, если состоят из одних и тех же элементов; порядок и повторы не важны: $\\{1;2;3\\}=\\{3;1;2\\}$.

'); + h+=makeCard('theory','А знаешь ли ты?','1.4', + '

Теорию множеств создал немецкий математик Георг Кантор в конце XIX века. Поначалу его идеи казались настолько странными, что коллеги не принимали их всерьёз. Сегодня теория множеств — фундамент всей современной математики: на ней строятся числа, функции и вся высшая математика.

'); h+='
Интерактив 1
Принадлежит или нет?
' +'
Определи, принадлежит ли элемент данному множеству.
' +'
Вопрос 1 / 6Очки: 0 / 6
' @@ -120,6 +130,12 @@ function buildP1(){ +'
' +'
' +'
'; + h+='
Интерактив 3
Составь множество
' + +'
Выбери все числа, которые принадлежат описанному множеству. Нажми нужные и проверь.
' + +'
' + +'
' + +'
' + +'
'; h+=secNav(null,'p2')+readBtn('p1'); box.innerHTML=h; renderMath(box); @@ -148,14 +164,57 @@ function buildP1(){ document.getElementById('p1-cgo').addEventListener('click',go); document.getElementById('p1-ca').addEventListener('keydown',function(e){ if(e.key==='Enter')go(); }); show(); })(); + + (function(){ + var TASKS=[ + {desc:'чётные числа от 1 до 10', nums:[1,2,3,4,5,6,7,8,9,10], correct:[2,4,6,8,10]}, + {desc:'делители числа 8', nums:[1,2,3,4,5,6,7,8], correct:[1,2,4,8]}, + {desc:'однозначные нечётные числа', nums:[1,2,3,4,5,6,7,8,9,10], correct:[1,3,5,7,9]}, + {desc:'числа, кратные 4, до 20', nums:[2,4,6,8,10,12,14,16,18,20], correct:[4,8,12,16,20]} + ]; + var ti=0, sel=[]; + function render(){ + var t=TASKS[ti]; + document.getElementById('p1-sv3-q').innerHTML='Выбери все числа: '+t.desc+''; + var chips=''; t.nums.forEach(function(n){ chips+=''; }); + document.getElementById('p1-sv3-chips').innerHTML=chips; + sel=[]; document.getElementById('p1-sv3-fb').style.display='none'; + document.querySelectorAll('#p1-iv3 .sv3-chip').forEach(function(b){ + b.addEventListener('click',function(){ + var n=+b.getAttribute('data-n'), idx=sel.indexOf(n); + if(idx>=0){ sel.splice(idx,1); b.classList.remove('primary'); } else { sel.push(n); b.classList.add('primary'); } + }); + }); + } + document.getElementById('p1-sv3-go').addEventListener('click',function(){ + var t=TASKS[ti], fb=document.getElementById('p1-sv3-fb'); + var ok=t.correct.slice().sort().join(',')===[].concat(sel).sort().join(','); + if(ok){ feedback(fb,true,'Верно! Множество: {'+t.correct.join('; ')+'}'); addXp(10,'p1-iv3'); bumpProgress('p1',20); } + else { feedback(fb,false,'Не совсем. Правильный ответ: {'+t.correct.join('; ')+'}'); } + }); + document.getElementById('p1-sv3-next').addEventListener('click',function(){ + ti=(ti+1)%TASKS.length; render(); + }); + render(); + })(); } /* ===================== § 2. СПОСОБЫ ЗАДАНИЯ МНОЖЕСТВ ===================== */ function buildP2(){ var box=document.getElementById('p2-body'); var h=''; + h+=makeCard('oral','Где это в жизни','2.0', + '

Когда составляют расписание уроков, можно написать список предметов — это перечисление. А можно написать правило: «предметы, которые идут в понедельник» — это задание свойством. В базах данных программисты постоянно используют оба способа: хранят конкретные списки и создают запросы-условия. Правильно выбрать способ задания множества — значит сэкономить время и избежать ошибок.

'); h+=makeCard('theory','Два способа задания','2.1', '

Перечислением — выписывают все элементы: $A=\\{2;4;6;8\\}$.

' +'

Характеристическим свойством — указывают признак: $A=\\{x \\mid x$ — чётное, $0'); + h+=makeCard('example','Разбор по шагам','2.2', + '

Задано свойство: $B=\\{x\\mid x$ — делитель числа $12\\}$. Запишем $B$ перечислением.

' + +'
  1. Находим все делители $12$: числа, на которые $12$ делится без остатка.
  2. ' + +'
  3. Проверяем по очереди: $1, 2, 3, 4, 6, 12$ — все делят $12$ нацело.
  4. ' + +'
  5. Числа $5, 7, 8, 9, 10, 11$ — не делители: остаток не ноль.
  6. ' + +'
  7. Итог: $B=\\{1;2;3;4;6;12\\}$.
'); + h+=makeCard('theory','А знаешь ли ты?','2.3', + '

Запись $\\{x\\mid\\ldots\\}$ придумали, чтобы задавать бесконечные множества. Например, множество всех чётных чисел $\\{x\\mid x$ кратно $2\\}$ нельзя задать перечислением — элементов бесконечно много. А свойством — одна строчка!

'); h+='
Интерактив 1
Свойство → множество
' +'
Выбери множество, заданное перечислением, которое соответствует описанию.
' +'
Вопрос 1 / 5Очки: 0 / 5
' @@ -216,10 +275,19 @@ function buildP2(){ /* ===================== § 3. ОПЕРАЦИИ НАД МНОЖЕСТВАМИ ===================== */ function buildP3(){ var box=document.getElementById('p3-body'); var h=''; + h+=makeCard('oral','Где это в жизни','3.0', + '

Представь: $A$ — ученики, которые занимаются футболом, $B$ — те, кто ходит на плавание. Пересечение $A\\cap B$ — те, кто занимается обоими видами спорта. Объединение $A\\cup B$ — все, кто занимается хотя бы одним. Такие операции каждый день используют составители расписаний, маркетологи («покупатели, которые брали и A, и B») и врачи, анализируя симптомы.

'); h+=makeCard('theory','Пересечение и объединение','3.1', '

Пересечение $A\\cap B$ — множество элементов, принадлежащих обоим множествам сразу.

' +'

Объединение $A\\cup B$ — множество элементов, принадлежащих хотя бы одному из множеств.

' +'

$A=\\{1;2;3;4\\}$, $B=\\{3;4;5;6\\}$: $A\\cap B=\\{3;4\\}$, $A\\cup B=\\{1;2;3;4;5;6\\}$.

'); + h+=makeCard('example','Разбор по шагам','3.2', + '

Найти $A\\cap B$ и $A\\cup B$, если $A=\\{2;4;6;8\\}$, $B=\\{4;6;10;12\\}$.

' + +'
  1. Для пересечения берём только общие элементы: смотрим, что есть и в $A$, и в $B$. Это $4$ и $6$. Значит, $A\\cap B=\\{4;6\\}$.
  2. ' + +'
  3. Для объединения берём все элементы из обоих: $2, 4, 6, 8$ из $A$, добавляем новые из $B$ — $10$ и $12$. Повторы ($4$ и $6$) пишем один раз.
  4. ' + +'
  5. Итог: $A\\cup B=\\{2;4;6;8;10;12\\}$.
'); + h+=makeCard('theory','А знаешь ли ты?','3.3', + '

Символы $\\cap$ (пересечение) и $\\cup$ (объединение) ввёл итальянский математик Джузеппе Пеано в 1888 году. Символ $\\cup$ напоминает букву U — от слова union (союз, объединение по-английски). Сегодня эти символы используют во всём мире в математике, логике и программировании.

'); h+='
Интерактив 1
Операции наглядно
' +'
Нажми операцию — увидишь закрашенную область и результат для $A=\\{1;2;3;4\\}$, $B=\\{3;4;5;6\\}$.
' +'
' @@ -264,8 +332,19 @@ function buildP3(){ /* ===================== § 4. КРУГИ ЭЙЛЕРА ===================== */ function buildP4(){ var box=document.getElementById('p4-body'); var h=''; + h+=makeCard('oral','Где это в жизни','4.0', + '

Круги Эйлера — не просто красивые картинки. Врачи рисуют их, чтобы понять, у скольких пациентов сочетаются два симптома. Маркетологи — чтобы узнать, кто смотрит и кино, и сериалы. Задача «в классе 30 учеников, 18 занимаются музыкой, 14 — танцами, 5 — и тем и тем; сколько не занимаются ничем?» — классический круг Эйлера. Один рисунок заменяет три уравнения.

'); h+=makeCard('theory','Круги Эйлера','4.1', '

Множества удобно изображать кругами (круги Эйлера). Пересекающиеся круги показывают общую часть. Если в $A$ — $a$ элементов, в $B$ — $b$, а в пересечении — $c$, то в объединении: $|A\\cup B| = a + b - c$ (общие посчитаны дважды — вычитаем один раз).

'); + h+=makeCard('example','Разбор по шагам','4.2', + '

В классе 30 учеников. Математику любят 18, физику — 14, оба предмета — 6. Сколько не любят ни то, ни другое?

' + +'
  1. Рисуем два пересекающихся круга: «Математика» и «Физика».
  2. ' + +'
  3. В центр (пересечение) пишем $6$ — те, кто любит оба.
  4. ' + +'
  5. Только математику: $18-6=12$. Только физику: $14-6=8$.
  6. ' + +'
  7. Любят хотя бы один предмет: $12+6+8=26$.
  8. ' + +'
  9. Не любят ни один: $30-26=4$.
'); + h+=makeCard('theory','А знаешь ли ты?','4.3', + '

Круги Эйлера придумал швейцарский математик Леонард Эйлер в XVIII веке — один из самых плодовитых математиков в истории. Он опубликовал более 800 работ и продолжал трудиться, даже ослепнув на оба глаза. Его именем названы и формула $e^{i\\pi}+1=0$, и данный метод наглядного изображения множеств.

'); h+='
Интерактив 1
Задача с кругами Эйлера
' +'
Разнеси данные по кругам и ответь на вопрос.
' +'
Задача 1 / 5Очки: 0 / 5
' diff --git a/frontend/textbooks/math_6_ch4.html b/frontend/textbooks/math_6_ch4.html index 8206c24..98ac31e 100644 --- a/frontend/textbooks/math_6_ch4.html +++ b/frontend/textbooks/math_6_ch4.html @@ -109,11 +109,21 @@ function svgWrap(w,h,inner){ return '
Интерактив 1
Прочитай координату
' +'
Определи координату отмеченной точки (может быть отрицательной).
' +'
Вопрос 1 / 6Очки: 0 / 6
' @@ -159,12 +169,22 @@ function buildP1(){ /* ===================== § 2. МОДУЛЬ. ПРОТИВОПОЛОЖНЫЕ. Z И Q ===================== */ function buildP2(){ var box=document.getElementById('p2-body'); var h=''; + h+=makeCard('oral','Где это в жизни','2.0', + '

Когда говорят «расстояние», всегда имеют в виду положительное число — неважно, вправо ты пошёл или влево. Именно это и есть модуль: расстояние от точки до нуля. Спортсмены говорят «разница в счёте 3 очка» — это тоже модуль разности.

'); h+=makeCard('theory','Модуль и противоположные числа','2.1', '

Модуль числа $|a|$ — это расстояние от точки $a$ до нуля; он всегда $\\ge 0$: $|{-7}|=7$, $|5|=5$, $|0|=0$.

' +'

Противоположные числа отличаются только знаком ($5$ и $-5$); их сумма равна нулю, а модули равны.

'); - h+=makeCard('theory','Множества чисел: N ⊂ Z ⊂ Q','2.2', + h+=makeCard('example','Разбор по шагам','2.2', + '

Найти $|{-9}|$ и число, противоположное $-9$.

' + +'
  1. Модуль — это расстояние до нуля. От $-9$ до $0$ ровно $9$ шагов по прямой.
  2. ' + +'
  3. Значит $|{-9}| = 9$. Знак «убираем».
  4. ' + +'
  5. Противоположное меняет знак: противоположное к $-9$ — это $+9$.
  6. ' + +'
  7. Проверка: $(-9) + 9 = 0$ — верно, сумма противоположных равна нулю.
'); + h+=makeCard('theory','Множества чисел: N ⊂ Z ⊂ Q','2.3', '

Натуральные $\\mathbb{N}=\\{1;2;3;\\ldots\\}$ — для счёта. Целые $\\mathbb{Z}$ — натуральные, им противоположные и ноль. Рациональные $\\mathbb{Q}$ — все числа, представимые дробью $\\frac{m}{n}$ (включая десятичные и отрицательные).

' +svgWrap(240,180,'Q (рациональные)Z (целые)N: 1,2,3…')); + h+=makeCard('theory','А знаешь ли ты?','2.4', + '

Слово «рациональный» происходит от латинского ratio — «отношение, дробь». Число называется рациональным, потому что его можно представить как отношение (дробь) двух целых чисел. Числа вроде $\\sqrt{2}$ или $\\pi$ этого сделать нельзя — они иррациональные.

'); h+='
Интерактив 1
Найди модуль
' +'
Модуль — расстояние до нуля, всегда неотрицателен.
' +'
Вопрос 1 / 6Очки: 0 / 6
' @@ -210,9 +230,19 @@ function buildP2(){ /* ===================== § 3. СРАВНЕНИЕ РАЦИОНАЛЬНЫХ ===================== */ function buildP3(){ var box=document.getElementById('p3-body'); var h=''; + h+=makeCard('oral','Где это в жизни','3.0', + '

Когда синоптики говорят «сегодня теплее, чем вчера», они сравнивают числа — в том числе отрицательные. −3°C теплее, чем −8°C, хотя оба со знаком минус. Такое же сравнение используют в финансах: долг −200 рублей лучше, чем долг −500 рублей.

'); h+=makeCard('rule','Сравнение на координатной прямой','3.1', '

Из двух чисел больше то, которое правее на координатной прямой.

' +'

Любое положительное $>$ любого отрицательного; $0$ больше любого отрицательного. Из двух отрицательных больше то, у которого меньше модуль (ближе к нулю): $-2 > -5$.

'); + h+=makeCard('example','Разбор по шагам','3.2', + '

Сравни числа $-3$ и $-7$.

' + +'
  1. Оба числа отрицательные. Смотрим модули: $|-3|=3$, $|-7|=7$.
  2. ' + +'
  3. $3 < 7$, значит $-3$ ближе к нулю на прямой.
  4. ' + +'
  5. Ближе к нулю — значит правее — значит больше.
  6. ' + +'
  7. Ответ: $-3 > -7$. Это кажется странным, но проверь на прямой — $-3$ действительно правее $-7$.
'); + h+=makeCard('theory','А знаешь ли ты?','3.3', + '

В программировании и в физике часто используют понятие «знаковая переменная»: число может быть и положительным, и отрицательным. Датчики температуры, гироскопы в телефоне, альтиметры — все они работают с числами, которые надо уметь сравнивать со знаком.

'); h+='
Интерактив 1
Сравни числа
' +'
Сравни два числа на координатной прямой.
' +'
Вопрос 1 / 6Очки: 0 / 6
' @@ -259,10 +289,21 @@ function buildP3(){ /* ===================== § 4. СЛОЖЕНИЕ РАЦИОНАЛЬНЫХ ===================== */ function buildP4(){ var box=document.getElementById('p4-body'); var h=''; + h+=makeCard('oral','Где это в жизни','4.0', + '

Температура за окном −5°C. К вечеру потеплело на 3°C. Сколько стало? Это сложение рациональных: $-5 + 3 = -2$. Точно так же считают изменение уровня воды в реке, баланс на банковском счёте и набранные/потерянные очки в игре.

'); h+=makeCard('rule','Правила сложения','4.1', '

Одинаковые знаки: складываем модули, ставим общий знак: $-3+(-4)=-7$.

' +'

Разные знаки: из большего модуля вычитаем меньший, ставим знак числа с бо́льшим модулем: $-7+4=-3$,   $7+(-4)=3$.

' +'

Сумма противоположных равна нулю: $6+(-6)=0$.

'); + h+=makeCard('example','Разбор по шагам','4.2', + '

Вычисли $-8 + 5$.

' + +'
  1. Знаки разные ($-$ и $+$) — применяем второе правило.
  2. ' + +'
  3. Находим модули: $|-8|=8$, $|5|=5$.
  4. ' + +'
  5. Из большего модуля вычитаем меньший: $8 - 5 = 3$.
  6. ' + +'
  7. Знак берём от числа с бо́льшим модулем: это $-8$, значит знак «минус».
  8. ' + +'
  9. Ответ: $-8 + 5 = -3$.
'); + h+=makeCard('theory','А знаешь ли ты?','4.3', + '

Сложение на координатной прямой — это буквальное «движение». Положительное слагаемое — шаг вправо, отрицательное — шаг влево. Именно поэтому термометр, линейка и шкала лифта устроены как координатные прямые!

'); h+='
Интерактив 1
Сложение на прямой
' +'
Двигай слагаемые — результат отмечается на координатной прямой.
' +'
' @@ -302,9 +343,20 @@ function buildP4(){ /* ===================== § 5. ВЫЧИТАНИЕ РАЦИОНАЛЬНЫХ ===================== */ function buildP5(){ var box=document.getElementById('p5-body'); var h=''; + h+=makeCard('oral','Где это в жизни','5.0', + '

Разность температур, изменение счёта в игре, разница высот — всё это вычитание, в том числе с отрицательными числами. «На сколько −3°C больше, чем −10°C?» — это $-3 - (-10) = 7$: на 7 градусов теплее.

'); h+=makeCard('rule','Вычитание — это прибавление противоположного','5.1', '

Чтобы из числа вычесть другое, нужно к нему прибавить противоположное: $a - b = a + (-b)$.

' +'

$5 - 8 = 5 + (-8) = -3$;   $-4 - 3 = -4 + (-3) = -7$;   $2 - (-6) = 2 + 6 = 8$.

'); + h+=makeCard('example','Разбор по шагам','5.2', + '

Вычисли $-4 - (-7)$.

' + +'
  1. Заменяем вычитание сложением с противоположным: $-4 - (-7) = -4 + (+7)$.
  2. ' + +'
  3. Два минуса дают плюс: скобки раскрыты, получили $-4 + 7$.
  4. ' + +'
  5. Знаки разные. Модули: $4$ и $7$. Разность модулей: $7 - 4 = 3$.
  6. ' + +'
  7. Знак от числа с большим модулем: $7 > 4$, значит знак «плюс».
  8. ' + +'
  9. Ответ: $-4 - (-7) = 3$.
'); + h+=makeCard('theory','А знаешь ли ты?','5.3', + '

Правило «минус на минус даёт плюс» при вычитании вытекает из одного простого принципа: вычесть отрицательное — значит вернуть то, что было отнято. Если у тебя забрали долг в 7 рублей (то есть убрали $-7$), ты стал богаче на 7!

'); h+='
Интерактив 1
Тренажёр вычитания
' +'
Замени вычитание сложением с противоположным и вычисли.
' +'
Пример 1 / 6Очки: 0 / 6
' @@ -353,10 +405,21 @@ function buildP5(){ /* ===================== § 6. ЗАКОНЫ СЛОЖЕНИЯ ===================== */ function buildP6(){ var box=document.getElementById('p6-body'); var h=''; + h+=makeCard('oral','Где это в жизни','6.0', + '

Когда кассир суммирует покупки, он добавляет их в любом порядке — результат одинаков. Это переместительный закон. Бухгалтер, считая баланс, группирует доходы и расходы удобными блоками — это сочетательный. Оба закона экономят время каждый день.

'); h+=makeCard('rule','Законы сложения','6.1', '

Переместительный: $a+b=b+a$ (слагаемые можно менять местами).

' +'

Сочетательный: $(a+b)+c=a+(b+c)$ (слагаемые можно группировать).

' +'

Их используют для удобства: сначала складывают противоположные или «круглые» числа: $-7+15+7 = (-7+7)+15 = 15$.

'); + h+=makeCard('example','Разбор по шагам','6.2', + '

Вычисли удобным способом: $23 + (-18) + (-23)$.

' + +'
  1. Замечаем: $23$ и $-23$ — противоположные числа.
  2. ' + +'
  3. По сочетательному закону группируем их: $(23 + (-23)) + (-18)$.
  4. ' + +'
  5. $23 + (-23) = 0$ (сумма противоположных).
  6. ' + +'
  7. $0 + (-18) = -18$.
  8. ' + +'
  9. Ответ: $-18$. Без группировки это было бы сложнее!
'); + h+=makeCard('theory','А знаешь ли ты?','6.3', + '

Переместительный закон кажется очевидным, но он выполняется не всегда! Например, при умножении матриц в высшей математике $A \cdot B \ne B \cdot A$ — это называется некоммутативностью. В обычной арифметике нам везёт: сложение и умножение чисел коммутативны.

'); h+='
Интерактив 1
Вычисли удобным способом
' +'
Сгруппируй слагаемые, чтобы считать было легко.
' +'
Пример 1 / 5Очки: 0 / 5
' @@ -404,10 +467,20 @@ function buildP6(){ /* ===================== § 7. УМНОЖЕНИЕ РАЦИОНАЛЬНЫХ ===================== */ function buildP7(){ var box=document.getElementById('p7-body'); var h=''; + h+=makeCard('oral','Где это в жизни','7.0', + '

Если температура падает на 3°C каждый час в течение 4 часов, то изменение составит $(-3) \cdot 4 = -12$°C. Умножение с отрицательными числами используют везде: в физике (скорость и направление), в экономике (убыток за несколько месяцев), в программировании (отражение на экране).

'); h+=makeCard('rule','Правило знаков при умножении','7.1', '

Перемножают модули, а знак определяют по правилу:

' +'
$\\times$$+$$-$
$+$$+$$-$
$-$$-$$+$
' +'

«Минус на минус даёт плюс». $-3\\cdot(-4)=12$,   $-3\\cdot 4=-12$. Умножение на $0$ даёт $0$.

'); + h+=makeCard('example','Разбор по шагам','7.2', + '

Вычисли $(-6) \\cdot (-5)$.

' + +'
  1. Перемножаем модули: $|-6| = 6$, $|-5| = 5$, $6 \\cdot 5 = 30$.
  2. ' + +'
  3. Определяем знак: оба множителя отрицательные (знаки одинаковые).
  4. ' + +'
  5. Одинаковые знаки при умножении дают «плюс».
  6. ' + +'
  7. Ответ: $(-6) \\cdot (-5) = +30 = 30$.
'); + h+=makeCard('theory','А знаешь ли ты?','7.3', + '

Почему «минус на минус даёт плюс»? Вот интуитивное объяснение: «враг моего врага — мой друг». Если долг ($-$) это плохо, то убрать долг ($-$) — это хорошо ($+$). Формально это следует из дистрибутивности, но образно запомнить проще!

'); h+='
Интерактив 1
Знак произведения
' +'
Выбери знаки множителей — узнай знак произведения.
' +'
' @@ -447,9 +520,20 @@ function buildP7(){ /* ===================== § 8. ДЕЛЕНИЕ РАЦИОНАЛЬНЫХ ===================== */ function buildP8(){ var box=document.getElementById('p8-body'); var h=''; + h+=makeCard('oral','Где это в жизни','8.0', + '

Если команда потеряла 12 очков за 4 тура поровну, то в каждом туре: $-12 \div 4 = -3$ очка. Деление с отрицательными числами встречается везде, где нужно равномерно распределить убыток, снижение температуры или расход топлива.

'); h+=makeCard('rule','Правило знаков при делении','8.1', '

Делят модули, а знак — по тому же правилу, что и при умножении: одинаковые знаки дают $+$, разные — $-$.

' +'

$-12\\div(-3)=4$,   $-12\\div 3=-4$,   $12\\div(-4)=-3$. На ноль делить нельзя.

'); + h+=makeCard('example','Разбор по шагам','8.2', + '

Вычисли $(-35) \\div 7$.

' + +'
  1. Делим модули: $|-35| = 35$, $|7| = 7$, $35 \\div 7 = 5$.
  2. ' + +'
  3. Определяем знак: знаки делимого и делителя разные ($-$ и $+$).
  4. ' + +'
  5. Разные знаки при делении дают «минус».
  6. ' + +'
  7. Ответ: $(-35) \\div 7 = -5$.
  8. ' + +'
  9. Проверка: $(-5) \\cdot 7 = -35$ — верно!
'); + h+=makeCard('theory','А знаешь ли ты?','8.3', + '

Деление на ноль — единственная «запрещённая» операция в математике. Если бы оно было определено, возникли бы противоречия: например, можно было бы «доказать», что $1 = 2$. Именно поэтому в программах, где встречается деление, обязательно проверяют, не равен ли делитель нулю.

'); h+='
Интерактив 1
Тренажёр деления
' +'
Раздели рациональные числа (деление нацело).
' +'
Пример 1 / 6Очки: 0 / 6
' @@ -495,15 +579,32 @@ function buildP8(){ /* ===================== § 9. ЗАДАЧИ НА ВСЕ ДЕЙСТВИЯ ===================== */ function buildP9(){ var box=document.getElementById('p9-body'); var h=''; + h+=makeCard('oral','Где это в жизни','9.0', + '

В реальных задачах действия всегда смешаны: температуру сначала умножают (на несколько дней), потом прибавляют или вычитают. Финансовые расчёты, физические формулы, программные алгоритмы — всё требует правильного порядка действий со знаками.

'); h+=makeCard('rule','Порядок действий со знаками','9.1', '

Сначала действия в скобках, затем умножение и деление, потом сложение и вычитание. Внимательно следи за знаками.

' +'

$-3 + 4\\cdot(-2) = -3 + (-8) = -11$.

'); + h+=makeCard('example','Разбор по шагам','9.2', + '

Вычисли $(-5 + 2) \\cdot 3$.

' + +'
  1. Сначала скобки: $-5 + 2 = -3$.
  2. ' + +'
  3. Теперь умножение: $(-3) \\cdot 3$.
  4. ' + +'
  5. Знаки разные ($-$ и $+$): результат отрицательный.
  6. ' + +'
  7. Модули: $3 \\cdot 3 = 9$.
  8. ' + +'
  9. Ответ: $(-5 + 2) \\cdot 3 = -9$.
'); + h+=makeCard('theory','А знаешь ли ты?','9.3', + '

Приоритет операций (скобки, потом умножение/деление, потом сложение/вычитание) — международное соглашение. В разных странах его запоминают по аббревиатурам: в Беларуси и России говорят просто «порядок действий», в англоязычных странах используют BODMAS или PEMDAS. Правило одно — запись разная.

'); h+='
Интерактив 1
Вычисли выражение
' +'
Соблюдай порядок действий и правила знаков.
' +'
Пример 1 / 6Очки: 0 / 6
' +'
' +'
' +'
'; + h+='
Интерактив 2
Что посчитать первым?
' + +'
Выбери действие, которое надо выполнить ПЕРВЫМ по порядку.
' + +'
Вопрос 1 / 5Очки: 0 / 5
' + +'
' + +'
' + +'
'; h+=secNav('p8','app')+readBtn('p9'); box.innerHTML=h; renderMath(box); @@ -521,19 +622,57 @@ function buildP9(){ document.getElementById('p9-go').addEventListener('click',go); document.getElementById('p9-a').addEventListener('keydown',function(e){ if(e.key==='Enter')go(); }); show(); })(); + + (function(){ + var OQ=[ + {expr:'$3 + 4 \\cdot (-2)$', opts:['сложение $3+4$','умножение $4\\cdot(-2)$','вычитание $4-2$'], ans:1, expl:'Умножение выполняется до сложения.'}, + {expr:'$(-5 + 2) \\cdot 3$', opts:['умножение $5\\cdot3$','скобки $-5+2$','умножение $2\\cdot3$'], ans:1, expl:'Сначала — действие в скобках.'}, + {expr:'$10 - 3 \\cdot 4$', opts:['вычитание $10-3$','умножение $3\\cdot4$','сложение $3+4$'], ans:1, expl:'Умножение приоритетнее вычитания.'}, + {expr:'$(-8) \\div 2 - 1$', opts:['вычитание $2-1$','деление $(-8)\\div2$','сложение $8+2$'], ans:1, expl:'Деление выполняется до вычитания.'}, + {expr:'$6 + (-2) \\cdot 5$', opts:['сложение $6+(-2)$','умножение $(-2)\\cdot5$','деление $6\\div2$'], ans:1, expl:'Умножение раньше сложения.'} + ]; + var order=OQ.map(function(_,k){return k;}); for(var j=order.length-1;j>0;j--){var k=_ri(0,j),t=order[j];order[j]=order[k];order[k]=t;} + var i=0,score=0,cur=null; + function show(){ if(i>=5){ document.getElementById('p9-oq').innerHTML='Готово! '+score+' / 5'; document.getElementById('p9-oopts').innerHTML=''; if(score>=4){addXp(15,'p9-iv2');bumpProgress('p9',30);}else if(score>=2){addXp(8,'p9-iv2');bumpProgress('p9',16);} return; } + cur=OQ[order[i]]; document.getElementById('p9-oi').textContent=i+1; + document.getElementById('p9-oq').innerHTML='Что выполнить ПЕРВЫМ в выражении '+cur.expr+'?'; renderMath(document.getElementById('p9-oq')); + document.getElementById('p9-oopts').innerHTML=cur.opts.map(function(o,idx){ return ''; }).join(''); + document.querySelectorAll('#p9-oopts [data-idx]').forEach(function(b){ b.addEventListener('click',function(){ ansOQ(+b.getAttribute('data-idx')); }); }); renderMath(document.getElementById('p9-oopts')); + document.getElementById('p9-ofb').style.display='none'; } + function ansOQ(idx){ if(i>=5)return; var fb=document.getElementById('p9-ofb'); + if(idx===cur.ans){ score++; feedback(fb,true,'✓ Верно! '+cur.expl); } else feedback(fb,false,'✗ Нет. '+cur.expl); + document.getElementById('p9-os').textContent=score; i++; setTimeout(show,1400); } + show(); + })(); } /* ===================== § 11. МАТЕМАТИКА ВОКРУГ НАС ===================== */ function buildApp(){ var box=document.getElementById('app-body'); var h=''; + h+=makeCard('oral','Где это в жизни','11.0', + '

Отрицательные числа — это не абстракция: они буквально повсюду. Зимой без них не обойтись (температура), в банке (баланс счёта), в навигации (высота и глубина), в спорте (разница очков), в лифте (подвальные этажи). Математика помогает описать реальный мир во всей его сложности.

'); h+=makeCard('theory','Отрицательные числа вокруг нас','11.1', '

Температура ниже нуля, долги и доходы, высота над уровнем моря и глубина, координаты в играх и на карте — всюду нужны отрицательные числа.

'); + h+=makeCard('example','Разбор по шагам','11.2', + '

Задача: утром было $-7$°C, днём потеплело на $12$°C. Какая температура стала?

' + +'
  1. «Потеплело» — значит прибавляем: $-7 + 12$.
  2. ' + +'
  3. Знаки разные. Модули: $7$ и $12$. Разность: $12 - 7 = 5$.
  4. ' + +'
  5. Знак от числа с большим модулем: $12 > 7$, знак «плюс».
  6. ' + +'
  7. Ответ: $-7 + 12 = +5$, то есть $5$°C.
'); + h+=makeCard('theory','А знаешь ли ты?','11.3', + '

Самая низкая температура, когда-либо зафиксированная на Земле, — $-89{,}2$°C на станции «Восток» в Антарктиде (1983 год). Самая высокая — $+56{,}7$°C в Долине Смерти (США). Разница: $56{,}7 - (-89{,}2) = 145{,}9$°C. Вот зачем нужны отрицательные числа!

'); h+='
Интерактив 1
Задачи из жизни
' +'
Реши практическую задачу. Ответ — целое число (можно со знаком −).
' +'
Задача 1 / 6Очки: 0 / 6
' +'
' +'
' +'
'; + h+='
Интерактив 2
Что означает знак?
' + +'
Определи, что описывает это число в реальной ситуации.
' + +'
Вопрос 1 / 5Очки: 0 / 5
' + +'
' + +'
' + +'
'; h+=secNav('p9','final')+readBtn('app'); box.innerHTML=h; renderMath(box); @@ -559,6 +698,28 @@ function buildApp(){ document.getElementById('app-go').addEventListener('click',go); document.getElementById('app-a').addEventListener('keydown',function(e){ if(e.key==='Enter')go(); }); show(); })(); + + (function(){ + var SQ=[ + {q:'Термометр показывает $-15$. Что это означает?', opts:['15 градусов тепла','15 градусов мороза','15 метров глубины'], ans:1}, + {q:'На банковском счёте $-300$ рублей. Что это означает?', opts:['остаток 300 рублей','долг 300 рублей','доход 300 рублей'], ans:1}, + {q:'Высота дна озера $-8$ метров. Что это означает?', opts:['8 метров над уровнем воды','8 метров ниже уровня воды','8 метров над уровнем моря'], ans:1}, + {q:'В игре у игрока $-20$ очков. Что произошло?', opts:['игрок заработал 20 очков','игрок потерял 20 очков','игрок остановился на 20 очков'], ans:1}, + {q:'Лифт на этаже $-1$. Где он находится?', opts:['на первом этаже','на первом подземном этаже','между первым и вторым этажом'], ans:1} + ]; + var order=SQ.map(function(_,k){return k;}); for(var j=order.length-1;j>0;j--){var k=_ri(0,j),t=order[j];order[j]=order[k];order[k]=t;} + var i=0,score=0,cur=null; + function show(){ if(i>=5){ document.getElementById('app-sq').innerHTML='Готово! '+score+' / 5'; document.getElementById('app-sopts').innerHTML=''; if(score>=4){addXp(15,'app-iv2');bumpProgress('app',35);}else if(score>=2){addXp(8,'app-iv2');bumpProgress('app',18);} return; } + cur=SQ[order[i]]; document.getElementById('app-si').textContent=i+1; + document.getElementById('app-sq').innerHTML=cur.q; renderMath(document.getElementById('app-sq')); + document.getElementById('app-sopts').innerHTML=cur.opts.map(function(o,idx){ return ''; }).join(''); + document.querySelectorAll('#app-iv2 [data-idx]').forEach(function(b){ b.addEventListener('click',function(){ ansS(+b.getAttribute('data-idx')); }); }); + document.getElementById('app-sfb').style.display='none'; } + function ansS(idx){ if(i>=5)return; var fb=document.getElementById('app-sfb'); + if(idx===cur.ans){ score++; feedback(fb,true,'✓ Верно!'); } else feedback(fb,false,'✗ Нет. Правильный ответ: «'+cur.opts[cur.ans]+'».'); + document.getElementById('app-ss').textContent=score; i++; setTimeout(show,1300); } + show(); + })(); } /* ===================== ФИНАЛ ГЛАВЫ — БОССЫ ===================== */ diff --git a/frontend/textbooks/math_6_ch5.html b/frontend/textbooks/math_6_ch5.html index d797c17..c4742be 100644 --- a/frontend/textbooks/math_6_ch5.html +++ b/frontend/textbooks/math_6_ch5.html @@ -100,14 +100,24 @@ var ROM=['','I','II','III','IV']; /* ===================== § 1. ДЕКАРТОВА СИСТЕМА КООРДИНАТ ===================== */ function buildP1(){ var box=document.getElementById('p1-body'); var h=''; + h+=makeCard('oral','Где это в жизни','1.0', + '

Каждый раз, когда ты открываешь карту в телефоне или играешь в стратегию на компьютере, работает именно эта идея: у каждого места есть пара чисел — «сколько вправо» и «сколько вверх». Координаты используют GPS-навигаторы, пилоты самолётов, геологи, разработчики видеоигр и даже хирурги при операциях с точным позиционированием робота.

'); h+=makeCard('theory','Координаты на плоскости','1.1', '

Две перпендикулярные координатные прямые с общим началом $O$ образуют прямоугольную (декартову) систему координат. Горизонтальная ось — ось абсцисс $Ox$, вертикальная — ось ординат $Oy$.

' +'

Положение точки задаёт пара чисел $(x;\\,y)$: первое — абсцисса (по $Ox$), второе — ордината (по $Oy$). Например, $A(3;\\,4)$.

'); - h+=makeCard('rule','Четверти','1.2', + h+=makeCard('example','Разбор по шагам','1.2', + '

Как отметить точку $A(3;\\,4)$ на координатной плоскости?

' + +'
  1. Найди на оси $Ox$ значение $x = 3$ и проведи мысленно вертикальную линию.
  2. ' + +'
  3. Найди на оси $Oy$ значение $y = 4$ и проведи мысленно горизонтальную линию.
  4. ' + +'
  5. Точка пересечения этих двух линий и есть $A(3;\\,4)$.
  6. ' + +'
  7. Проверь четверть: $x > 0$, $y > 0$ — значит, точка в I четверти. Верно!
'); + h+=makeCard('rule','Четверти','1.3', '

Оси делят плоскость на четыре четверти (нумеруют против часовой стрелки от правой верхней):

' +'' +'' +'
ЧетвертьIIIIIIIV
знак $x$++
знак $y$++
'); + h+=makeCard('theory','А знаешь ли ты?','1.4', + '

Систему координат изобрёл французский математик и философ Рене Декарт в XVII веке. По легенде, идея пришла к нему, когда он лежал в постели и наблюдал за мухой на потолке: он понял, что положение мухи можно точно описать двумя числами — расстоянием до двух стен. Так родилась «декартова» система, которую сегодня используют в любом учебнике математики и любой компьютерной программе.

'); h+='
Интерактив 1
Прочитай координаты
' +'
Определи координаты отмеченной точки и введи абсциссу и ординату.
' +'
Точка 1 / 6Очки: 0 / 6
' @@ -120,6 +130,12 @@ function buildP1(){ +'
' +'
' +'
'; + h+='
Интерактив 3
Угадай, в какой четверти?
' + +'
Тебе даны знаки координат — определи номер четверти без графика.
' + +'
Вопрос 1 / 6Очки: 0 / 6
' + +'
' + +'
' + +'
'; h+=secNav(null,'p2')+readBtn('p1'); box.innerHTML=h; renderMath(box); @@ -151,16 +167,39 @@ function buildP1(){ document.getElementById('p1-qs').textContent=score; i++; setTimeout(show,1200); } document.querySelectorAll('#p1-iv2 [data-q]').forEach(function(b){ b.addEventListener('click',function(){ ans(+b.getAttribute('data-q')); }); }); show(); })(); + + (function(){ + var COMB=[{sx:'+',sy:'+',q:1},{sx:'-',sy:'+',q:2},{sx:'-',sy:'-',q:3},{sx:'+',sy:'-',q:4}]; + var i=0,score=0,cur=null; + function show(){ if(i>=6){ document.getElementById('p1-tq').innerHTML='Готово! Результат: '+score+' / 6'; if(score>=5){addXp(15,'p1-iv3');bumpProgress('p1',20);}else if(score>=3){addXp(7,'p1-iv3');bumpProgress('p1',10);} return; } + cur=_pick(COMB); document.getElementById('p1-ti').textContent=i+1; + document.getElementById('p1-tq').innerHTML='Точка: $x '+cur.sx+'$, $y '+cur.sy+'$. Четверть?'; + renderMath(document.getElementById('p1-tq')); + document.getElementById('p1-tfb').style.display='none'; } + function ans(q){ if(i>=6)return; var fb=document.getElementById('p1-tfb'); + if(q===cur.q){ score++; feedback(fb,true,'✓ Верно — '+ROM[cur.q]+' четверть.'); } else feedback(fb,false,'✗ Нет. '+ROM[cur.q]+' четверть (x'+cur.sx+', y'+cur.sy+').'); + document.getElementById('p1-ts').textContent=score; i++; setTimeout(show,1200); } + document.querySelectorAll('#p1-iv3 [data-tq]').forEach(function(b){ b.addEventListener('click',function(){ ans(+b.getAttribute('data-tq')); }); }); show(); + })(); } /* ===================== § 2. ГРАФИКИ РЕАЛЬНЫХ ПРОЦЕССОВ ===================== */ function buildP2(){ var box=document.getElementById('p2-body'); var h=''; + h+=makeCard('oral','Где это в жизни','2.0', + '

Каждый день ты видишь графики: прогноз погоды (температура по часам), курс доллара (цена по дням), пульс на спортивных часах (удары по минутам). Врачи читают кардиограмму — это тоже график. Умея читать любой график, ты понимаешь реальный процесс без длинных таблиц чисел.

'); h+=makeCard('theory','Что показывает график','2.1', '

График наглядно показывает, как одна величина зависит от другой: температура от времени, путь от времени, уровень воды от времени.

' +'

Чтобы прочитать значение, находят точку на горизонтальной оси, поднимаются до линии графика и смотрят значение на вертикальной оси.

'); - h+=makeCard('example','Пример','2.2', - '

Если в $2$ ч температура была $4°$, то точка графика с абсциссой $2$ имеет ординату $4$.

'); + h+=makeCard('example','Разбор по шагам','2.2', + '

Как прочитать температуру в 3 ч по графику?

' + +'
  1. Найди на горизонтальной оси (время) отметку $3$ ч.
  2. ' + +'
  3. Из этой точки проведи мысленно вертикальную линию вверх до кривой графика.
  4. ' + +'
  5. Из точки пересечения проведи горизонтальную линию влево до оси температур.
  6. ' + +'
  7. Прочитай значение на вертикальной оси: $6°C$.
  8. ' + +'
  9. Вывод: в 3 ч было $6°C$.
'); + h+=makeCard('theory','А знаешь ли ты?','2.3', + '

Первые графики температур и давления начали строить метеорологи в XVIII веке. Уже тогда учёные поняли: одна кривая на графике заменяет целую страницу цифр и сразу показывает тренд — растёт, падает или стоит на месте. Сегодня биржевые трейдеры принимают решения за секунды именно благодаря умению мгновенно «читать» линию на графике.

'); h+='
Интерактив 1
Прочитай значение по графику
' +'
Температура (°C) в зависимости от времени (ч). Ответь на вопрос по графику.
' +'
Вопрос 1 / 5Очки: 0 / 5
' @@ -173,6 +212,12 @@ function buildP2(){ +'
' +'
' +'
'; + h+='
Интерактив 3
Рост, спад или стоп?
' + +'
На каком участке линия графика растёт, падает или остаётся горизонтальной?
' + +'
Вопрос 1 / 5Очки: 0 / 5
' + +'
' + +'
' + +'
'; h+=secNav('p1','p3')+readBtn('p2'); box.innerHTML=h; renderMath(box); @@ -210,16 +255,48 @@ function buildP2(){ document.getElementById('p2-cgo').addEventListener('click',go); document.getElementById('p2-ca').addEventListener('keydown',function(e){ if(e.key==='Enter')go(); }); show(); })(); + + (function(){ + var SEGS=[ + {q:'Температура с 0 ч до 1 ч: как меняется?', ans:'up'}, + {q:'Температура с 1 ч до 2 ч: как меняется?', ans:'flat'}, + {q:'Температура с 2 ч до 3 ч: как меняется?', ans:'up'}, + {q:'Температура с 3 ч до 4 ч: как меняется?', ans:'down'}, + {q:'Температура с 4 ч до 5 ч: как меняется?', ans:'flat'}, + {q:'Температура с 5 ч до 6 ч: как меняется?', ans:'down'} + ]; + var i=0,score=0; + function show(){ if(i>=5){ document.getElementById('p2-dq').innerHTML='Готово! Результат: '+score+' / 5'; if(score>=4){addXp(12,'p2-iv3');bumpProgress('p2',25);}else if(score>=2){addXp(6,'p2-iv3');bumpProgress('p2',12);} return; } + document.getElementById('p2-di').textContent=i+1; + document.getElementById('p2-dq').innerHTML=SEGS[i].q; + document.getElementById('p2-dfb').style.display='none'; } + function ans(v){ if(i>=5)return; var fb=document.getElementById('p2-dfb'), cor=SEGS[i].ans; + var labels={up:'Растёт',flat:'Стоит',down:'Падает'}; + if(v===cor){ score++; feedback(fb,true,'✓ Верно: '+labels[cor]+'.'); } else feedback(fb,false,'✗ Нет. Правильно: '+labels[cor]+'.'); + document.getElementById('p2-ds').textContent=score; i++; setTimeout(show,1200); } + document.querySelectorAll('#p2-iv3 [data-dv]').forEach(function(b){ b.addEventListener('click',function(){ ans(b.getAttribute('data-dv')); }); }); show(); + })(); } /* ===================== § 3. ГРАФИКИ ПРЯМОЙ И ОБРАТНОЙ ПРОПОРЦИОНАЛЬНОСТИ ===================== */ function buildP3(){ var box=document.getElementById('p3-body'); var h=''; + h+=makeCard('oral','Где это в жизни','3.0', + '

Прямая пропорциональность — это скорость и путь: проедешь вдвое больше часов — путь вдвое больше ($s = v \\cdot t$, где $v$ — коэффициент). Обратная — работа и время: чем больше рабочих, тем меньше часов ($t = A / n$). Курс обмена валюты, рецепты (больше порций — больше ингредиентов), топливо в баке — всё это пропорциональные зависимости.

'); h+=makeCard('theory','Прямая пропорциональность','3.1', '

Если $y = kx$ (где $k\\ne 0$ — коэффициент), то $y$ прямо пропорционален $x$. График — прямая, проходящая через начало координат.

' +'

Чем больше $k$, тем «круче» прямая. При $k>0$ прямая идёт вверх, при $k<0$ — вниз.

'); h+=makeCard('theory','Обратная пропорциональность','3.2', '

Если $y = \\dfrac{k}{x}$ (где $k\\ne 0$), то $y$ обратно пропорционален $x$. График — гипербола (две ветви), он не проходит через начало координат.

'); + h+=makeCard('example','Разбор по шагам','3.3', + '

Задача: прямая $y = kx$ проходит через точку $(2;\\,6)$. Найди $k$.

' + +'
  1. Подставь координаты точки в формулу: $6 = k \\cdot 2$.
  2. ' + +'
  3. Раздели обе части на $2$: $k = 6 : 2 = 3$.
  4. ' + +'
  5. Формула зависимости: $y = 3x$.
  6. ' + +'
  7. Проверка: при $x = 2$ получаем $y = 3 \\cdot 2 = 6$. Верно!
' + +'

Аналогично для $y = \\frac{k}{x}$: если точка $(4;\\,3)$, то $k = 4 \\cdot 3 = 12$.

'); + h+=makeCard('theory','А знаешь ли ты?','3.4', + '

Гипербола — одна из конических сечений: если разрезать конус плоскостью под определённым углом, срез будет гиперболой. Та же форма встречается в траекториях некоторых комет, в форме некоторых антенн и в архитектуре башен-градирен на электростанциях. Прямая пропорциональность же лежит в основе закона Ома ($I = U/R$ при фиксированном $U$) и закона Гука.

'); h+='
Интерактив 1
График y = kx
' +'
Двигай коэффициент $k$ — смотри, как меняется наклон прямой.
' +'
' @@ -230,6 +307,12 @@ function buildP3(){ +'
' +'
' +'
'; + h+='
Интерактив 3
Найди коэффициент k
' + +'
Прямая $y = kx$ проходит через заданную точку. Найди $k$.
' + +'
Задача 1 / 6Очки: 0 / 6
' + +'
' + +'
$k = $
' + +'
'; h+=secNav('p2','app')+readBtn('p3'); box.innerHTML=h; renderMath(box); @@ -255,19 +338,52 @@ function buildP3(){ document.getElementById('p3-s').textContent=score; i++; setTimeout(show,1300); } document.querySelectorAll('#p3-iv2 [data-t]').forEach(function(b){ b.addEventListener('click',function(){ ans(b.getAttribute('data-t')); }); }); show(); })(); + + (function(){ + var i=0,score=0,cur=null; + function gen(){ var a=_pick([2,3,4,5,6]), b=_pick([2,3,4,5]); cur={a:a,b:a*b,k:b}; } + function show(){ if(i>=6){ document.getElementById('p3-kq').innerHTML='Готово! Результат: '+score+' / 6'; if(score>=5){addXp(15,'p3-iv3');bumpProgress('p3',25);}else if(score>=3){addXp(8,'p3-iv3');bumpProgress('p3',12);} return; } + gen(); document.getElementById('p3-ki').textContent=i+1; + document.getElementById('p3-kq').innerHTML='Прямая $y = kx$ проходит через точку $('+cur.a+';\\,'+cur.b+')$. Найди $k$.'; + renderMath(document.getElementById('p3-kq')); + document.getElementById('p3-ka').value=''; document.getElementById('p3-kfb').style.display='none'; } + function go(){ if(i>=6)return; var fb=document.getElementById('p3-kfb'), v=parseInt(document.getElementById('p3-ka').value,10); + if(isNaN(v)){ feedback(fb,false,'Введи целое число.'); return; } + if(v===cur.k){ score++; feedback(fb,true,'✓ Верно: $k = '+cur.k+'$ ('+cur.b+' : '+cur.a+' = '+cur.k+').'); } else feedback(fb,false,'✗ Нет. $k = '+cur.b+' : '+cur.a+' = '+cur.k+'$.'); + renderMath(fb); document.getElementById('p3-ks').textContent=score; i++; setTimeout(show,1400); } + document.getElementById('p3-kgo').addEventListener('click',go); + document.getElementById('p3-ka').addEventListener('keydown',function(e){ if(e.key==='Enter')go(); }); show(); + })(); } /* ===================== § 5. МАТЕМАТИКА ВОКРУГ НАС ===================== */ function buildApp(){ var box=document.getElementById('app-body'); var h=''; + h+=makeCard('oral','Где это в жизни','5.0', + '

Координатная плоскость и графики сопровождают тебя везде: карта города — это координатная сетка; расписание поездов и автобусов — это график пути от времени; ценники в магазине описываются прямой пропорциональностью. Пилоты, капитаны кораблей, программисты, дизайнеры и врачи ежедневно работают с системами координат и графиками.

'); h+=makeCard('theory','Графики и координаты вокруг нас','5.1', '

Координаты — это «адрес» на карте, в игре, на экране. Графики показывают курс валют, погоду, расписание движения, рост и вес. Уметь читать график — полезный жизненный навык.

'); + h+=makeCard('example','Разбор по шагам','5.2', + '

Машина едет со скоростью $60$ км/ч. Составим и прочитаем график пути.

' + +'
  1. Формула: $s = 60 \\cdot t$ — это прямая пропорциональность.
  2. ' + +'
  3. За $1$ ч: $s = 60$ км. За $2$ ч: $s = 120$ км. За $3$ ч: $s = 180$ км.
  4. ' + +'
  5. Отметим точки $(1;60)$, $(2;120)$, $(3;180)$ и соединим прямой.
  6. ' + +'
  7. Горизонтальный участок графика означал бы остановку: путь не растёт, но время идёт.
  8. ' + +'
  9. По графику легко найти путь за любое время — просто читаем координату.
'); + h+=makeCard('theory','А знаешь ли ты?','5.3', + '

В видеоиграх каждый пиксель на экране задаётся парой координат $(x, y)$, где $(0, 0)$ — обычно левый верхний угол. Создатели игр описывают движение персонажа формулами прямой пропорциональности: $x = x_0 + v_x \\cdot t$, $y = y_0 + v_y \\cdot t$. Это точно такая же математика, которую вы изучаете сейчас — только работающая со скоростью десятков кадров в секунду.

'); h+='
Интерактив 1
Путь и время
' +'
График пути (км) от времени (ч). Ответь на вопрос.
' +'
Вопрос 1 / 5Очки: 0 / 5
' +'
' +'
' +'
'; + h+='
Интерактив 2
Скорость по графику пути
' + +'
По двум точкам графика пути вычисли скорость: $v = \\Delta s / \\Delta t$.
' + +'
Задача 1 / 5Очки: 0 / 5
' + +'
' + +'
$v = $ км/ч
' + +'
'; h+=secNav('p3','final')+readBtn('app'); box.innerHTML=h; renderMath(box); @@ -294,6 +410,27 @@ function buildApp(){ document.getElementById('app-go').addEventListener('click',go); document.getElementById('app-a').addEventListener('keydown',function(e){ if(e.key==='Enter')go(); }); show(); })(); + + (function(){ + var VSEGS=[ + {t1:0,s1:0,t2:1,s2:40},{t1:1,s1:40,t2:2,s2:80}, + {t1:4,s1:120,t2:5,s2:160},{t1:0,s1:0,t2:2,s2:80},{t1:3,s1:80,t2:5,s2:160} + ]; + var i=0,score=0; + function show(){ if(i>=5){ document.getElementById('app-vq').innerHTML='Готово! Результат: '+score+' / 5'; if(score>=4){addXp(15,'app-iv2');bumpProgress('app',30);}else if(score>=2){addXp(7,'app-iv2');bumpProgress('app',15);} return; } + var seg=VSEGS[i]; document.getElementById('app-vi').textContent=i+1; + var ds=seg.s2-seg.s1, dt=seg.t2-seg.t1; + document.getElementById('app-vq').innerHTML='С '+seg.t1+' ч до '+seg.t2+' ч путь вырос с '+seg.s1+' км до '+seg.s2+' км. Найди среднюю скорость (км/ч).'; + document.getElementById('app-va').value=''; document.getElementById('app-vfb').style.display='none'; + document.getElementById('app-vq')._ans=Math.round(ds/dt); } + function go(){ if(i>=5)return; var fb=document.getElementById('app-vfb'), ans=document.getElementById('app-vq')._ans, v=parseInt(document.getElementById('app-va').value,10); + if(isNaN(v)){ feedback(fb,false,'Введи число.'); return; } + var seg=VSEGS[i], ds=seg.s2-seg.s1, dt=seg.t2-seg.t1; + if(v===ans){ score++; feedback(fb,true,'✓ Верно: '+ds+' / '+dt+' = '+ans+' км/ч.'); } else feedback(fb,false,'✗ Нет. '+ds+' : '+dt+' = '+ans+' км/ч.'); + document.getElementById('app-vs').textContent=score; i++; setTimeout(show,1300); } + document.getElementById('app-vgo').addEventListener('click',go); + document.getElementById('app-va').addEventListener('keydown',function(e){ if(e.key==='Enter')go(); }); show(); + })(); } /* ===================== ФИНАЛ ГЛАВЫ — БОССЫ ===================== */ diff --git a/frontend/textbooks/math_6_ch6.html b/frontend/textbooks/math_6_ch6.html index be68448..86a3e98 100644 --- a/frontend/textbooks/math_6_ch6.html +++ b/frontend/textbooks/math_6_ch6.html @@ -153,11 +153,22 @@ var TRIS=[ /* ===================== § 1. ТЕЛА И РАЗВЁРТКИ ===================== */ function buildP1(){ var box=document.getElementById('p1-body'); var h=''; + h+=makeCard('oral','Где это в жизни','1.0', + '

Геометрические тела окружают нас повсюду. Кубик сахара — куб, консервная банка — цилиндр, египетская пирамида — пирамида, вафельный рожок мороженого — конус, шатровая крыша — призма. Когда упаковщик разворачивает коробку из-под сока в плоский лист — он работает с развёрткой. Понимание развёрток нужно дизайнерам, инженерам и даже кулинарам, которые лепят конусы из вафельных коржей.

'); h+=makeCard('theory','Тела в пространстве','1.1', '

Окружающие предметы имеют форму геометрических тел: коробка — это прямоугольный параллелепипед (частный случай — куб), палатка — призма, египетские сооружения — пирамида, банка — цилиндр, рожок мороженого — конус.

' +'

У многогранников есть грани (плоские стороны), рёбра (линии стыка граней) и вершины (точки стыка рёбер).

' +'
' +['cube','prism','pyramid','cylinder','cone'].map(function(k){ return '
'+svgWrap(140,120,SOLIDS[k])+'
'+SOLID_NAME[k]+'
'; }).join('')+'
'); + h+=makeCard('example','Разбор по шагам: считаем грани, рёбра и вершины куба','1.1e', + '
    ' + +'
  1. Смотрим на куб. Он ограничен плоскими квадратами — это грани. Считаем: верхняя, нижняя и 4 боковых = 6 граней.
  2. ' + +'
  3. Там, где встречаются две грани, проходит ребро. На каждом квадрате 4 ребра, но каждое ребро общее для двух граней: $6 \\cdot 4 \\div 2 = $ 12 рёбер.
  4. ' + +'
  5. Там, где сходятся три ребра, стоит вершина. У куба: $12 \\cdot 2 \\div 3 = $ 8 вершин.
  6. ' + +'
  7. Проверяем формулой Эйлера: $F - E + V = 2$, то есть $6 - 12 + 8 = 2$ — верно!
  8. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','1.2t', + '

Формула Эйлера $F - E + V = 2$ (грани минус рёбра плюс вершины равно 2) выполняется для любого выпуклого многогранника — куба, призмы, пирамиды и даже футбольного мяча (из 20 шестиугольников и 12 пятиугольников). Леонард Эйлер доказал это ещё в 1752 году.

'); h+=makeCard('theory','Развёртка тела','1.2', '

Развёртка — это фигура на плоскости, из которой можно склеить тело. У куба развёртка состоит из 6 квадратов, у цилиндра — из прямоугольника и двух кругов.

' +'
'+svgWrap(160,160,NETS.cube)+svgWrap(160,160,NETS.cylinder)+'
'); @@ -173,9 +184,20 @@ function buildP1(){ +'
' +'
' +'
'; + h+='
Интерактив 3
Многогранник или тело вращения?
' + +'
Перетащи каждое тело в нужную группу. Многогранники ограничены плоскими гранями; тела вращения получаются вращением фигуры вокруг оси.
' + +'
' + +'
'; h+=secNav(null,'p2')+readBtn('p1'); box.innerHTML=h; renderMath(box); + setupSorter('p1-sorter',{ + items:['Куб','Призма','Пирамида','Цилиндр','Конус'], + groups:['Многогранник','Тело вращения'], + answers:{'Куб':'Многогранник','Призма':'Многогранник','Пирамида':'Многогранник','Цилиндр':'Тело вращения','Конус':'Тело вращения'}, + onDone:function(ok,total){ var fb=document.getElementById('p1-s3fb'); if(ok===total){ feedback(fb,true,'Все '+total+' верно!'); addXp(12,'p1-iv3'); bumpProgress('p1',20); } else { feedback(fb,false,'Верно '+ok+' из '+total+'. Попробуй ещё.'); } } + }); + (function(){ var i=0,score=0,cur=null, polys=['cube','prism','pyramid'], lbl=['граней','рёбер','вершин']; function gen(){ var k=_pick(polys), j=_ri(0,2); cur={k:k, j:j, ans:SOLID_FEV[k][j]}; } @@ -212,12 +234,23 @@ function buildP1(){ /* ===================== § 2. ОКРУЖНОСТЬ. КРУГ ===================== */ function buildP2(){ var box=document.getElementById('p2-body'); var h=''; + h+=makeCard('oral','Где это в жизни','2.0', + '

Колёса, монеты, блины, циферблаты, пицца, батуты, тарелки — всё это круги или окружности. Инженеры рассчитывают, сколько краски нужно на круглую разметку стадиона, используя формулу $S = \\pi r^2$. Велосипедисты знают, что чем больше колесо, тем дальше оно катится за один оборот — ведь длина окружности $C = 2\\pi r$ растёт вместе с радиусом.

'); h+=makeCard('theory','Окружность и круг','2.1', '

Окружность — замкнутая линия, все точки которой одинаково удалены от центра. Круг — часть плоскости, ограниченная окружностью.

' +'

Радиус $r$ — расстояние от центра до окружности; диаметр $d=2r$.

'); h+=makeCard('rule','Длина окружности и площадь круга','2.2', '

Длина окружности: $C = 2\\pi r = \\pi d$. Площадь круга: $S = \\pi r^2$.

' +'

Число $\\pi \\approx 3{,}14$ — отношение длины окружности к диаметру (одинаково для любой окружности).

'); + h+=makeCard('example','Разбор по шагам: найди C и S при r = 5','2.1e', + '
    ' + +'
  1. Записываем данные: $r = 5$, $\\pi = 3{,}14$.
  2. ' + +'
  3. Длина окружности: $C = 2 \\cdot \\pi \\cdot r = 2 \\cdot 3{,}14 \\cdot 5 = 31{,}4$.
  4. ' + +'
  5. Площадь круга: $S = \\pi \\cdot r^2 = 3{,}14 \\cdot 5^2 = 3{,}14 \\cdot 25 = 78{,}5$.
  6. ' + +'
  7. Проверяем единицы: длина — в тех же единицах, что и $r$; площадь — в квадратных единицах.
  8. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','2.2t', + '

Число $\\pi$ известно человечеству более 4000 лет. Вавилоняне использовали значение $3{,}125$, а египтяне — $(4/3)^2 \\approx 1{,}78$... нет, они считали $\\pi \\approx 3{,}16$. Сейчас $\\pi$ вычислено до более 100 триллионов знаков после запятой — и всё равно конца не видно, потому что $\\pi$ иррационально.

'); h+='
Интерактив 1
Радиус, длина, площадь
' +'
Двигай радиус — смотри, как меняются длина окружности и площадь круга ($\\pi=3{,}14$).
' +'
' @@ -260,10 +293,21 @@ function buildP2(){ /* ===================== § 3. ВИДЫ ТРЕУГОЛЬНИКОВ ===================== */ function buildP3(){ var box=document.getElementById('p3-body'); var h=''; + h+=makeCard('oral','Где это в жизни','3.0', + '

Треугольники — самая жёсткая геометрическая фигура: именно поэтому треугольные фермы держат мосты и крыши. Дорожный знак «Уступи дорогу» — равносторонний треугольник. Египетские пирамиды в разрезе дают равнобедренный треугольник. А строители, чтобы убедиться, что угол ровно прямой, проверяют соотношение сторон 3:4:5 — это прямоугольный треугольник.

'); h+=makeCard('rule','По сторонам','3.1', '

Разносторонний — все стороны разные. Равнобедренный — две стороны равны. Равносторонний — все три стороны равны (равные стороны отмечают одинаковыми штрихами).

'); h+=makeCard('rule','По углам','3.2', - '

Остроугольный — все углы острые ($<90°$). Прямоугольный — есть прямой угол ($=90°$). Тупоугольный — есть тупой угол ($>90°$).

'); + '

Остроугольный — все углы острые ($<90°$). Прямоугольный — есть прямой угол ($=90°$). Тупоугольный — есть тупой угол ($>90°$).

'); + h+=makeCard('example','Разбор по шагам: определи вид треугольника со сторонами 3, 4, 5','3.1e', + '
    ' + +'
  1. Проверяем стороны: $3 \\ne 4$, $4 \\ne 5$, $3 \\ne 5$ — все разные. По сторонам: разносторонний.
  2. ' + +'
  3. Проверяем, прямоугольный ли он: $3^2 + 4^2 = 9 + 16 = 25 = 5^2$. Теорема Пифагора выполнена!
  4. ' + +'
  5. Значит, есть угол $90°$. По углам: прямоугольный.
  6. ' + +'
  7. Итог: треугольник прямоугольный разносторонний. Это знаменитый египетский треугольник!
  8. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','3.2t', + '

Треугольник со сторонами $3$, $4$, $5$ называют «египетским» — строители Древнего Египта натягивали верёвку с 12 узлами (3+4+5) в виде треугольника, чтобы получить идеальный прямой угол для кладки стен пирамид. Этим приёмом пользуются строители до сих пор!

'); h+='
Интерактив 1
Вид по сторонам
' +'
Определи вид треугольника по сторонам (штрихи отмечают равные стороны).
' +'
Вопрос 1 / 5Очки: 0 / 5
' @@ -276,9 +320,20 @@ function buildP3(){ +'
' +'
' +'
'; + h+='
Интерактив 3
Классификатор треугольников
' + +'
Перетащи каждое слово в нужный столбец: «По сторонам» или «По углам».
' + +'
' + +'
'; h+=secNav('p2','p4')+readBtn('p3'); box.innerHTML=h; renderMath(box); + setupSorter('p3-sorter',{ + items:['Равносторонний','Равнобедренный','Разносторонний','Остроугольный','Прямоугольный','Тупоугольный'], + groups:['По сторонам','По углам'], + answers:{'Равносторонний':'По сторонам','Равнобедренный':'По сторонам','Разносторонний':'По сторонам','Остроугольный':'По углам','Прямоугольный':'По углам','Тупоугольный':'По углам'}, + onDone:function(ok,total){ var fb=document.getElementById('p3-s3fb'); if(ok===total){ feedback(fb,true,'Все '+total+' верно! Классификация усвоена.'); addXp(12,'p3-iv3'); bumpProgress('p3',20); } else { feedback(fb,false,'Верно '+ok+' из '+total+'. Попробуй ещё раз.'); } } + }); + (function(){ var i=0,score=0,cur=null; function gen(){ var t=_pick(TRIS), info=triClass(t[0],t[1],t[2]); cur={t:t,info:info}; } @@ -309,18 +364,50 @@ function buildP3(){ /* ===================== § 4. СИММЕТРИЯ ОТНОСИТЕЛЬНО ТОЧКИ ===================== */ function buildP4(){ var box=document.getElementById('p4-body'); var h=''; + h+=makeCard('oral','Где это в жизни','4.0', + '

Центральная симметрия — это поворот на $180°$ вокруг точки. Именно поэтому игральная карта «туз» выглядит одинаково при повороте вверх ногами: центр карты является центром симметрии. Точно так же симметричны относительно центра дорожный знак «Движение в обоих направлениях» и многие кристаллы в природе.

'); h+=makeCard('theory','Центральная симметрия','4.1', '

Точки $A$ и $A\'$ симметричны относительно точки $O$, если $O$ — середина отрезка $AA\'$. Точка $O$ — центр симметрии.

' +'

Координаты образа: если $A(x;\\,y)$ и центр $O(a;\\,b)$, то $A\'(2a-x;\\;2b-y)$. Относительно начала координат: $A(x;y)\\to A\'(-x;-y)$.

'); + h+=makeCard('example','Разбор по шагам: найди образ точки A(3; -2) относительно O(1; 1)','4.1e', + '
    ' + +'
  1. Записываем формулу: $A\'(2a - x;\\; 2b - y)$, где $a=1$, $b=1$, $x=3$, $y=-2$.
  2. ' + +'
  3. Считаем $x\'$: $2 \\cdot 1 - 3 = 2 - 3 = -1$.
  4. ' + +'
  5. Считаем $y\'$: $2 \\cdot 1 - (-2) = 2 + 2 = 4$.
  6. ' + +'
  7. Ответ: $A\'(-1;\\; 4)$. Проверяем: середина $AA\'$ — точка $\\left(\\tfrac{3+(-1)}{2};\\,\\tfrac{-2+4}{2}\\right) = (1;\\,1) = O$. Верно!
  8. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','4.2t', + '

Центральная симметрия — это то же самое, что поворот на $180°$. Именно поэтому многие буквы при повороте переходят сами в себя: буква «N», цифра «8», буква «S». А вот буква «R» симметрией центра не обладает — она превратится в зеркальную копию.

'); h+='
Интерактив 1
Построй образ точки
' +'
Найди координаты точки $A\'$, симметричной $A$ относительно центра $O$.
' +'
Задача 1 / 5Очки: 0 / 5
' +'
' +'
$x\'=$ $y\'=$
' +'
'; + h+='
Интерактив 2
Тренажёр: образ относительно начала координат
' + +'
Найди координаты точки $A\'$, симметричной $A$ относительно начала координат $O(0;0)$.
' + +'
Задача 1 / 5Очки: 0 / 5
' + +'
' + +'
$x\'=$ $y\'=$
' + +'
'; h+=secNav('p3','p5')+readBtn('p4'); box.innerHTML=h; renderMath(box); + (function(){ + var i2=0,score2=0,cur2=null; + function gen2(){ var ax=_pick([-5,-4,-3,-2,-1,1,2,3,4,5]),ay=_pick([-5,-4,-3,-2,-1,1,2,3,4,5]); cur2={ax:ax,ay:ay,rx:-ax,ry:-ay}; } + function show2(){ if(i2>=5){ document.getElementById('p4-q2').innerHTML='Готово! '+score2+' / 5'; if(score2>=4){addXp(12,'p4-iv2');bumpProgress('p4',30);}else if(score2>=2){addXp(6,'p4-iv2');bumpProgress('p4',15);} return; } + gen2(); document.getElementById('p4-i2').textContent=i2+1; + document.getElementById('p4-q2').innerHTML='$A('+cur2.ax+';\\,'+cur2.ay+')$, центр симметрии $O(0;\\,0)$. Найди $A\'$.'; renderMath(document.getElementById('p4-q2')); + document.getElementById('p4-x2').value=''; document.getElementById('p4-y2').value=''; document.getElementById('p4-fb2').style.display='none'; } + function go2(){ if(i2>=5)return; var fb=document.getElementById('p4-fb2'), x=parseInt(document.getElementById('p4-x2').value,10), y=parseInt(document.getElementById('p4-y2').value,10); + if(isNaN(x)||isNaN(y)){ feedback(fb,false,'Введи обе координаты.'); return; } + if(x===cur2.rx&&y===cur2.ry){ score2++; feedback(fb,true,'✓ Верно: $A\'('+cur2.rx+';\\,'+cur2.ry+')$. Знаки меняются на противоположные.'); } else feedback(fb,false,'✗ Нет. $A\'(-x;\\,-y)=('+cur2.rx+';\\,'+cur2.ry+')$.'); + document.getElementById('p4-s2').textContent=score2; i2++; setTimeout(show2,1500); } + document.getElementById('p4-go2').addEventListener('click',go2); + document.getElementById('p4-y2').addEventListener('keydown',function(e){ if(e.key==='Enter')go2(); }); show2(); + })(); + (function(){ var i=0,score=0,cur=null; function gen(){ var ax=_ri(-4,4),ay=_ri(-4,4),ox=_ri(-2,2),oy=_ri(-2,2); cur={ax:ax,ay:ay,ox:ox,oy:oy,rx:2*ox-ax,ry:2*oy-ay}; } @@ -341,18 +428,48 @@ function buildP4(){ /* ===================== § 5. СИММЕТРИЯ ОТНОСИТЕЛЬНО ПРЯМОЙ ===================== */ function buildP5(){ var box=document.getElementById('p5-body'); var h=''; + h+=makeCard('oral','Где это в жизни','5.0', + '

Осевая симметрия — это «зеркало». Бабочки, листья деревьев, буква «А», лицо человека — все они (почти) симметричны относительно вертикальной оси. Архитекторы используют осевую симметрию при проектировании дворцов и соборов — симметричные фасады смотрятся строго и красиво. В компьютерной графике отражение объекта — это тоже осевая симметрия.

'); h+=makeCard('theory','Осевая симметрия','5.1', '

Точки $A$ и $A\'$ симметричны относительно прямой (оси), если эта прямая — серединный перпендикуляр отрезка $AA\'$: она проходит через середину $AA\'$ под прямым углом.

' +'

Относительно оси $Oy$: $A(x;\\,y)\\to A\'(-x;\\,y)$. Относительно оси $Ox$: $A(x;\\,y)\\to A\'(x;\\,-y)$.

'); + h+=makeCard('example','Разбор по шагам: найди образ точки A(-3; 4) относительно осей Ox и Oy','5.1e', + '
    ' + +'
  1. Исходная точка: $A(-3;\\;4)$.
  2. ' + +'
  3. Относительно $Oy$: меняем знак $x$, $y$ остаётся. $A\'(3;\\;4)$. Точка «перепрыгнула» ось $Oy$ на то же расстояние.
  4. ' + +'
  5. Относительно $Ox$: меняем знак $y$, $x$ остаётся. $A\'\'(-3;\\;-4)$. Точка «перепрыгнула» ось $Ox$.
  6. ' + +'
  7. Запоминаем: ось $Oy$ — меняется $x$; ось $Ox$ — меняется $y$. «Меняется та координата, которая перпендикулярна оси».
  8. ' + +'
'); + h+=makeCard('theory','А знаешь ли ты?','5.2t', + '

Знаменитый Тадж-Махал в Индии построен с идеальной осевой симметрией. Главная ось проходит через центральный купол. Даже отражение в водоёме перед мавзолеем задумано архитектором — так симметрия удваивается! Многие природные снежинки тоже симметричны, но уже шестикратно — относительно шести осей.

'); h+='
Интерактив 1
Зеркало относительно оси
' +'
Найди координаты точки, симметричной $A$ относительно указанной оси.
' +'
Задача 1 / 6Очки: 0 / 6
' +'
' +'
$x\'=$ $y\'=$
' +'
'; + h+='
Интерактив 2
Какая ось: Ox или Oy?
' + +'
Тебе даны точка $A$ и её образ $A\'$. Определи, относительно какой оси сделано отражение.
' + +'
Вопрос 1 / 5Очки: 0 / 5
' + +'
' + +'
' + +'
'; h+=secNav('p4','final')+readBtn('p5'); box.innerHTML=h; renderMath(box); + (function(){ + var i2=0,score2=0,cur2=null; + function gen2(){ var ax=_pick([-4,-3,-2,-1,1,2,3,4]),ay=_pick([-4,-3,-2,-1,1,2,3,4]),axis=_pick(['Oy','Ox']); cur2={ax:ax,ay:ay,axis:axis,rx:axis==='Oy'?-ax:ax,ry:axis==='Oy'?ay:-ay}; } + function show2(){ if(i2>=5){ document.getElementById('p5-q2').innerHTML='Готово! '+score2+' / 5'; if(score2>=4){addXp(12,'p5-iv2');bumpProgress('p5',30);}else if(score2>=2){addXp(6,'p5-iv2');bumpProgress('p5',15);} return; } + gen2(); document.getElementById('p5-i2').textContent=i2+1; + document.getElementById('p5-q2').innerHTML='$A('+cur2.ax+';\\,'+cur2.ay+')$ и её образ $A\'('+cur2.rx+';\\,'+cur2.ry+')$. Относительно какой оси?'; renderMath(document.getElementById('p5-q2')); + document.getElementById('p5-fb2').style.display='none'; } + function ans2(axis){ if(i2>=5)return; var fb=document.getElementById('p5-fb2'); + if(axis===cur2.axis){ score2++; feedback(fb,true,'✓ Верно — ось $'+cur2.axis+'$!'); } else feedback(fb,false,'✗ Нет. Это отражение относительно оси $'+cur2.axis+'$.'); + document.getElementById('p5-s2').textContent=score2; i2++; setTimeout(show2,1400); } + document.querySelectorAll('#p5-iv2 [data-ax2]').forEach(function(b){ b.addEventListener('click',function(){ ans2(b.getAttribute('data-ax2')); }); }); show2(); + })(); + (function(){ var i=0,score=0,cur=null; function gen(){ var ax=_pick([-4,-3,-2,-1,1,2,3,4]),ay=_pick([-4,-3,-2,-1,1,2,3,4]),axis=_pick(['Oy','Ox']); cur={ax:ax,ay:ay,axis:axis,rx:axis==='Oy'?-ax:ax,ry:axis==='Oy'?ay:-ay}; } diff --git a/plans/textbooks-6/PLAN_MATH_6_ENRICH.md b/plans/textbooks-6/PLAN_MATH_6_ENRICH.md new file mode 100644 index 0000000..4362dee --- /dev/null +++ b/plans/textbooks-6/PLAN_MATH_6_ENRICH.md @@ -0,0 +1,47 @@ +# PLAN — Обогащение «Математики 6»: каждый параграф интересным + интерактивным + +> Базовый учебник готов (6 глав, движок `math6_engine.js`, `Math6` svg). Тесты 18/18. +> Цель этого этапа: сделать **каждый содержательный §** живым и увлекательным для ученика, +> который впервые изучает тему. Исполнитель — **Sonnet**, по одной главе за агент (файлы глав независимы). + +## Что добавляем в КАЖДЫЙ содержательный § (поверх уже существующего) + +У каждого § уже есть 2 интерактива + теория-карточки + шпаргалка + подсказка + глоссарий. +Sonnet **дополняет** (не ломает существующее) так, чтобы § стал интереснее: + +1. **«Где это в жизни» (хук).** Карточка `makeCard('oral', …)` или `theory`: 2–4 предложения — зачем тема нужна, где встречается (деньги, спорт, кулинария, природа, техника, игры). Цепляющее начало. +2. **Разбор примера по шагам.** Карточка `makeCard('example', …)` с **нумерованными шагами** решения (если ещё нет) — чтобы ученик видел алгоритм, а не только ответ. Можно `
` «Решение по шагам». +3. **«А знаешь ли ты?» / интересный факт.** Короткий факт/история по теме (математика, история чисел, рекорды) — `makeCard('theory', 'А знаешь ли ты?', …)` или spoiler. +4. **Минимум 2 РАБОЧИХ интерактива.** Если у § их меньше или они слабые — довести до 2 содержательных (тренажёр со счётом+XP, конструктор/демонстратор, классификатор-DnD, визуализация через `Math6`). Каждый — с обратной связью `feedback()` и начислением `addXp`/`bumpProgress`. +5. **Мини-челлендж «со звёздочкой».** Одна задача чуть сложнее/любопытнее в конце интерактивов (по желанию). + +Финалы глав (боссы) и прикладные § («Математика вокруг нас») — оставить, можно усилить 1 боссом/задачей. + +## Жёсткие правила (НЕ нарушать — иначе сломается движок/страница) + +- **Редактировать ТОЛЬКО свой файл главы** `frontend/textbooks/math_6_chN.html`. НЕ трогать `math6_engine.js`, `math6_svg.js`, `math6.css`, другие главы — это общие/чужие файлы. +- Контент § — внутри его `function buildPk(){…}`; данные — в `SIDEBARS`/`TIPS`/`GLOSSARY`; всё уже подключается через `Object.assign(window.M6, …)` в конце скрипта. **Структуру M6/порядок init НЕ менять.** +- Хелперы брать готовые (глобальные от движка): `makeCard, secNav, readBtn, feedback, renderMath, fmt, num, addXp, bumpProgress, achievement, setupSorter, confetti`; графика — `window.Math6.*` (numberLine/plane/pie/venn — только вызывать). Локальные `_ri/_pick/_kf/_round` уже есть в начале скрипта главы. +- **KaTeX: десятичная запятая — `2{,}5`** (не `2,5`). Числа считать целочисленными мантиссами (`_mant/_dec`), не float. +- **⛔ Эмодзи запрещены** — только inline SVG `.ic`. +- Каждый `buildPk` заканчивается `secNav(prev,next) + readBtn('pk')` и `box.innerHTML=…; renderMath(box);` затем навешивает обработчики. +- Русский язык, уровень 6 класса, по программе Герасимова. Не выдумывать неверную математику. + +## Само-проверка (обязательно перед завершением агента) + +1. `node --check` своего файла (через Bash — синтаксис html не проверяется, но JS внутри — нет; вместо этого ниже). +2. Прогнать общий тест: `cd backend && node -e "require('./tests/math6-page.test.js')"` — все тесты зелёные, ошибок скриптов нет. (Тест монтирует каждую главу в jsdom; если builder упал — увидишь.) +3. Если тест по своей главе падает — чинить, не оставлять сломанным. + +## Раскладка по агентам (1 глава = 1 агент Sonnet) + +| Агент | Файл | Параграфы для обогащения | +|---|---|---| +| ch1 | `math_6_ch1.html` | §1–§10 + §12 (десятичные дроби) | +| ch2 | `math_6_ch2.html` | §1–§7 + §9 (проценты, пропорции) | +| ch3 | `math_6_ch3.html` | §1–§4 (множества) | +| ch4 | `math_6_ch4.html` | §1–§9 + §11 (рациональные числа) | +| ch5 | `math_6_ch5.html` | §1–§3 + §5 (координатная плоскость) | +| ch6 | `math_6_ch6.html` | §1–§5 (наглядная геометрия) | + +После работы агентов — общий прогон тестов, ревью, коммит поимённо + push (см. [[project_math6_textbook]]).