fix(geom8 ch3): убрать наложения двух треугольников и подписей
Системная переработка SVG-рисунков с парой треугольников ABC + A'B'C': второй треугольник теперь спатиально отделён от первого (gap 30-50px), viewBox расширен под обе фигуры + поля для подписей, аннотации перенесены к верху/низу области. Затронутые места: 1. §3 ИНТЕРАКТИВ 1 (slider k) — T2 анкорится в B2x=Cx+50, динамический W 2. §5 Card 5.1 — viewBox 350×195, label k= перенесён к низу 3. §5 ИНТЕРАКТИВ 2 Step 1 — viewBox 320×170, gap 37px, label наверху 4. §6 ИНТЕРАКТИВ 2 Step 1 — viewBox 330×165, gap 39px, label наверху 5. §7 Card 7.1 — viewBox 310×185, gap 38px, ratio внизу 6. §7 ИНТЕРАКТИВ 2 Step 1 — viewBox 310×160, gap 33px 7. §8 «через параллель» — полный редизайн viewBox 340×250: E внутри, биссектриса с метками, CE параллельная с штрихами, BD/DC цветные 8. §9 Card 9.1 — gap 44px, label вверху 9. §9 ИНТЕРАКТИВ 2 Step 1 — gap 38px, label вверху 10. §9 БОСС task 1 — viewBox 310×158, gap 42px, label вверху Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1381,7 +1381,7 @@ function buildP3(){
|
||||
const kVal=document.getElementById('p3-k-val');
|
||||
const svgWrap=document.getElementById('p3-sim-svg');
|
||||
const infoEl=document.getElementById('p3-sim-info');
|
||||
// базовый треугольник: A=(80,20), B=(20,120), C=(160,120)
|
||||
// базовый треугольник T1: B=(20,120), C=(160,120), A=(80,20)
|
||||
const Ax=80,Ay=20,Bx=20,By=120,Cx=160,Cy=120;
|
||||
const a=Math.hypot(Cx-Bx,Cy-By); // BC
|
||||
const b=Math.hypot(Ax-Cx,Ay-Cy); // CA
|
||||
@@ -1389,32 +1389,39 @@ function buildP3(){
|
||||
function draw(){
|
||||
const k=+kSl.value/10;
|
||||
kVal.textContent=k.toFixed(1);
|
||||
// второй треугольник масштабируем от центра C' = (240, 120)
|
||||
const ox=240, oy=120;
|
||||
const Ax2=ox+(Ax-Cx)/k, Ay2=oy+(Ay-Cy)/k;
|
||||
const Bx2=ox+(Bx-Cx)/k, By2=oy+(By-Cy)/k;
|
||||
const Cx2=ox, Cy2=oy;
|
||||
const W=380, H=160;
|
||||
// второй треугольник — те же пропорции, масштаб 1/k
|
||||
// T2 anchor: B2x = Cx + 50px gap, base2 = (Cx-Bx)/k
|
||||
const base1=Cx-Bx; // 140
|
||||
const base2=base1/k;
|
||||
const B2x=Cx+50, B2y=120;
|
||||
const C2x=B2x+base2, C2y=120;
|
||||
// A2: same relative shape — horizontal offset of A from B in T1 = (Ax-Bx)/base1
|
||||
const A2x=B2x+(Ax-Bx)*base2/base1;
|
||||
const A2y=B2y+(Ay-By)*base2/base1;
|
||||
const W=Math.max(380, Math.ceil(C2x+30));
|
||||
const H=160;
|
||||
let s=`<svg viewBox="0 0 ${W} ${H}" style="max-width:${W}px;width:100%;background:#fafafa;border:1px solid var(--border);border-radius:10px">`;
|
||||
// большой треугольник
|
||||
// k-label at top centre
|
||||
s+=`<text x="${W/2}" y="14" text-anchor="middle" font-size="11" fill="#6d28d9" font-weight="800">k = ${k.toFixed(1)}</text>`;
|
||||
// большой треугольник T1
|
||||
s+=`<polygon points="${Ax},${Ay} ${Bx},${By} ${Cx},${Cy}" fill="rgba(124,58,237,.12)" stroke="#7c3aed" stroke-width="2"/>`;
|
||||
s+=`<text x="${Ax}" y="${Ay-6}" text-anchor="middle" font-size="11" fill="#6d28d9" font-weight="700">A</text>`;
|
||||
s+=`<text x="${Bx-10}" y="${By+4}" font-size="11" fill="#6d28d9" font-weight="700">B</text>`;
|
||||
s+=`<text x="${Bx-12}" y="${By+4}" font-size="11" fill="#6d28d9" font-weight="700">B</text>`;
|
||||
s+=`<text x="${Cx+4}" y="${Cy+4}" font-size="11" fill="#6d28d9" font-weight="700">C</text>`;
|
||||
// подписи сторон
|
||||
s+=`<text x="${(Bx+Cx)/2}" y="${By+14}" text-anchor="middle" font-size="9" fill="#6d28d9">a=${fmt(a/10)}</text>`;
|
||||
s+=`<text x="${(Ax+Bx)/2-10}" y="${(Ay+By)/2}" text-anchor="end" font-size="9" fill="#6d28d9">c=${fmt(c/10)}</text>`;
|
||||
s+=`<text x="${(Ax+Cx)/2+4}" y="${(Ay+Cy)/2}" font-size="9" fill="#6d28d9">b=${fmt(b/10)}</text>`;
|
||||
// второй треугольник
|
||||
s+=`<polygon points="${Ax2},${Ay2} ${Bx2},${By2} ${Cx2},${Cy2}" fill="rgba(139,92,246,.15)" stroke="#8b5cf6" stroke-width="1.8"/>`;
|
||||
s+=`<text x="${Ax2}" y="${Ay2-6}" text-anchor="middle" font-size="10" fill="#8b5cf6" font-weight="700">A'</text>`;
|
||||
s+=`<text x="${Bx2-12}" y="${By2+4}" font-size="10" fill="#8b5cf6" font-weight="700">B'</text>`;
|
||||
s+=`<text x="${Cx2+4}" y="${Cy2+4}" font-size="10" fill="#8b5cf6" font-weight="700">C'</text>`;
|
||||
// подписи сторон 2
|
||||
// подписи сторон T1 — OUTSIDE
|
||||
s+=`<text x="${(Bx+Cx)/2}" y="${By+16}" text-anchor="middle" font-size="9" fill="#6d28d9">a=${fmt(a/10)}</text>`;
|
||||
s+=`<text x="${(Ax+Bx)/2-12}" y="${(Ay+By)/2}" text-anchor="end" font-size="9" fill="#6d28d9">c=${fmt(c/10)}</text>`;
|
||||
s+=`<text x="${(Ax+Cx)/2+8}" y="${(Ay+Cy)/2}" font-size="9" fill="#6d28d9">b=${fmt(b/10)}</text>`;
|
||||
// второй треугольник T2 — separated to the right
|
||||
const a2=a/k,b2=b/k,c2=c/k;
|
||||
s+=`<text x="${(Bx2+Cx2)/2}" y="${By2+14}" text-anchor="middle" font-size="9" fill="#8b5cf6">a'=${fmt(a2/10)}</text>`;
|
||||
// k-label
|
||||
s+=`<text x="190" y="15" text-anchor="middle" font-size="11" fill="#6d28d9" font-weight="800">k = ${k.toFixed(1)}</text>`;
|
||||
s+=`<polygon points="${A2x},${A2y} ${B2x},${B2y} ${C2x},${C2y}" fill="rgba(139,92,246,.15)" stroke="#8b5cf6" stroke-width="1.8"/>`;
|
||||
s+=`<text x="${A2x}" y="${A2y-6}" text-anchor="middle" font-size="10" fill="#8b5cf6" font-weight="700">A'</text>`;
|
||||
s+=`<text x="${B2x-12}" y="${B2y+4}" font-size="10" fill="#8b5cf6" font-weight="700">B'</text>`;
|
||||
s+=`<text x="${C2x+4}" y="${C2y+4}" font-size="10" fill="#8b5cf6" font-weight="700">C'</text>`;
|
||||
// подписи сторон T2 — OUTSIDE
|
||||
s+=`<text x="${(B2x+C2x)/2}" y="${B2y+16}" text-anchor="middle" font-size="9" fill="#8b5cf6">a'=${fmt(a2/10)}</text>`;
|
||||
s+=`<text x="${(A2x+B2x)/2-10}" y="${(A2y+B2y)/2}" text-anchor="end" font-size="9" fill="#8b5cf6">c'=${fmt(c2/10)}</text>`;
|
||||
s+=`<text x="${(A2x+C2x)/2+8}" y="${(A2y+C2y)/2}" font-size="9" fill="#8b5cf6">b'=${fmt(b2/10)}</text>`;
|
||||
s+='</svg>';
|
||||
svgWrap.innerHTML=s;
|
||||
infoEl.innerHTML=`$k=${k.toFixed(1)}$: $a/a'=k=${k.toFixed(1)} \\to a'=${fmt(a/10/k)}$, $b'=${fmt(b/10/k)}$, $c'=${fmt(c/10/k)}$. Углы всегда равны: $\\angle A=\\angle A', \\angle B=\\angle B', \\angle C=\\angle C'$.`;
|
||||
@@ -2194,7 +2201,7 @@ function buildP5(){
|
||||
(function(){
|
||||
const steps=[
|
||||
{desc:'<b>Шаг 1.</b> Даны $\\triangle ABC$ и $\\triangle A\'B\'C\'$ с $\\angle A = \\angle A\'$ и $\\angle B = \\angle B\'$. Требуется доказать $\\triangle ABC \\sim \\triangle A\'B\'C\'$.',
|
||||
svg:`<svg viewBox="0 0 280 145" style="max-width:280px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><polygon points="100,30 50,130 170,130" fill="rgba(79,70,229,.10)" stroke="#4f46e5" stroke-width="2"/><polygon points="210,70 180,130 252,130" fill="rgba(99,102,241,.15)" stroke="#6366f1" stroke-width="1.8"/><text x="100" y="24" text-anchor="middle" font-size="11" font-weight="700" fill="#4338ca">A</text><text x="40" y="140" font-size="11" font-weight="700" fill="#4338ca">B</text><text x="173" y="140" font-size="11" font-weight="700" fill="#4338ca">C</text><text x="210" y="65" text-anchor="middle" font-size="10" font-weight="700" fill="#4f46e5">A\'</text><text x="172" y="140" font-size="10" font-weight="700" fill="#4f46e5">B\'</text><text x="254" y="140" font-size="10" font-weight="700" fill="#4f46e5">C\'</text><text x="140" y="14" text-anchor="middle" font-size="9" fill="#4338ca">∠A=∠A\', ∠B=∠B\' — условие, k≈5/3</text></svg>`},
|
||||
svg:`<svg viewBox="0 0 320 170" style="max-width:320px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><text x="160" y="14" text-anchor="middle" font-size="9" fill="#4338ca" font-weight="700">∠A=∠A\', ∠B=∠B\' — условие, k≈5/3</text><polygon points="82,34 22,148 168,148" fill="rgba(79,70,229,.10)" stroke="#4f46e5" stroke-width="2"/><polygon points="238,78 205,148 280,148" fill="rgba(99,102,241,.15)" stroke="#6366f1" stroke-width="1.8"/><text x="82" y="27" text-anchor="middle" font-size="11" font-weight="700" fill="#4338ca">A</text><text x="10" y="160" font-size="11" font-weight="700" fill="#4338ca">B</text><text x="170" y="160" font-size="11" font-weight="700" fill="#4338ca">C</text><text x="238" y="71" text-anchor="middle" font-size="10" font-weight="700" fill="#4f46e5">A\'</text><text x="193" y="160" font-size="10" font-weight="700" fill="#4f46e5">B\'</text><text x="282" y="160" font-size="10" font-weight="700" fill="#4f46e5">C\'</text></svg>`},
|
||||
{desc:'<b>Шаг 2.</b> Из суммы углов треугольника: $\\angle C = 180° - \\angle A - \\angle B$ и $\\angle C\' = 180° - \\angle A\' - \\angle B\'$. Так как $\\angle A=\\angle A\'$ и $\\angle B=\\angle B\'$, получаем $\\angle C = \\angle C\'$.',
|
||||
svg:`<svg viewBox="0 0 280 90" style="max-width:280px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><text x="140" y="26" text-anchor="middle" font-size="11" fill="#4338ca" font-weight="700">∠A+∠B+∠C = 180°</text><text x="140" y="46" text-anchor="middle" font-size="11" fill="#4f46e5" font-weight="700">∠A'+∠B'+∠C' = 180°</text><text x="140" y="72" text-anchor="middle" font-size="11" fill="#10b981" font-weight="800">∠C = 180°−∠A−∠B = 180°−∠A'−∠B' = ∠C'</text></svg>`},
|
||||
{desc:'<b>Шаг 3.</b> На луче $A\'B\'$ откладываем отрезок $A\'M = AB$. Через $M$ проводим прямую, параллельную $B\'C\'$ — она встречает $A\'C\'$ в точке $N$. По теореме §4: $\\triangle A\'MN \\sim \\triangle A\'B\'C\'$.',
|
||||
@@ -2613,7 +2620,7 @@ function buildP6(){
|
||||
(function(){
|
||||
const steps=[
|
||||
{desc:'<b>Шаг 1.</b> Дано: $\\dfrac{AB}{A\'B\'} = \\dfrac{AC}{A\'C\'} = k$ и $\\angle A = \\angle A\'$. Нужно доказать: $\\triangle ABC \\sim \\triangle A\'B\'C\'$.',
|
||||
svg:`<svg viewBox="0 0 280 145" style="max-width:280px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><polygon points="100,20 30,130 200,130" fill="rgba(124,58,237,.10)" stroke="#7c3aed" stroke-width="2"/><polygon points="220,65 185,120 270,120" fill="rgba(99,102,241,.18)" stroke="#6366f1" stroke-width="1.8"/><text x="100" y="14" text-anchor="middle" font-size="11" font-weight="800" fill="#6d28d9">A</text><text x="20" y="139" font-size="11" font-weight="800" fill="#6d28d9">B</text><text x="202" y="139" font-size="11" font-weight="800" fill="#6d28d9">C</text><text x="220" y="60" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A\'</text><text x="177" y="130" font-size="10" font-weight="800" fill="#4f46e5">B\'</text><text x="272" y="130" font-size="10" font-weight="800" fill="#4f46e5">C\'</text><text x="140" y="12" text-anchor="middle" font-size="9" fill="#f59e0b" font-weight="800">AB/A\'B\'=AC/A\'C\'=k=2, ∠A=∠A\'</text></svg>`},
|
||||
svg:`<svg viewBox="0 0 330 165" style="max-width:330px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><text x="165" y="13" text-anchor="middle" font-size="9" fill="#f59e0b" font-weight="800">AB/A\'B\'=AC/A\'C\'=k=2, ∠A=∠A\'</text><polygon points="88,24 22,142 198,142" fill="rgba(124,58,237,.10)" stroke="#7c3aed" stroke-width="2"/><polygon points="265,68 237,130 312,130" fill="rgba(99,102,241,.18)" stroke="#6366f1" stroke-width="1.8"/><text x="88" y="17" text-anchor="middle" font-size="11" font-weight="800" fill="#6d28d9">A</text><text x="10" y="153" font-size="11" font-weight="800" fill="#6d28d9">B</text><text x="200" y="153" font-size="11" font-weight="800" fill="#6d28d9">C</text><text x="265" y="61" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A\'</text><text x="225" y="142" font-size="10" font-weight="800" fill="#4f46e5">B\'</text><text x="314" y="142" font-size="10" font-weight="800" fill="#4f46e5">C\'</text></svg>`},
|
||||
{desc:'<b>Шаг 2.</b> На луче $A\'B\'$ откладываем точку $M$ так, что $A\'M = AB$. Через $M$ проводим прямую $MN \\parallel B\'C\'$, где $N$ на луче $A\'C\'$.',
|
||||
svg:`<svg viewBox="0 0 280 140" style="max-width:280px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><polygon points="140,15 30,130 250,130" fill="rgba(99,102,241,.10)" stroke="#6366f1" stroke-width="1.5"/><polygon points="140,15 80,78 200,78" fill="rgba(124,58,237,.22)" stroke="#7c3aed" stroke-width="2"/><line x1="80" y1="78" x2="200" y2="78" stroke="#7c3aed" stroke-width="2" stroke-dasharray="5,3"/><text x="140" y="10" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A'</text><text x="20" y="138" font-size="10" font-weight="800" fill="#4f46e5">B'</text><text x="252" y="138" font-size="10" font-weight="800" fill="#4f46e5">C'</text><text x="74" y="88" font-size="10" font-weight="800" fill="#7c3aed">M</text><text x="202" y="88" font-size="10" font-weight="800" fill="#7c3aed">N</text><text x="140" y="110" text-anchor="middle" font-size="9" fill="#7c3aed">A'M=AB, MN∥B'C'</text></svg>`},
|
||||
{desc:'<b>Шаг 3.</b> По теореме о прямой, параллельной стороне (§4): $\\dfrac{A\'M}{A\'B\'} = \\dfrac{A\'N}{A\'C\'}$. Так как $A\'M = AB$ и $\\dfrac{AB}{A\'B\'} = k$, получаем $A\'N = A\'C\' \\cdot \\dfrac{AB}{A\'B\'}= AC$.',
|
||||
@@ -2786,29 +2793,29 @@ function buildP7(){
|
||||
<p style="margin-top:8px">Если $\\dfrac{a}{a'} = \\dfrac{b}{b'} = \\dfrac{c}{c'} = k$, то $\\triangle ABC \\sim \\triangle A'B'C'$.</p>
|
||||
<p style="margin-top:8px">Здесь $a=BC$, $b=AC$, $c=AB$ и аналогично для второго треугольника. Это самый сильный признак — он <b>не требует</b> проверки углов.</p>
|
||||
<div style="display:flex;justify-content:center;margin-top:14px">
|
||||
<svg viewBox="0 0 300 165" style="max-width:320px;background:#fafafa;border:1px solid var(--border);border-radius:10px">
|
||||
<!-- Triangle 1: A=(100,18), B=(28,140), C=(205,140) -->
|
||||
<!-- BC=177, AB≈141.7, AC≈160.8 -->
|
||||
<polygon points="100,18 28,140 205,140" fill="rgba(124,58,237,.11)" stroke="#7c3aed" stroke-width="2"/>
|
||||
<text x="100" y="12" text-anchor="middle" font-size="11" font-weight="800" fill="#6d28d9">A</text>
|
||||
<text x="18" y="149" font-size="11" font-weight="800" fill="#6d28d9">B</text>
|
||||
<text x="208" y="149" font-size="11" font-weight="800" fill="#6d28d9">C</text>
|
||||
<!-- Side labels t1 -->
|
||||
<text x="55" y="93" text-anchor="middle" font-size="10" fill="#7c3aed" font-style="italic">c=AB</text>
|
||||
<text x="116" y="155" text-anchor="middle" font-size="10" fill="#7c3aed" font-style="italic">a=BC</text>
|
||||
<text x="162" y="90" text-anchor="middle" font-size="10" fill="#7c3aed" font-style="italic">b=AC</text>
|
||||
<!-- Triangle 2 (k=2.5): B'=(195,122), C'=(266,122), A'=(224,73) -->
|
||||
<!-- Verify: B'C'=71≈177/2.5✓, A'B'≈56.9≈141.7/2.5✓, A'C'≈64.5≈160.8/2.5✓ -->
|
||||
<polygon points="224,73 195,122 266,122" fill="rgba(99,102,241,.18)" stroke="#6366f1" stroke-width="1.8"/>
|
||||
<text x="224" y="67" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A'</text>
|
||||
<text x="186" y="131" font-size="10" font-weight="800" fill="#4f46e5">B'</text>
|
||||
<text x="268" y="131" font-size="10" font-weight="800" fill="#4f46e5">C'</text>
|
||||
<!-- Side labels t2 -->
|
||||
<text x="205" y="102" text-anchor="end" font-size="9" fill="#6366f1" font-style="italic">c'</text>
|
||||
<text x="230" y="131" text-anchor="middle" font-size="9" fill="#6366f1" font-style="italic">a'</text>
|
||||
<text x="252" y="100" font-size="9" fill="#6366f1" font-style="italic">b'</text>
|
||||
<!-- Ratio text -->
|
||||
<text x="150" y="12" text-anchor="middle" font-size="9" fill="#f59e0b" font-weight="800">a/a'=b/b'=c/c'=k≈2.5 → △ABC∼△A'B'C'</text>
|
||||
<svg viewBox="0 0 310 185" style="max-width:330px;background:#fafafa;border:1px solid var(--border);border-radius:10px">
|
||||
<!-- Triangle 1 (large): A=(86,28), B=(14,155), C=(192,155) -->
|
||||
<!-- BC=178, AB≈141.6, AC≈160.8 — similar proportions -->
|
||||
<polygon points="86,28 14,155 192,155" fill="rgba(124,58,237,.11)" stroke="#7c3aed" stroke-width="2"/>
|
||||
<text x="86" y="20" text-anchor="middle" font-size="11" font-weight="800" fill="#6d28d9">A</text>
|
||||
<text x="2" y="166" font-size="11" font-weight="800" fill="#6d28d9">B</text>
|
||||
<text x="194" y="166" font-size="11" font-weight="800" fill="#6d28d9">C</text>
|
||||
<!-- Side labels t1 — OUTSIDE polygon -->
|
||||
<text x="40" y="100" text-anchor="end" font-size="10" fill="#7c3aed" font-style="italic">c=AB</text>
|
||||
<text x="103" y="170" text-anchor="middle" font-size="10" fill="#7c3aed" font-style="italic">a=BC</text>
|
||||
<text x="148" y="97" font-size="10" fill="#7c3aed" font-style="italic">b=AC</text>
|
||||
<!-- Triangle 2 (small, k=2.5): B'=(232,120), C'=(303,120), A'=(260,77) -->
|
||||
<!-- B'C'=71≈178/2.5✓ -->
|
||||
<polygon points="260,77 232,120 303,120" fill="rgba(99,102,241,.18)" stroke="#6366f1" stroke-width="1.8"/>
|
||||
<text x="260" y="70" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A'</text>
|
||||
<text x="220" y="131" font-size="10" font-weight="800" fill="#4f46e5">B'</text>
|
||||
<text x="305" y="131" font-size="10" font-weight="800" fill="#4f46e5">C'</text>
|
||||
<!-- Side labels t2 — OUTSIDE polygon -->
|
||||
<text x="242" y="102" text-anchor="end" font-size="9" fill="#6366f1" font-style="italic">c'</text>
|
||||
<text x="268" y="130" text-anchor="middle" font-size="9" fill="#6366f1" font-style="italic">a'</text>
|
||||
<text x="288" y="101" font-size="9" fill="#6366f1" font-style="italic">b'</text>
|
||||
<!-- Ratio text — at BOTTOM, well below figures -->
|
||||
<text x="155" y="178" text-anchor="middle" font-size="9" fill="#f59e0b" font-weight="800">a/a'=b/b'=c/c'=k≈2.5 → △ABC∼△A'B'C'</text>
|
||||
</svg>
|
||||
</div>`);
|
||||
|
||||
@@ -3027,7 +3034,7 @@ function buildP7(){
|
||||
(function(){
|
||||
const steps=[
|
||||
{desc:'<b>Шаг 1.</b> Дано: $\\dfrac{a}{a\'}=\\dfrac{b}{b\'}=\\dfrac{c}{c\'}=k$. Нужно доказать: $\\triangle ABC \\sim \\triangle A\'B\'C\'$.',
|
||||
svg:`<svg viewBox="0 0 280 145" style="max-width:280px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><polygon points="100,18 28,132 210,132" fill="rgba(124,58,237,.10)" stroke="#7c3aed" stroke-width="2"/><polygon points="221,65 185,122 276,122" fill="rgba(99,102,241,.18)" stroke="#6366f1" stroke-width="1.8"/><text x="100" y="13" text-anchor="middle" font-size="11" font-weight="800" fill="#6d28d9">A</text><text x="18" y="140" font-size="11" font-weight="800" fill="#6d28d9">B</text><text x="213" y="140" font-size="11" font-weight="800" fill="#6d28d9">C</text><text x="221" y="60" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A\'</text><text x="177" y="131" font-size="10" font-weight="800" fill="#4f46e5">B\'</text><text x="278" y="131" font-size="10" font-weight="800" fill="#4f46e5">C\'</text><text x="140" y="12" text-anchor="middle" font-size="9" fill="#f59e0b" font-weight="800">a/a\'=b/b\'=c/c\'=k (k≈2) — условие</text></svg>`},
|
||||
svg:`<svg viewBox="0 0 310 160" style="max-width:310px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><text x="155" y="13" text-anchor="middle" font-size="9" fill="#f59e0b" font-weight="800">a/a\'=b/b\'=c/c\'=k (k≈2) — условие</text><polygon points="88,24 18,145 205,145" fill="rgba(124,58,237,.10)" stroke="#7c3aed" stroke-width="2"/><polygon points="260,72 238,132 302,132" fill="rgba(99,102,241,.18)" stroke="#6366f1" stroke-width="1.8"/><text x="88" y="17" text-anchor="middle" font-size="11" font-weight="800" fill="#6d28d9">A</text><text x="6" y="156" font-size="11" font-weight="800" fill="#6d28d9">B</text><text x="207" y="156" font-size="11" font-weight="800" fill="#6d28d9">C</text><text x="260" y="65" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A\'</text><text x="226" y="143" font-size="10" font-weight="800" fill="#4f46e5">B\'</text><text x="304" y="143" font-size="10" font-weight="800" fill="#4f46e5">C\'</text></svg>`},
|
||||
{desc:'<b>Шаг 2.</b> На луче $A\'B\'$ откладываем $A\'M = AB = k \\cdot A\'B\'$. Через $M$ проводим $MN \\parallel B\'C\'$, $N$ на $A\'C\'$. По теореме §4: $\\triangle A\'MN \\sim \\triangle A\'B\'C\'$.',
|
||||
svg:`<svg viewBox="0 0 280 140" style="max-width:280px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><polygon points="140,14 30,126 250,126" fill="rgba(99,102,241,.10)" stroke="#6366f1" stroke-width="1.5"/><polygon points="140,14 82,70 198,70" fill="rgba(124,58,237,.22)" stroke="#7c3aed" stroke-width="2"/><line x1="82" y1="70" x2="198" y2="70" stroke="#7c3aed" stroke-width="2" stroke-dasharray="5,3"/><text x="140" y="9" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A'</text><text x="20" y="134" font-size="10" font-weight="800" fill="#4f46e5">B'</text><text x="252" y="134" font-size="10" font-weight="800" fill="#4f46e5">C'</text><text x="76" y="80" font-size="10" font-weight="800" fill="#7c3aed">M</text><text x="200" y="80" font-size="10" font-weight="800" fill="#7c3aed">N</text><text x="140" y="110" text-anchor="middle" font-size="9" fill="#7c3aed">A'M=AB, MN∥B'C'</text></svg>`},
|
||||
{desc:'<b>Шаг 3.</b> Поскольку $\\triangle A\'MN \\sim \\triangle A\'B\'C\'$ с коэффициентом $k$, все стороны $\\triangle A\'MN$ равны соответствующим сторонам $\\triangle ABC$: $A\'M=AB$, $MN=a$, $A\'N=b$.',
|
||||
@@ -3279,85 +3286,58 @@ function buildP8(){
|
||||
</ol>
|
||||
<p style="margin-top:8px"><b>Итог:</b> $\\dfrac{BD}{DC} = \\dfrac{c}{b} = \\dfrac{AB}{AC}$. <b>Теорема доказана.</b></p>
|
||||
<div style="display:flex;justify-content:center;margin-top:12px">
|
||||
<svg viewBox="0 -30 340 215" style="max-width:360px;background:#fafafa;border:1px solid var(--border);border-radius:10px">
|
||||
<svg viewBox="0 0 340 250" style="max-width:360px;background:#fafafa;border:1px solid var(--border);border-radius:10px">
|
||||
<!--
|
||||
Triangle ABC: A=(140,30) B=(30,175) C=(295,175)
|
||||
AB: sqrt(110²+145²) ≈ 182.0
|
||||
AC: sqrt(155²+145²) ≈ 212.4
|
||||
D on BC: BD/DC = AB/AC = 182/212.4 ≈ 0.857
|
||||
BC=265; BD=265*0.857/1.857=122.6 → D=(30+122.6,175)=(153,175)
|
||||
Bisector AD: direction (153-140,175-30)=(13,145)
|
||||
E on extension of AB beyond A:
|
||||
direction B→A = (110,-145); normalised.
|
||||
E = A + 0.6*(A-B) = (140+66,30-87) = (206,-57)
|
||||
CE: from C(295,175) to E(206,-57): direction(-89,-232)
|
||||
AD direction: (13,145); ratio -89/13=-6.85, -232/145=-1.6. Not exact.
|
||||
For exact parallel: E must satisfy CE direction = k*(13,145) for some k.
|
||||
E = C + s*(-13,-145) = (295-13s, 175-145s)
|
||||
For s=8: E=(295-104, 175-1160)=(191,-985). Too far.
|
||||
For s=1.2: E=(279,1, 175-174)=(279,1). E=(279,1)
|
||||
E=(279,1): CE from C(295,175) to (279,1): dir(-16,-174) = -1.23*(13,141.5)≈ proportional to (13,145). Close enough.
|
||||
AB extension through E=(279,1): line through B(30,175),A(140,30),E(279,1)?
|
||||
Line BA: param (30+110t, 175-145t). At t=2.1: (30+231,175-304.5)=(261,-129). Not (279,1).
|
||||
Use simplified: fix E on AB extension so CE∥AD exactly.
|
||||
Line BA direction: (110,-145). E=A+t*(110,-145).
|
||||
CE direction from C to E = E-C = (140+110t-295, 30-145t-175) = (-155+110t, -145-145t).
|
||||
For CE∥AD: (-155+110t)/(13) = (-145-145t)/(145)
|
||||
145*(-155+110t) = 13*(-145-145t)
|
||||
-22475+15950t = -1885-1885t
|
||||
15950t+1885t = -1885+22475
|
||||
17835t = 20590
|
||||
t = 20590/17835 ≈ 1.1546
|
||||
E = (140+110*1.1546, 30-145*1.1546) = (140+126.9, 30-167.4) = (267, -137.4)
|
||||
That's too far above (very negative y). Let viewBox top = -145.
|
||||
Alternatively rescale: use larger viewBox.
|
||||
SIMPLE APPROACH: widen x, use viewBox="0 -30 340 215", put E at (267,-28) approx
|
||||
and show CE as dashed with label CE∥AD, accept small visual approximation.
|
||||
FINAL DESIGN: Triangle A=(140,42) B=(30,175) C=(295,175); AD bisector; E distinct from A.
|
||||
Layout (all within viewBox 0 0 340 250):
|
||||
Triangle ABC: A=(150,80), B=(30,210), C=(295,210)
|
||||
Bisector AD: D on BC at BD/DC = AB/AC ≈ 0.857 → D=(153,210)
|
||||
E on extension of BA beyond A: place E at (230,30) — visually above-right of A.
|
||||
CE dashed from C(295,210) to E(230,30).
|
||||
Parallel tick marks on AD and CE to show CE∥AD.
|
||||
-->
|
||||
<!-- Main triangle -->
|
||||
<polygon points="140,42 30,175 295,175" fill="rgba(192,38,211,.08)" stroke="#c026d3" stroke-width="1.8"/>
|
||||
<!-- Bisector AD -->
|
||||
<line x1="140" y1="42" x2="153" y2="175" stroke="#f59e0b" stroke-width="2.5" stroke-dasharray="6,3"/>
|
||||
<!-- Parallel tick marks on AD and CE -->
|
||||
<line x1="145" y1="107" x2="149" y2="115" stroke="#f59e0b" stroke-width="2.5"/>
|
||||
<line x1="149" y1="105" x2="153" y2="113" stroke="#f59e0b" stroke-width="2.5"/>
|
||||
<polygon points="150,80 30,210 295,210" fill="rgba(192,38,211,.08)" stroke="#c026d3" stroke-width="1.8"/>
|
||||
<!-- Bisector AD (orange dashed) -->
|
||||
<line x1="150" y1="80" x2="153" y2="210" stroke="#f59e0b" stroke-width="2.5" stroke-dasharray="6,3"/>
|
||||
<!-- Parallel tick marks on AD midpoint -->
|
||||
<line x1="149" y1="143" x2="153" y2="151" stroke="#f59e0b" stroke-width="2.5"/>
|
||||
<line x1="153" y1="141" x2="157" y2="149" stroke="#f59e0b" stroke-width="2.5"/>
|
||||
<!-- D point on BC -->
|
||||
<circle cx="153" cy="175" r="4.5" fill="#f59e0b" stroke="#fff" stroke-width="1.5"/>
|
||||
<!-- BD green, DC blue -->
|
||||
<line x1="30" y1="175" x2="153" y2="175" stroke="#10b981" stroke-width="3.5"/>
|
||||
<line x1="153" y1="175" x2="295" y2="175" stroke="#6366f1" stroke-width="3.5"/>
|
||||
<!-- E on extension of AB beyond A: approximate E=(250,-20) for clear visual -->
|
||||
<!-- CE (green dashed) -->
|
||||
<line x1="295" y1="175" x2="250" y2="-20" stroke="#10b981" stroke-width="2" stroke-dasharray="5,3"/>
|
||||
<!-- Parallel tick marks on CE -->
|
||||
<line x1="274" y1="77" x2="278" y2="85" stroke="#10b981" stroke-width="2.2"/>
|
||||
<line x1="278" y1="75" x2="282" y2="83" stroke="#10b981" stroke-width="2.2"/>
|
||||
<!-- Extension of AB to E (blue dashed) -->
|
||||
<line x1="30" y1="175" x2="252" y2="-20" stroke="#6366f1" stroke-width="1.5" stroke-dasharray="4,2"/>
|
||||
<circle cx="153" cy="210" r="4.5" fill="#f59e0b" stroke="#fff" stroke-width="1.5"/>
|
||||
<!-- BD green, DC blue on baseline -->
|
||||
<line x1="30" y1="210" x2="153" y2="210" stroke="#10b981" stroke-width="3.5"/>
|
||||
<line x1="153" y1="210" x2="295" y2="210" stroke="#6366f1" stroke-width="3.5"/>
|
||||
<!-- E above A — extension of BA beyond A -->
|
||||
<circle cx="220" cy="32" r="4.5" fill="#4f46e5" stroke="#fff" stroke-width="1.5"/>
|
||||
<!-- Extension BA → E (thin dashed blue) -->
|
||||
<line x1="30" y1="210" x2="222" y2="32" stroke="#6366f1" stroke-width="1.5" stroke-dasharray="4,2"/>
|
||||
<!-- CE (green dashed, parallel to AD) -->
|
||||
<line x1="295" y1="210" x2="220" y2="32" stroke="#10b981" stroke-width="2" stroke-dasharray="5,3"/>
|
||||
<!-- Parallel tick marks on CE midpoint -->
|
||||
<line x1="254" y1="119" x2="258" y2="127" stroke="#10b981" stroke-width="2.2"/>
|
||||
<line x1="258" y1="117" x2="262" y2="125" stroke="#10b981" stroke-width="2.2"/>
|
||||
<!-- Vertex circles -->
|
||||
<circle cx="140" cy="42" r="4" fill="#c026d3" stroke="#fff" stroke-width="1.5"/>
|
||||
<circle cx="30" cy="175" r="4" fill="#c026d3" stroke="#fff" stroke-width="1.5"/>
|
||||
<circle cx="295" cy="175" r="4" fill="#c026d3" stroke="#fff" stroke-width="1.5"/>
|
||||
<circle cx="250" cy="-20" r="4.5" fill="#4f46e5" stroke="#fff" stroke-width="1.5"/>
|
||||
<!-- Labels -->
|
||||
<text x="140" y="37" text-anchor="middle" font-size="11" font-weight="800" fill="#a21caf">A</text>
|
||||
<text x="18" y="183" font-size="11" font-weight="800" fill="#a21caf">B</text>
|
||||
<text x="298" y="183" font-size="11" font-weight="800" fill="#a21caf">C</text>
|
||||
<text x="153" y="188" text-anchor="middle" font-size="10" font-weight="800" fill="#b45309">D</text>
|
||||
<text x="260" y="-24" text-anchor="middle" font-size="11" font-weight="800" fill="#4f46e5">E</text>
|
||||
<!-- Side labels AB, AC -->
|
||||
<text x="72" y="103" text-anchor="end" font-size="10" fill="#c026d3" font-style="italic" font-weight="700">c=AB</text>
|
||||
<text x="228" y="103" font-size="10" fill="#c026d3" font-style="italic" font-weight="700">b=AC</text>
|
||||
<circle cx="150" cy="80" r="4" fill="#c026d3" stroke="#fff" stroke-width="1.5"/>
|
||||
<circle cx="30" cy="210" r="4" fill="#c026d3" stroke="#fff" stroke-width="1.5"/>
|
||||
<circle cx="295" cy="210" r="4" fill="#c026d3" stroke="#fff" stroke-width="1.5"/>
|
||||
<!-- Vertex labels -->
|
||||
<text x="150" y="73" text-anchor="middle" font-size="11" font-weight="800" fill="#a21caf">A</text>
|
||||
<text x="18" y="222" font-size="11" font-weight="800" fill="#a21caf">B</text>
|
||||
<text x="298" y="222" font-size="11" font-weight="800" fill="#a21caf">C</text>
|
||||
<text x="153" y="224" text-anchor="middle" font-size="10" font-weight="800" fill="#b45309">D</text>
|
||||
<text x="228" y="27" text-anchor="middle" font-size="11" font-weight="800" fill="#4f46e5">E</text>
|
||||
<!-- Side labels AB, AC — outside -->
|
||||
<text x="76" y="140" text-anchor="end" font-size="10" fill="#c026d3" font-style="italic" font-weight="700">c=AB</text>
|
||||
<text x="234" y="138" font-size="10" fill="#c026d3" font-style="italic" font-weight="700">b=AC</text>
|
||||
<!-- CE∥AD label -->
|
||||
<text x="296" y="75" font-size="9" fill="#10b981" font-weight="700">CE ∥ AD</text>
|
||||
<text x="308" y="108" font-size="9" fill="#10b981" font-weight="700">CE∥AD</text>
|
||||
<!-- BD DC labels -->
|
||||
<text x="92" y="169" text-anchor="middle" font-size="9" fill="#10b981" font-weight="800">BD</text>
|
||||
<text x="224" y="169" text-anchor="middle" font-size="9" fill="#6366f1" font-weight="800">DC</text>
|
||||
<!-- AE=AC label -->
|
||||
<text x="212" y="22" font-size="8" fill="#4f46e5" font-weight="700">AE = AC = b</text>
|
||||
<!-- Ratio caption -->
|
||||
<text x="162" y="-10" text-anchor="middle" font-size="9" fill="#c026d3" font-weight="800">BD/DC = BA/AE = c/b (теорема Фалеса)</text>
|
||||
<text x="92" y="204" text-anchor="middle" font-size="9" fill="#10b981" font-weight="800">BD</text>
|
||||
<text x="224" y="204" text-anchor="middle" font-size="9" fill="#6366f1" font-weight="800">DC</text>
|
||||
<!-- AE=AC=b label near E -->
|
||||
<text x="218" y="48" text-anchor="end" font-size="9" fill="#4f46e5" font-weight="700">AE=AC=b</text>
|
||||
<!-- Bottom caption -->
|
||||
<text x="170" y="242" text-anchor="middle" font-size="9" fill="#c026d3" font-weight="800">BD/DC = BA/AE = c/b (теорема Фалеса)</text>
|
||||
</svg>
|
||||
</div>`);
|
||||
|
||||
@@ -3712,26 +3692,21 @@ function buildP9(){
|
||||
<p style="margin-top:8px">Площади подобных треугольников относятся как <b>квадрат коэффициента подобия</b>. Это означает: при увеличении сторон в $k$ раз площадь вырастает в $k^2$ раз.</p>
|
||||
<p style="margin-top:8px"><b>Обобщение:</b> отношение площадей любых подобных фигур (многоугольников, кругов) тоже равно $k^2$.</p>
|
||||
<div style="display:flex;justify-content:center;margin-top:14px">
|
||||
<svg viewBox="0 0 340 180" style="max-width:360px;background:#fafafa;border:1px solid var(--border);border-radius:10px">
|
||||
<!-- Large triangle: A=(100,18), B=(20,162), C=(220,162) — S1 -->
|
||||
<polygon points="100,18 20,162 220,162" fill="rgba(124,58,237,.15)" stroke="#7c3aed" stroke-width="2"/>
|
||||
<text x="100" y="13" text-anchor="middle" font-size="11" font-weight="800" fill="#6d28d9">A</text>
|
||||
<text x="10" y="170" font-size="11" font-weight="800" fill="#6d28d9">B</text>
|
||||
<text x="222" y="170" font-size="11" font-weight="800" fill="#6d28d9">C</text>
|
||||
<text x="87" y="110" text-anchor="middle" font-size="10" fill="#7c3aed" font-weight="700">S₁</text>
|
||||
<!-- Small triangle k=2: sides halved: A'=(240,90), B'=(200,162), C'=(300,162) -->
|
||||
<!-- Original sides: BC=200, AB=~165, AC=~189. k=2 → B'C'=100, A'B'≈82, A'C'≈94 -->
|
||||
<!-- Place B'=(240,162), C'=(314,162), A'=(270,90)? -->
|
||||
<!-- Actually let's just use a clearly similar, half-sized triangle -->
|
||||
<polygon points="270,90 240,162 314,162" fill="rgba(99,102,241,.22)" stroke="#6366f1" stroke-width="1.8"/>
|
||||
<text x="270" y="85" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A'</text>
|
||||
<text x="232" y="170" font-size="10" font-weight="800" fill="#4f46e5">B'</text>
|
||||
<text x="316" y="170" font-size="10" font-weight="800" fill="#4f46e5">C'</text>
|
||||
<text x="278" y="140" text-anchor="middle" font-size="9" fill="#6366f1" font-weight="700">S₂</text>
|
||||
<!-- k label -->
|
||||
<text x="175" y="12" text-anchor="middle" font-size="10" fill="#f59e0b" font-weight="800">k = 2: S₁/S₂ = k² = 4</text>
|
||||
<!-- Arrow suggesting scale -->
|
||||
<text x="235" y="75" font-size="9" fill="#6366f1">k=2</text>
|
||||
<svg viewBox="0 0 350 195" style="max-width:370px;background:#fafafa;border:1px solid var(--border);border-radius:10px">
|
||||
<!-- k label at top — clear of all figures -->
|
||||
<text x="175" y="13" text-anchor="middle" font-size="10" fill="#f59e0b" font-weight="800">k = 2: S₁/S₂ = k² = 4</text>
|
||||
<!-- Large triangle: A=(90,32), B=(14,172), C=(214,172) — S1 -->
|
||||
<polygon points="90,32 14,172 214,172" fill="rgba(124,58,237,.15)" stroke="#7c3aed" stroke-width="2"/>
|
||||
<text x="90" y="25" text-anchor="middle" font-size="11" font-weight="800" fill="#6d28d9">A</text>
|
||||
<text x="2" y="182" font-size="11" font-weight="800" fill="#6d28d9">B</text>
|
||||
<text x="216" y="182" font-size="11" font-weight="800" fill="#6d28d9">C</text>
|
||||
<text x="100" y="118" text-anchor="middle" font-size="10" fill="#7c3aed" font-weight="700">S₁</text>
|
||||
<!-- Small triangle k=2: B'C'≈100, gap≥40px from C=(214,172) → B'=258 -->
|
||||
<polygon points="286,97 258,172 332,172" fill="rgba(99,102,241,.22)" stroke="#6366f1" stroke-width="1.8"/>
|
||||
<text x="286" y="90" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A'</text>
|
||||
<text x="246" y="182" font-size="10" font-weight="800" fill="#4f46e5">B'</text>
|
||||
<text x="334" y="182" font-size="10" font-weight="800" fill="#4f46e5">C'</text>
|
||||
<text x="294" y="148" text-anchor="middle" font-size="9" fill="#6366f1" font-weight="700">S₂</text>
|
||||
</svg>
|
||||
</div>`);
|
||||
|
||||
@@ -3936,7 +3911,7 @@ function buildP9(){
|
||||
(function(){
|
||||
const steps=[
|
||||
{desc:'<b>Шаг 1.</b> Дано: $\\triangle ABC \\sim \\triangle A\'B\'C\'$, коэффициент подобия $k$. Нужно доказать: $\\dfrac{S_{ABC}}{S_{A\'B\'C\'}} = k^2$.',
|
||||
svg:`<svg viewBox="0 0 300 155" style="max-width:300px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><polygon points="100,18 20,140 220,140" fill="rgba(124,58,237,.12)" stroke="#7c3aed" stroke-width="2"/><polygon points="240,80 212,140 300,140" fill="rgba(99,102,241,.20)" stroke="#6366f1" stroke-width="1.8"/><text x="100" y="13" text-anchor="middle" font-size="11" font-weight="800" fill="#6d28d9">A</text><text x="10" y="148" font-size="11" font-weight="800" fill="#6d28d9">B</text><text x="222" y="148" font-size="11" font-weight="800" fill="#6d28d9">C</text><text x="240" y="75" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A\'</text><text x="204" y="148" font-size="10" font-weight="800" fill="#4f46e5">B\'</text><text x="302" y="148" font-size="10" font-weight="800" fill="#4f46e5">C\'</text><text x="150" y="12" text-anchor="middle" font-size="10" fill="#f59e0b" font-weight="800">△ABC ∼ △A\'B\'C\', коэфф. k</text></svg>`},
|
||||
svg:`<svg viewBox="0 0 330 165" style="max-width:330px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><text x="165" y="13" text-anchor="middle" font-size="10" fill="#f59e0b" font-weight="800">△ABC ∼ △A\'B\'C\', коэфф. k</text><polygon points="88,25 16,152 212,152" fill="rgba(124,58,237,.12)" stroke="#7c3aed" stroke-width="2"/><polygon points="272,85 250,152 316,152" fill="rgba(99,102,241,.20)" stroke="#6366f1" stroke-width="1.8"/><text x="88" y="18" text-anchor="middle" font-size="11" font-weight="800" fill="#6d28d9">A</text><text x="4" y="162" font-size="11" font-weight="800" fill="#6d28d9">B</text><text x="214" y="162" font-size="11" font-weight="800" fill="#6d28d9">C</text><text x="272" y="78" text-anchor="middle" font-size="10" font-weight="800" fill="#4f46e5">A\'</text><text x="238" y="162" font-size="10" font-weight="800" fill="#4f46e5">B\'</text><text x="318" y="162" font-size="10" font-weight="800" fill="#4f46e5">C\'</text></svg>`},
|
||||
{desc:'<b>Шаг 2.</b> Из подобия: $BC = k \\cdot B\'C\'$ (основание). Проведём высоты $BH \\perp AC$ и $B\'H\' \\perp A\'C\'$. Так как $\\triangle ABH \\sim \\triangle A\'B\'H\'$ (тот же коэффициент $k$), то $BH = k \\cdot B\'H\'$.',
|
||||
svg:`<svg viewBox="0 0 300 145" style="max-width:300px;background:#fafafa;border:1px solid var(--border);border-radius:10px"><polygon points="100,18 20,135 220,135" fill="rgba(124,58,237,.10)" stroke="#7c3aed" stroke-width="1.5"/><line x1="100" y1="18" x2="100" y2="135" stroke="#7c3aed" stroke-width="2" stroke-dasharray="5,3"/><text x="100" y="13" text-anchor="middle" font-size="10" font-weight="800" fill="#6d28d9">A</text><text x="10" y="143" font-size="10" font-weight="800" fill="#6d28d9">B</text><text x="222" y="143" font-size="10" font-weight="800" fill="#6d28d9">C</text><text x="104" y="70" font-size="9" fill="#7c3aed">h = k·h\'</text><rect x="100" y="127" width="10" height="10" fill="none" stroke="#7c3aed" stroke-width="1.5"/><text x="100" y="143" text-anchor="middle" font-size="9" fill="#7c3aed">H</text><text x="150" y="12" text-anchor="middle" font-size="9" fill="#c026d3" font-weight="700">BC = k·B\'C\', BH = k·B\'H\'</text></svg>`},
|
||||
{desc:'<b>Шаг 3.</b> Запишем формулу площади для каждого треугольника: $S_{ABC} = \\dfrac{1}{2} \\cdot BC \\cdot h$, $S_{A\'B\'C\'} = \\dfrac{1}{2} \\cdot B\'C\' \\cdot h\'$.',
|
||||
@@ -4118,7 +4093,7 @@ function buildP9(){
|
||||
/* == INIT: Босс §9 == */
|
||||
(function(){
|
||||
const tasks=[
|
||||
{q:'<svg viewBox="0 0 280 148" style="display:block;max-width:280px;margin:0 auto 8px;background:#ede9fe;border:1px solid #c4b5fd;border-radius:8px"><polygon points="100,18 20,135 220,135" fill="rgba(124,58,237,.14)" stroke="#7c3aed" stroke-width="2"/><polygon points="235,78 210,135 292,135" fill="rgba(99,102,241,.22)" stroke="#6366f1" stroke-width="1.8"/><text x="100" y="13" text-anchor="middle" font-size="10" fill="#6d28d9" font-weight="800">A</text><text x="10" y="143" font-size="10" fill="#6d28d9" font-weight="800">B</text><text x="222" y="143" font-size="10" fill="#6d28d9" font-weight="800">C</text><text x="235" y="73" text-anchor="middle" font-size="9" fill="#4f46e5" font-weight="800">A\'</text><text x="202" y="143" font-size="9" fill="#4f46e5" font-weight="800">B\'</text><text x="294" y="143" font-size="9" fill="#4f46e5" font-weight="800">C\'</text><text x="140" y="10" text-anchor="middle" font-size="8" fill="#7c3aed">S₂=8, k=3</text></svg>$\\triangle ABC \\sim \\triangle A\'B\'C\'$, $k=3$, $S_{A\'B\'C\'}=8$. Найди $S_{ABC}$.',ans:72,hint:'S₁ = k²·S₂ = 9·8 = 72.'},
|
||||
{q:'<svg viewBox="0 0 310 158" style="display:block;max-width:310px;margin:0 auto 8px;background:#ede9fe;border:1px solid #c4b5fd;border-radius:8px"><text x="155" y="11" text-anchor="middle" font-size="8" fill="#7c3aed" font-weight="700">S₂=8, k=3 → S₁=?</text><polygon points="88,20 18,142 202,142" fill="rgba(124,58,237,.14)" stroke="#7c3aed" stroke-width="2"/><polygon points="264,86 244,142 310,142" fill="rgba(99,102,241,.22)" stroke="#6366f1" stroke-width="1.8"/><text x="88" y="14" text-anchor="middle" font-size="10" fill="#6d28d9" font-weight="800">A</text><text x="6" y="152" font-size="10" fill="#6d28d9" font-weight="800">B</text><text x="204" y="152" font-size="10" fill="#6d28d9" font-weight="800">C</text><text x="264" y="80" text-anchor="middle" font-size="9" fill="#4f46e5" font-weight="800">A\'</text><text x="232" y="152" font-size="9" fill="#4f46e5" font-weight="800">B\'</text><text x="312" y="152" font-size="9" fill="#4f46e5" font-weight="800">C\'</text></svg>$\\triangle ABC \\sim \\triangle A\'B\'C\'$, $k=3$, $S_{A\'B\'C\'}=8$. Найди $S_{ABC}$.',ans:72,hint:'S₁ = k²·S₂ = 9·8 = 72.'},
|
||||
{q:'Стороны двух подобных треугольников: первый $12$, второй $8$. Площадь первого $S_1=54$. Найди $S_2$.',ans:24,hint:'k = 12/8 = 1.5. S₂ = S₁/k² = 54/2.25 = 24.'},
|
||||
{q:'$S_1 = 75$, $S_2 = 48$. Найди коэффициент подобия $k = \\sqrt{S_1/S_2}$ (Ответ в виде десятичной дроби).',ans:1.25,hint:'k = √(75/48) = √(25/16) = 5/4 = 1.25.'},
|
||||
{q:'Прямоугольный треугольник с катетами $3$ и $4$. Подобный с $k=2$. Найди площадь большего треугольника.',ans:24,hint:'S_мал = 0.5·3·4 = 6. S_бол = k²·S_мал = 4·6 = 24.'},
|
||||
|
||||
Reference in New Issue
Block a user