数字的面值与位值的可视化分解

数字的面值与位值的可视化分解
几何画板及绘图内容加载中,请稍等……
2020-08-17 15:22
本范例通过可视化构造,把一个多位数分解为各位数字对应的“面值—位值”贡献,并用图形元素直观呈现权重变化。核心数学概念包括十进制位值思想、数的结构表示(按位展开)、以及用向量/几何对象表达分段组成与权重缩放。作图要点:使用 Vector、Ellipse、Translate、Polygon、Textfield 等命令生成基础几何与标注;结合 Random 与 RandomElement 生成示例数与参数;用 If 与 Sequence 控制位数/分量的选择与序列展示;并通过 Translate、Polygon、VerticalText 等对象与标注(如 I、H、G、F、E、n、w、v、u、D、C、L_1~L_6、button1)实现从分解到可视化的映射。适合中学数学课堂、数学素养拓展或位值教学的互动演示,用于帮助学生建立“每一位乘以对应的10的幂”的直观理解。

GeoGebra 命令及参数

  1. Vector(E, I) → n
  2. Vector(E, H) → w
  3. Vector(E, G) → v
  4. Vector(E, F) → u
  5. Ellipse(C, D, E) → p
  6. Translate(p, n) → p'_3
  7. Translate(p'_3, u) → s
  8. Translate(p, w) → p'_2
  9. Translate(p'_2, u) → r
  10. Translate(p, v) → p'_1
  11. Translate(p'_1, u) → q
  12. Translate(p, u) → p'
  13. Translate(p', u) → pp
  14. RandomElement(L_{16}) → t
  15. Random(1, 9) → a
  16. Random(0, 9) → i
  17. Random(0, 9) → h
  18. Random(0, 9) → g
  19. Random(0, 9) → f
  20. Random(0, 9) → e
  21. Random(0, 9) → d
  22. Random(0, 9) → c
  23. Random(0, 9) → b
  24. If(t ≟ s, (a * 100000000), If[t ≟ p'_3, (b * 10000000), If[t ≟ r, (c * 1000000), If[t ≟ p'_2, (d * 100000), If[t ≟ q, (e * 10000), If[t ≟ p'_1, (f * 1000), If[t ≟ pp, (g * 100), If[t ≟ p', (h * 10), i]]]]]]]) → d_1
  25. Sequence(A + (0, i / 2), i, 1, 9) → L_2
  26. Sequence(L_2 + (i, 0), i, 1, 9) → L_3
  27. Sequence(Segment[A + ((3 * i / 4), 0), B + ((3 * i / 4), 0)], i, 0, 8) → L_1
  28. Sequence(Circle[(0.75, 0) + (0, i / 2), 0.25], i, 1, b) → L_5
  29. Sequence(Circle[(1.5, 0) + (0, i / 2), 0.25], i, 1, c) → L_6
  30. Sequence(Circle[(2.25, 0) + (0, i / 2), 0.25], i, 1, d) → L_7
  31. Sequence(Circle[(3, 0) + (0, i / 2), 0.25], i, 1, e) → L_8
  32. Sequence(Circle[(3.75, 0) + (0, i / 2), 0.25], i, 1, f) → L_9
  33. Sequence(Circle[(6.75, 0) + (0, j / 2), 0.25], j, 1, i) → L_{13}
  34. Sequence(Circle[(0, 0) + (0, i / 2), 0.25], i, 1, a) → L_4
  35. RandomElement(L_{14}) → j
  36. If(j ≟ a, (100000000 * a), If[j ≟ b, (10000000 * b), If[j ≟ c, (1000000 * c), d]]) → k
  37. If(j ≟ a, (100000000 * a), If[j ≟ b, (10000000 * b), If[j ≟ c, (1000000 * c), If[j ≟ d, (100000 * d), If[j ≟ e, (10000 * e), If[j ≟ f, (1000 * f), If[j ≟ g, (100 * g), If[j ≟ h, (10 * h), i]]]]]]]) → l
  38. RandomElement(L_{15}) → text3
  39. If(text3 ≟ text2, i, f) → m
  40. If(t ≟ p, i, If[t ≟ p', h, If[t ≟ pp, g, If[t ≟ p'_1, f, If[t ≟ q, e, If[t ≟ p'_2, d, If[t ≟ r, c, If[t ≟ s, a, b]]]]]]]) → a_1
  41. If(t ≟ p, i, If[t ≟ p', h, If[t ≟ pp, g, If[t ≟ p'_1, f, If[t ≟ q, e, If[t ≟ p'_2, d, If[t ≟ r, c, If[t ≟ s, a, b]]]]]]]) → o
  42. If(o ≟ a, (100000000 * a), If[o ≟ b, (10000000 * b), If[o ≟ c, (1000000 * c), If[o ≟ d, (100000 * d), If[o ≟ e, (10000 * e), If[o ≟ f, (1000 * f), If[o ≟ g, (100 * g), If[o ≟ h, (10 * h), i]]]]]]]) → b_1
  43. If(text2 ≟ text6, text9, text8) → text10
  44. If(text5 ≟ text7, text9, text8) → text11
  45. Textfield(text2) → InputBox1
  46. Textfield(text5) → InputBox2
  47. Polygon((-0.5, 0.2), (6.5, 0.2), (6.5, -1), (-0.5, -1)) → q1, f_1, g_1, h_1, i_1
  48. VerticalText(text14) → text15
  49. VerticalText(text16) → text24
  50. VerticalText(text17) → text25
  51. VerticalText(text18) → text26
  52. VerticalText(text19) → text27
  53. VerticalText(text20) → text28
  54. VerticalText(text21) → text29
  55. Sequence(Circle[(6, 0) + (0, j / 2), 0.25], j, 1, i) → L_{12}
  56. Polygon((-0.5, -1.85), (6.5, -1.85), (6.5, -1), (-0.5, -1)) → q1_1, j_1, k_1, l_1, m_1
  57. Sequence(Circle[(4.5, 0) + (0, i / 2), 0.25], i, 1, g) → L_{10}
  58. Sequence(Circle[(5.25, 0) + (0, i / 2), 0.25], i, 1, h) → L_{11}
  59. VerticalText(text22) → text30
  60. VerticalText(text23) → text31
  61. If(text2 ≟ text6 ∧ text5 ≟ text7, pic1, pic2) → pic3

AI 绘图提示语参考

绘制一个用于说明十进制位值分解的动态示意图:在同一基准点上建立若干等距的箭头方向并标注为不同位权的位移向量;以同一椭圆为中心形成可平移的几何部件,再把它按位权向量依次平移、叠加成多个代表“百位、十位、个位”等贡献的形状条带。旁边配套给出输入框以展示两个可变的数字选择,并在图中用多组圆形/弧形小单元沿水平方向排列,表示不同数字权重的可选位置。整体用顺序项控制各部分依次出现,并在底部用大多边形和竖排文字做说明区域。
以上提示语为根据原始绘图命令整理而来,仅供参考。