乘法与除法决策的几何作图示例

乘法与除法决策的几何作图示例
几何画板及绘图内容加载中,请稍等……
2020-09-25 23:29
本范例演示如何通过几何构造判断乘法或除法运算。核心数学概念包括几何变换、坐标几何和函数图像。作图要点涉及使用GeoGebra命令如If、Min、Point、Sequence等进行图形化操作。适合初中生学习几何与代数结合的数学概念,以及高中生进行函数图像分析的练习。

GeoGebra 命令及参数

  1. If(valid, Min[n1User, n2User], 1) → n2
  2. Min(3 / n2V, 9 / n2H) → n2Spread
  3. First(Flatten[Sequence[Sequence[n2PointsStarter + ((i * n2Spread), (j * n2Spread)), j, 0, n2V - 1], i, 0, n2H - 1]], n2) → n2UnsortedCenters
  4. If(valid, Max[n1User, n2User], 1) → n1
  5. Zip(y(AAA), AAA, n2UnsortedCenters) → n2CentersSorter
  6. Min(3 / n1V, 9 / n1H) → n1Spread
  7. First(Flatten[Sequence[Sequence[n1PointsStarter + ((i * n1Spread), (j * n1Spread)), j, 0, n1V - 1], i, 0, n1H - 1]], n1) → n1UnsortedCenters
  8. Zip(y(AAA), AAA, n1UnsortedCenters) → n1CentersSorter
  9. Point(moverLines) → A
  10. Min(1, Max[Distance[A, (0, 0)] - 0.25, 0]) → darkener
  11. Sort(n1UnsortedCenters, n1CentersSorter) → n1Centers
  12. If(darkener ≟ 1, (Distance[A, (0, 0)] - 1.25) / 2, 0) → move
  13. Sequence(Sequence[Element[n1Centers, j] + ((i * n1Side / n2), 0), i, 0, n2 - 1], j, 1, n1) → n1Dn2StartPoints
  14. Sort(n2UnsortedCenters, n2CentersSorter) → n2Centers
  15. Sequence(First[Flatten[Sequence[Sequence[Element[n2Centers, i] + (n1Dn2EndGap, n1Dn2EndGap) + (((2 * n1Dn2EndGap) * j), ((2 * n1Dn2EndGap) * k)) + ((n1Dn2EndHeight * j), (n1Dn2EndHeight * k)), j, 0, ceil(sqrt(ceil(n1 / n2))) - 1], k, 0, ceil(sqrt(ceil(n1 / n2))) - 1]], ceil(n1 / n2)], i, 1, n2) → n1Dn2EndPointHelper
  16. Zip(Polygon[AAA, AAA + (n2Side, 0), 4], AAA, n2Centers) → n2OrigPolys
  17. Sequence(n2Centers, i, 1, n1) → n1Mn2StartPoints
  18. Sequence(Sequence[Element[n2Centers, j] + ((i * n2Side / n1), 0), i, 0, n1 - 1], j, 1, n2) → n2Dn1StartPoints
  19. Sequence(Sequence[Element[n1Centers, j] + ((i * n1Side / n1), 0), j, 1, n1], i, 0, n2 - 1) → n2Dn1EndPoints
  20. Zip(Polygon[AAA, AAA + (n1Side, 0), 4], AAA, n1Centers) → n1OrigPolys
  21. Flatten(Sequence[Sequence[Sequence[Element[n1Dn2EndPointHelper, i, j] + ((n1Dn2EndHeight / n2 * (k - 1)), 0), k, 1, If[j > floor(n1 / n2), Mod[n1, n2], n2]], j, 1, ceil(n1 / n2)], i, 1, n2]) → n1Dn2UngroupedEndPoints
  22. Sequence(Sequence[Element[n1Dn2UngroupedEndPoints, i + (n1 * j)], j, 0, n2 - 1], i, 1, n1) → n1Dn2EndPoints
  23. If(x(A) > 0, 1, If[y(A) > 0, 2, If[x(A) < 0, 3, 4]]) → index
  24. Sequence(n1Centers, i, 1, n2) → n2Mn1StartPoints
  25. Zip(First[Flatten[Sequence[Sequence[AAA + ((n2Mn1EndGap * ((2 * i) + 1)), (n2Mn1EndGap * ((2 * j) + 1))) + ((i * n2Mn1EndWidth), (j * n2Mn1EndWidth)), i, 0, ceil(sqrt(n1)) - 1], j, 0, ceil(sqrt(n1)) - 1]], n1], AAA, n2Centers) → n2Mn1EndPoints
  26. Zip(First[Flatten[Sequence[Sequence[AAA + ((n1Mn2EndGap * ((2 * i) + 1)), (n1Mn2EndGap * ((2 * j) + 1))) + ((i * n1Mn2EndWidth), (j * n1Mn2EndWidth)), i, 0, ceil(sqrt(n2)) - 1], j, 0, ceil(sqrt(n2)) - 1]], n2], AAA, n1Centers) → n1Mn2EndPoints
  27. Element({n1Mn2StartPoints, n1Dn2StartPoints, n2Mn1StartPoints, n2Dn1StartPoints}, index) → startPoints
  28. Element({n1Mn2EndPoints, n1Dn2EndPoints, n2Mn1EndPoints, n2Dn1EndPoints}, index) → endPoints
  29. First(Sequence[Max[0, Min[1, ((If[index ≥ 3, n2, n1] + 1) / 2 * (move - k / (If[index ≥ 3, n2, n1] + 1)))]], k, 0, If[index ≥ 3, n2, n1] + 1], If[index ≥ 3, n2, n1]) → movers
  30. Element({n2Side, n1Side, n1Side, n2Side}, index) → startHeight
  31. Element({n1Mn2EndHeight, n1Dn2EndHeight, n2Mn1EndHeight, n1Side}, index) → endHeight
  32. Element({n1Mn2EndWidth, n1Dn2EndWidth, n2Mn1EndWidth, n2Dn1EndWidth}, index) → endWidth
  33. Element({n1Mn2StartWidth, n1Dn2StartWidth, n2Mn1StartWidth, n2Dn1StartWidth}, index) → startWidth
  34. Zip((AAA * (1 - CCC)) + (BBB * CCC), AAA, startPoints, BBB, endPoints, CCC, movers) → movingPoints
  35. Sequence(Sequence[Polygon[Element[movingPoints, i, j], Element[movingPoints, i, j] + ((startWidth * (1 - Element[movers, i])) + (endWidth * Element[movers, i]), 0), Element[movingPoints, i, j] + ((startWidth * (1 - Element[movers, i])) + (endWidth * Element[movers, i]), (startHeight * (1 - Element[movers, i])) + (endHeight * Element[movers, i])), Element[movingPoints, i, j] + (0, (startHeight * (1 - Element[movers, i])) + (endHeight * Element[movers, i]))], j, 1, Length[Element[movingPoints, i]]], i, 1, Length[movingPoints]) → movingPolys
  36. Flatten({n1OrigPolys, n2OrigPolys}) → backgrounds
  37. Textfield(n1User) → InputBox1
  38. Textfield(n2User) → InputBox2
  39. Sequence(Sequence[Polygon[Element[n1Dn2EndPointHelper, i, j], Element[n1Dn2EndPointHelper, i, j] + (n1Dn2EndHeight, 0), 4], i, 1, n2], j, 1, (move ≟ 1 ∧ n1 / n2 ≠ floor(n1 / n2)) + Div[Sum[Zip[floor(AAA), AAA, movers]], n2]) → n1Dn2EndWholePolys

AI 绘图提示语参考

绘制一个几何图形,通过调整用户输入的两个数值来决定是进行乘法还是除法运算。首先,根据用户输入的数值确定几何图形的大小和比例,然后绘制出多个小正方形或矩形,这些图形会根据用户输入的数值进行缩放和移动,形成一个动态的几何图案。最后,根据用户输入的数值决定图形的最终形态,展示乘法或除法的结果。
以上提示语为根据原始绘图命令整理而来,仅供参考。