加减法逆运算教学
几何画板及绘图内容加载中,请稍等……
本范例通过Kletter-Max的故事情境,演示加减法的逆运算关系。涉及核心数学概念为通过逆运算求解未知数,即加法是减法的逆运算,减法是加法的逆运算。构造要点使用了GeoGebra的Sequence, Element, Textfield, SelectedIndex, Corner, Curve, Cartesian, PolyLine, Segment, If, Invert, Text, CircleArc, Vector等命令和对象来创建交互式问题和反馈。适合小学5-6年级学生,用于理解和练习通过逆运算解决线性方程。
GeoGebra 命令及参数
Sequence(Random[1, 10], i, 1, 10) → randomNumbers, {1, 2, 3, 9, 5, 9, 8, 3, 8, 8}Element(randomNumbers, Mod[questionCount, Length[randomNumbers]] + 1) → randomNumberTextfield(input) → inputBoxSelectedIndex(dropdown031) → index031SelectedIndex(dropdown041) → index041SelectedIndex(dropdown071) → index071SelectedIndex(dropdown081) → index081Textfield(input031) → InputBox031Textfield(input041) → InputBox041Textfield(input071) → InputBox071Textfield(input081) → InputBox081Corner(imgWand, 3) → PosImgWand3Sequence(PosImgWand1 + (0.105 * (PosImgWand2 - PosImgWand1)) + (0.105 * (PosImgWand3 - PosImgWand2)) + ((k * 0.07065) * (PosImgWand3 - PosImgWand2)), k, 0, 12) → PointListSprosseSequence(Polygon[PointListSprosse(k) + {(0, 0), (0.775 * (PosImgWand2 - PosImgWand1)), (0.775 * (PosImgWand2 - PosImgWand1)) - (0.025 * (PosImgWand3 - PosImgWand2)), (-0.025 * (PosImgWand3 - PosImgWand2))}], k, 1, Length[PointListSprosse]) → SprosseListSequence(PointListSprosse(k) + (0.25 * (PosImgWand2 - PosImgWand1)) - (0.035 * (PosImgWand3 - PosImgWand2)), k, 1, Length[PointListSprosse]) → PosListKMSequence(PointListSprosse(k) + (0.9 * (dimWand, 0)) - (0.007 * (0, dimWand)), k, 1, 13) → PointListRightSequence(Text[(((("\textsf{" * If[k ≟ actualSprosse, "\bold{\textcolor{#1565c0}{", "{{"]) * "") * k) * "}}}"), PointListRight(k), false, true, 0, 0], k, 1, 13) → CapListCurveCartesian(Midpoint[PointListRight(Min[Sprosse031, Sprosse041]), PointListRight(Max[Sprosse031, Sprosse041])] + (-0.25, -0.1) + (Distance[Midpoint[PointListRight(Min[Sprosse031, Sprosse041]), PointListRight(Max[Sprosse031, Sprosse041])], PointListRight(Min[Sprosse031, Sprosse041])] * (cos(t), sin(t))), t, -60°, 60°) → arc031Sequence(PointListRight(k) - (0.9 * (dimWand, 0)), k, 1, 13) → PointListLeftPolyLine(PosImgMax2 + (-0.5, 3.5), Corner[txt111, 1] + (0.6, 0), Corner[txt111, 2] + (0.1, 0), Corner[txt111, 3] + (0.1, 0.1), Corner[txt111, 4] + (-0.05, 0.1), Corner[txt111, 1] + (-0.05, 0.5), PosImgMax2 + (-0.5, 3.5)) → sbCurveCartesian(Midpoint[PointListLeft(Min[Sprosse031, Sprosse041]), PointListLeft(Max[Sprosse031, Sprosse041])] + (-0.25, -0.1) + (Distance[Midpoint[PointListLeft(Min[Sprosse031, Sprosse041]), PointListLeft(Max[Sprosse031, Sprosse041])], PointListLeft(Min[Sprosse031, Sprosse041])] * (cos(t), sin(t))), t, 120°, 240°) → arc041Segment(Point[arc031, 1], Point[arc031, 1] + (0.01 * UnitOrthogonalVector[Vector[Midpoint[PointListRight(Min[Sprosse031, Sprosse041]), PointListRight(Max[Sprosse031, Sprosse041])] + (-0.25, -0.1), Point[arc031, 1]]])) → seg031Segment(Point[arc031, 0], Point[arc031, 0] + (0.01 * UnitOrthogonalVector[Vector[Midpoint[PointListRight(Min[Sprosse031, Sprosse041]), PointListRight(Max[Sprosse031, Sprosse041])] + (-0.25, -0.1), Point[arc031, 0]]])) → seg032Segment(Point[arc041, 0], Point[arc041, 0] + (0.01 * UnitOrthogonalVector[Vector[Midpoint[PointListLeft(Min[Sprosse031, Sprosse041]), PointListLeft(Max[Sprosse031, Sprosse041])] + (-0.25, -0.1), Point[arc041, 0]]])) → seg042Segment(Point[arc041, 1], Point[arc041, 1] + (0.01 * UnitOrthogonalVector[Vector[Midpoint[PointListLeft(Min[Sprosse031, Sprosse041]), PointListLeft(Max[Sprosse031, Sprosse041])] + (-0.25, -0.1), Point[arc041, 1]]])) → seg041If(Sprosse041 > Sprosse031, 7, 2) → Sprosse071If(Sprosse041 > Sprosse031, 2, 7) → Sprosse081Invert(pixMat) → invPixMatText((((("\textsf{\colorbox{ebe7f8}{Operation:\\\bold{" * If[Sprosse031 < Sprosse041, "Addition", "Subtraktion"]) * "}\\") * If[Sprosse031 < Sprosse041, "+", "\(-\)"]) * " 3 Sprossen}}"), Pos031, false, true, 1, 0) → txt062CurveCartesian(Midpoint[PointListRight(Min[Sprosse071, Sprosse081]), PointListRight(Max[Sprosse071, Sprosse081])] + (-0.5, -0.1) + (Distance[Midpoint[PointListRight(Min[Sprosse071, Sprosse081]), PointListRight(Max[Sprosse071, Sprosse081])], PointListRight(Min[Sprosse071, Sprosse081])] * (cos(t), sin(t))), t, -60°, 60°) → arc071CurveCartesian(Midpoint[PointListLeft(Min[Sprosse071, Sprosse081]), PointListLeft(Max[Sprosse071, Sprosse081])] + (0, -0.1) + (Distance[Midpoint[PointListLeft(Min[Sprosse071, Sprosse081]), PointListLeft(Max[Sprosse071, Sprosse081])], PointListLeft(Min[Sprosse071, Sprosse081])] * (cos(t), sin(t))), t, 120°, 240°) → arc081Segment(Point[arc071, 1], Point[arc071, 1] + (0.01 * UnitOrthogonalVector[Vector[Midpoint[PointListRight(Min[Sprosse071, Sprosse081]), PointListRight(Max[Sprosse071, Sprosse081])] + (-0.5, -0.1), Point[arc071, 1]]])) → seg071Segment(Point[arc071, 0], Point[arc071, 0] + (0.01 * UnitOrthogonalVector[Vector[Midpoint[PointListRight(Min[Sprosse071, Sprosse081]), PointListRight(Max[Sprosse071, Sprosse081])] + (-0.5, -0.1), Point[arc071, 0]]])) → seg072Text((("\textsf{\bold{\textcolor{" * If[step ≟ 7, "006758", "black"]) * " }{") + Sprosse071 + " " + (If[Sprosse071 < Sprosse081, "+", "\(-\)"]) + " 5 = " + Sprosse081 + "}}}", Pos071 + (0, -0.5), false, true, 1, 0) → txt073Segment(Point[arc081, 1], Point[arc081, 1] + (0.01 * UnitOrthogonalVector[Vector[Midpoint[PointListLeft(Min[Sprosse071, Sprosse081]), PointListLeft(Max[Sprosse071, Sprosse081])] + (0, -0.1), Point[arc081, 1]]])) → seg081Segment(Point[arc081, 0], Point[arc081, 0] + (0.01 * UnitOrthogonalVector[Vector[Midpoint[PointListLeft(Min[Sprosse071, Sprosse081]), PointListLeft(Max[Sprosse071, Sprosse081])] + (0, -0.1), Point[arc081, 0]]])) → seg082Text((((("\textsf{\colorbox{ebe7f8}{Operation:\\\bold{" * If[Sprosse071 < Sprosse081, "Addition", "Subtraktion"]) * "}\\") * If[Sprosse071 < Sprosse081, "+", "\(-\)"]) * " 5 Sprossen}}"), Pos071, false, true, 1, 0) → txt102Text((((("\textsf{\colorbox{ebe7f8}{Umkehroperation:\\\bold{" * If[Sprosse031 > Sprosse041, "Addition", "Subtraktion"]) * "}\\") * If[Sprosse031 > Sprosse041, "+", "\(-\)"]) * " 3 Sprossen}}"), Pos041, false, true, -1, 0) → txt063Text((((("\textsf{\colorbox{ebe7f8}{Umkehroperation:\\\bold{" * If[Sprosse071 > Sprosse081, "Addition", "Subtraktion"]) * "}\\") * If[Sprosse071 > Sprosse081, "+", "\(-\)"]) * " 5 Sprossen}}"), Pos081, false, true, -1, 0) → txt103If(step ≟ 2, triesKM ≥ 1 ∧ animKM ∈ {0, 1}, step ≟ 8, anim081 ≟ 5 ∧ correct081 ∧ correctdd081, step ≟ 9, anim091 ≟ 5, true, step ≟ 3, correct031 ∧ correctdd031, step ≟ 4, anim041 ≟ 3 ∧ correct041 ∧ correctdd041, step ≟ 5, anim051 ≟ 3, step ≟ 7, correct071 ∧ correctdd071) → clickableBtnNextIf(step ≟ 2, animKM ∈ {0, 1}, true, step ≟ 4, anim041 ≟ 3, step ≟ 5, anim051 ≟ 3, step ≟ 8, anim081 ≟ 5, step ≟ 9, anim091 ≟ 5) → clickableBtnBackIf(step ≟ 3, Point[arc031, 0] + (0.5, -0.25), step ≟ 4, Point[arc041, 1] + (-4, -0.25), step ≟ 7, Point[arc071, 0] + (0.5, -0.25), Point[arc081, 1] + (-4, -0.25)) → PosBtnShowSolutionText((("\textsf{\bold{\textcolor{" * If[step ≟ 3, "006758", "black"]) * " }{") + Sprosse031 + " " + (If[Sprosse031 < Sprosse041, "+", "\(-\)"]) + " 3 = " + Sprosse041 + "}}}", Pos031 + (0, -0.5), false, true, 1, 0) → txt033Text((("\textsf{\bold{\textcolor{" * If[step ≟ 4, "006758", "black"]) * " }{") + Sprosse041 + " " + (If[Sprosse041 < Sprosse031, "+", "\(-\)"]) + " 3 = " + Sprosse031 + "}}}", Pos041 + (-1.9, -0.5), false, true, -1, 0) → txt043Text((("\textsf{\bold{\textcolor{" * If[step ≟ 8, "006758", "black"]) * " }{") + Sprosse081 + " " + (If[Sprosse081 < Sprosse071, "+", "\(-\)"]) + " 5 = " + Sprosse071 + "}}}", Pos081 + (-1.85, -0.5), false, true, -1, 0) → txt083CircleArc(Midpoint[PosZ1, PosZ2] + (0, -2), PosZ2 + (-0.25, 0.5), PosZ1 + (0.25, 0.5)) → arc111CircleArc(Midpoint[PosZ1, PosZ2] + (0, 2), PosZ1 + (0.25, -0.5), PosZ2 + (-0.25, -0.5)) → arc112Vector(Point[arc111, 0], Point[arc111, 0] + (0.1, -0.1)) → vec111Vector(Point[arc112, 0], Point[arc112, 0] + (-0.1, 0.1)) → vec112Text((("\textsf{\bold{" * If[Sprosse041 > Sprosse031, "+", "\(-\)"]) * " 3} Sprossen}"), Pos031 + (0, 0.25), false, true, 1, 0) → txt034Text((("\textsf{\bold{" * If[Sprosse031 > Sprosse041, "+", "\(-\)"]) * " 3} Sprossen}"), Pos041 + (0, 0.25), false, true, -1, 0) → txt044Text((("\textsf{\bold{" * If[Sprosse081 > Sprosse071, "+", "\(-\)"]) * " 5} Sprossen}"), Pos071 + (0, 0.25), false, true, 1, 0) → txt074Text((("\textsf{\bold{" * If[Sprosse071 > Sprosse081, "+", "\(-\)"]) * " 5} Sprossen}"), Pos081 + (0, 0.25), false, true, -1, 0) → txt084
AI 绘图提示语参考
这是一个交互式数学教学图形,包含输入框用于输入数字,下拉菜单选择运算类型,文本框显示问题与答案。图形中有点阵、曲线和线段构成几何图形,曲线和线段连接点阵,形成类似图形。文本框显示“Operation: Addition or Subtraction 3 Sprossen”等信息。整体布局类似教学界面,包含按钮和反馈区域,用于展示加法和减法的逆运算关系。
以上提示语为根据原始绘图命令整理而来,仅供参考。