分数约分练习
几何画板及绘图内容加载中,请稍等……
GeoGebra互动练习材料,通过多种题型帮助学生掌握分数约分技能。核心数学概念包括:找最大公约数、判断分数是否可约分、理解约分不改变分数值。构造要点:利用Textfield输入框实现答案提交,结合CountIf、If等命令进行答案判定,使用Sequence生成数列供学生选择,并配合LaTeX显示数学符号。涉及listZähler(分子列表)、listNenner(分母列表)等对象,通过durchschnittTeiler(最大公约数)判断能否约分。适合五年级至六年级学生使用,也可用于复习分数运算的课堂活动。
GeoGebra 命令及参数
Intersection(DivisorsList[nenner2], DivisorsList[zaehler2]) → durchschnittTeilerCircle(MidPoint, pointKreis1) → kreis1Join({{"$\textsf{\vphantom{Äg}\phantom{=}}$"}, Sequence[(("$\textsf{\vphantom{Äg}" * AufgabenText(i)) * "}$"), i, 1, CountIf[x ≠ "" ∨ x ≠ 0, AufgabenText]]}) → LDP1CountIf(x ≠ 0, durchschnittTeiler) → anzahlTeilerIf(¬recSplit, (x(pointAreaLeft2), y(pointAreaLeft4)), pointAreaLeft4 + (((If[zaehler2 > nenner2 / 2, zaehler2 - nenner2 / 2, zaehler2] * 2) * dxRectangle / nenner2), 0)) → pointAreaLeft3Sequence(Random[2, 12], i, 1, 100) → randomNenner, {9, 6, 10, 4, 12, 4, 5, 2, 5, 3, 2, 6, 9, 5, 10, 7, 7, 2, 10, 10, 6, 4, 7, 7, 5, 4, 4, 2, 3, 6, 7, 7, 4, 7, 7, 4, 7, 12, 5, 2, 3, 5, 6, 2, 10, 3, 11, 7, 3, 9, 10, 10, 6, 6, 10, 5, 7, 8, 2, 12, 8, 11, 8, 7, 10, 4, 12, 5, 5, 4, 5, 10, 12, 6, 4, 8, 8, 10, 5, 2, 4, 7, 4, 7, 2, 9, 10, 2, 9, 5, 12, 5, 4, 9, 12, 5, 9, 8, 4, 4}Sequence(Random[2, nenner2 - 1], i, 1, 100) → randomZaehler, {6, 6, 2, 3, 2, 4, 7, 5, 5, 5, 2, 4, 5, 3, 6, 2, 2, 6, 5, 4, 7, 4, 3, 7, 5, 6, 2, 7, 4, 2, 5, 5, 6, 2, 5, 5, 5, 5, 5, 5, 5, 7, 4, 6, 2, 5, 7, 5, 4, 7, 7, 3, 3, 7, 3, 3, 2, 3, 7, 4, 6, 2, 7, 5, 4, 3, 4, 6, 3, 6, 3, 3, 4, 2, 7, 7, 7, 7, 5, 3, 6, 2, 3, 3, 7, 4, 4, 5, 6, 2, 5, 3, 3, 5, 3, 4, 3, 2, 5, 3}Sequence(I + ((i * widthNennerBar / 12) * (1, 0)), i, 1, 12) → allowedPositionsNennerBarPoint(allowedPositionsNennerBar) → PNennerCircle(M, B) → cSegment(M, M + (Radius[c] * (0, 1))) → fVector(F, G) → uSegment(H, H + (widthZaehlerBar * (1, 0))) → gSegment(I, I + (widthNennerBar * (1, 0))) → hSequence(H + ((i * widthZaehlerBar / 12) * (1, 0)), i, 0, nenner2) → allowedPositionsZaehlerBarPoint(allowedPositionsZaehlerBar) → PZaehlerSequence(Rotate[f, ((i * 2) * pi / nenner2), M], i, 0, nenner2 - 1) → listAreaLeft_{1}Sequence(CircleSector[MidPoint, Rotate[KreisOben, (((-(i + 1)) * 2) * pi / nenner2), MidPoint], Rotate[KreisOben, (((-i) * 2) * pi / nenner2) - 0.0001, MidPoint]], i, 0, zaehler2 - 1) → listAreaLeftCircleSequence(Random[1, zaehler2 - 1], i, 1, 100) → randomSubtrahend, {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}Center(sektor12v1) → M12v1Center(sektor12v2) → M12v2Center(sektor12v3) → M12v3Center(sektor12v4) → M12v4Center(sektor12v5) → M12v5Center(sektor12v6) → M12v6Center(sektor12v7) → M12v7Center(sektor12v8) → M12v8Center(sektor12v9) → M12v9Center(sektor12v10) → M12v10Center(sektor12v11) → M12v11Center(sektor12v12) → M12v12Textfield(input1) → Eingabefeld1Textfield(input2) → Eingabefeld2Join({{"$\textsf{\vphantom{Äg}Wähle aus!}$"}, Sequence[(("$\textsf{\vphantom{Äg}" * AufgabenText(i)) * "}$"), i, 1, CountIf[x ≠ "" ∨ x ≠ 0, AufgabenText]]}) → LDP1_{1}Join({{"$\textsf{\vphantom{Äg}Wähle aus!}$"}, Sequence[(("$\textsf{\vphantom{Äg}" * AufgabenText(i)) * "}$"), i, 1, CountIf[x ≠ "" ∨ x ≠ 0, AufgabenText]]}) → LDP2Point(xAxis) → JOrthogonalLine(J, xAxis) → iPoint(xAxis) → KLineBisector(K, J) → jTranslate({listAreaLeftCircle}, (dxBruch2, 0)) → showBruch201Sequence(Rotate[f, ((i * 2) * pi / ((verfeinerung * nenner2))), M], i, 0, (verfeinerung * nenner2) - 1) → l3Translate({l3}, (dxBruch2, 0)) → showBruch202Translate({c, listAreaLeft_{1}}, (dxBruch2, 0)) → showBruch203LaTeX(step, true, true) → Text5CircleArc(O, N, PosBogerl) → bogerl11Point(bogerl11) → pointBogerl1Vector(pointBogerl1, N + (0.1 * Vector[pointBogerl1, N])) → bogerl1pfeilOrthogonalLine(Q, yAxis) → kSequence(7) → listStepsMin(listSteps) → MinMax(listSteps) → MaxSegment(pointFrame3, pointFrame2) → lineLeftHorizontalSegment(pointFrame2, pointFrame1) → lineLeftVerticalJoin({Sequence[Segment[Translate[pointFrame2, (i * If[nenner2 ≟ 2, (i * dxRectangle / nenner2), ((dxRectangle * If[Mod[nenner2, 2] ≟ 0, 2, 1] / nenner2), 0)])], Translate[pointFrame1, (i * If[nenner2 ≟ 2, (i * dxRectangle / nenner2), ((dxRectangle * If[Mod[nenner2, 2] ≟ 0, 2, 1] / nenner2), 0)])]], i, 0, (nenner2 * If[Mod[nenner2, 2] ≟ 0, 0.5, 1])], Sequence[Segment[Translate[pointFrame3, (i * If[Mod[nenner2, 2] ≟ 0 ∧ nenner2 ≠ 2, (0, dyRectangle / 2), (0, dyRectangle)])], Translate[pointFrame2, (i * If[Mod[nenner2, 2] ≟ 0 ∧ nenner2 ≠ 2, (0, dyRectangle / 2), (0, dyRectangle)])]], i, 0, If[Mod[nenner2, 2] ≟ 0 ∧ nenner2 ≠ 2, 2, 1]]}) → listLeftLinesVerticalJoin({{lineLeftHorizontal, lineLeftVertical}, {Segment[Translate[pointFrame3, (0, dyRectangle)], Translate[pointFrame2, (0, dyRectangle)]]}, {Segment[Translate[pointFrame2, (dxRectangle, 0)], Translate[pointFrame1, (dxRectangle, 0)]]}}) → listFrameLeftTranslate(listFrameLeft, (dxShift, 0)) → listFrameRightTranslate(listAreaLeft, (dxShift, 0)) → listAreaRightIntersection(DivisorsList[zaehler2], DivisorsList[nenner2]) → l1Join({Sequence[Translate[Segment[Translate[pointFrame2, (dxShift, 0)], Translate[pointFrame1, (dxShift, 0)]], (i * If[nenner3 ≟ 2, (i * dxRectangle / nenner3), ((dxRectangle * If[Mod[nenner3, 2] ≟ 0, 2, 1] / nenner3), 0)])], i, 0, (nenner3 * If[Mod[nenner3, 2] ≟ 0, 0.5, 1])], Sequence[Translate[Segment[Translate[pointFrame3, (dxShift, 0)], Translate[pointFrame2, (dxShift, 0)]], (i * If[Mod[nenner3, 2] ≟ 0 ∧ nenner3 ≠ 2, (0, dyRectangle / 2), (0, dyRectangle)])], i, 0, If[Mod[nenner3, 2] ≟ 0 ∧ nenner3 ≠ 2, 2, 1]]}) → l4If(¬recSplit2, (x(pointAreaRight2), y(pointAreaRight4)), pointAreaRight4 + (((If[zaehler3 > nenner3 / 2, zaehler3 - nenner3 / 2, zaehler3] * 2) * dxRectangle / nenner3), 0)) → pointAreaRight3OrthogonalLine(L, yAxis) → lMirror(bogerl11, l) → bogerl12Mirror(pointBogerl1, l) → pointBogerl2Sequence(Segment[Rotate[MidPoint, ((i * 2) * pi / nenner2), MidPoint], Rotate[pointKreis1, ((i * 2) * pi / nenner2), MidPoint]], i, 0, nenner2 - 1) → listLinesCircleLeftSequence(Segment[Rotate[MidPoint2, ((i * 2) * pi / nenner3), MidPoint2], Rotate[KreisOben2, ((i * 2) * pi / nenner3), MidPoint2]], i, 0, nenner3 - 1) → listLinesCircleRightCircle(MidPoint2, radius) → kreis2Sequence(CircleSector[MidPoint2, Rotate[KreisOben2, (((-(i + 1)) * 2) * pi / nenner3), MidPoint2], Rotate[KreisOben2, (((-i) * 2) * pi / nenner3) - 0.0001, MidPoint2]], i, 0, zaehler3 - 1) → listAreaRightCircleRotate(KreisOben, ((-zaehler2) * (360°) / nenner2), MidPoint) → KreisEckpunktCircleSector((-5.766287229319031, 3.8699043461027944), (-3.416287229319031, 3.8699043461027944), (-5.766287229319031, 6.219904346102794)) → listAreaLeftCircle2Sequence(CircleSector[M, Rotate[KreisOben, (((-(i + 1)) * 2) * pi / nenner2), M], Rotate[KreisOben, (((-i) * 2) * pi / nenner2) - 0.0001, M]], i, 0, zaehler2 - 1) → l2Center(sektor12v13) → M12v13Center(sektor12v14) → M12v14Center(sektor12v15) → M12v15Center(sektor12v16) → M12v16If(Defined[anzahlTeiler], anzahlTeiler, 1) → anzahlTeiler1
AI 绘图提示语参考
创建一个交互式图形,展示分数简化练习。包含一个文本输入框供用户输入答案,并使用计数和条件命令检查答案。图形通过序列命令生成分数的分子和分母选项,并计算最大公约数以验证简化是否正确。使用滑块控制问题类型,并通过数学符号显示分数。图形应包括分子和分母列表,以及最大公约数对象,用于简化验证。
以上提示语为根据原始绘图命令整理而来,仅供参考。