因子游戏的单人版本:多边形与因数选择构造

因子游戏的单人版本:多边形与因数选择构造
几何画板及绘图内容加载中,请稍等……
2021-01-12 00:31
该范例演示“因子游戏”的单人生成过程:通过从整数的因数集合中随机选择元素,并将选取结果映射到平面几何对象(多边形、直线与点),从而形成可交互/可重复观察的几何局部结构。核心数学概念包括:整数因数与因子分解(因数列表、筛选与去重)、随机实验与集合操作(打乱、求交集、处理未定义量)、以及用二维解析几何将数值规则转化为向量/点的构造(在多边形与分割线的组合中体现)。作图要点:用到的 GeoGebra 命令主要来自构造摘要,包括 Polygon(多边形对象的生成)、DivisorsList(因数列表生成)、Factors(因子运算)、Remove/RemoveUndefined(剔除无效元素与未定义值)、If(条件分支筛选)、Sum(对因数或参数进行求和以形成计算结果)、Flatten 与 Unique(将嵌套结构展平成一维并去重)、Join 与 Shuffle(合并集合并随机打乱)、Intersect(求几何对象交点)、Line(连线/分割线)、Point(关键点生成)。对象层面使用了 A、B、poly1 以及多组点/参数(如 P26、m26、M26、P28 等)来承载不同取值对应的几何结果。适合中学高年级到大学入门的数论与几何结合教学,用于因数分解思想、随机生成可视化与几何作图的综合演示。

GeoGebra 命令及参数

  1. Polygon(A, B, 4) → poly1, f, g, h, i, C, D
  2. DivisorsList(N) → ND
  3. Factors(N) →
  4. Remove(ND, {1, N}) → ND1
  5. If(IsInRegion[P26, poly1], 26, 0) → m26
  6. If(x(P26) < -5 ∧ y(P26) > 0, 26) → M26
  7. If(IsInRegion[P28, poly1], 28, 0) → m28
  8. If(x(P28) < -5 ∧ y(P28) > 0, 28) → M28
  9. If(IsInRegion[P29, poly1], 29, 0) → m29
  10. If(x(P29) < -5 ∧ y(P29) > 0, 29) → M29
  11. If(IsInRegion[P30, poly1], 30, 0) → m30
  12. If(x(P30) < -5 ∧ y(P30) > 0, 30) → M30
  13. If(IsInRegion[P31, poly1], 31, 0) → m31
  14. If(x(P31) < -5 ∧ y(P31) > 0, 31) → M31
  15. If(IsInRegion[P8, poly1], 8, 0) → m8
  16. If(x(P8) < -5 ∧ y(P8) > 0, 8) → M8
  17. If(IsInRegion[P32, poly1], 32, 0) → m32
  18. If(x(P32) < -5 ∧ y(P32) > 0, 32) → M32
  19. If(IsInRegion[P33, poly1], 33, 0) → m33
  20. If(x(P33) < -5 ∧ y(P33) > 0, 33) → M33
  21. If(IsInRegion[P9, poly1], 9, 0) → m9
  22. If(x(P9) < -5 ∧ y(P9) > 0, 9) → M9
  23. If(IsInRegion[P10, poly1], 10, 0) → m10
  24. If(x(P10) < -5 ∧ y(P10) > 0, 10) → M10
  25. If(IsInRegion[P34, poly1], 34, 0) → m34
  26. If(x(P34) < -5 ∧ y(P34) > 0, 34) → M34
  27. If(IsInRegion[P11, poly1], 11, 0) → m11
  28. If(x(P11) < -5 ∧ y(P11) > 0, 11) → M11
  29. If(IsInRegion[P35, poly1], 35, 0) → m35
  30. If(x(P35) < -5 ∧ y(P35) > 0, 35) → M35
  31. If(IsInRegion[P12, poly1], 12, 0) → m12
  32. If(x(P12) < -5 ∧ y(P12) > 0, 12) → M12
  33. If(IsInRegion[P36, poly1], 36, 0) → m36
  34. If(x(P36) < -5 ∧ y(P36) > 0, 36) → M36
  35. If(IsInRegion[P13, poly1], 13, 0) → m13
  36. If(x(P13) < -5 ∧ y(P13) > 0, 13) → M13
  37. If(IsInRegion[P14, poly1], 14, 0) → m14
  38. If(x(P14) < -5 ∧ y(P14) > 0, 14) → M14
  39. If(IsInRegion[P15, poly1], 15, 0) → m15
  40. If(x(P15) < -5 ∧ y(P15) > 0, 15) → M15
  41. If(IsInRegion[P16, poly1], 16, 0) → m16
  42. If(x(P16) < -5 ∧ y(P16) > 0, 16) → M16
  43. If(IsInRegion[P17, poly1], 17, 0) → m17
  44. If(x(P17) < -5 ∧ y(P17) > 0, 17) → M17
  45. If(IsInRegion[P19, poly1], 19, 0) → m19
  46. If(x(P19) < -5 ∧ y(P19) > 0, 19) → M19
  47. If(IsInRegion[P20, poly1], 20, 0) → m20
  48. If(x(P20) < -5 ∧ y(P20) > 0, 20) → M20
  49. If(IsInRegion[P21, poly1], 21, 0) → m21
  50. If(x(P21) < -5 ∧ y(P21) > 0, 21) → M21
  51. If(IsInRegion[P22, poly1], 22, 0) → m22
  52. If(x(P22) < -5 ∧ y(P22) > 0, 22) → M22
  53. If(IsInRegion[P23, poly1], 23, 0) → m23
  54. If(x(P23) < -5 ∧ y(P23) > 0, 23) → M23
  55. If(IsInRegion[P24, poly1], 24, 0) → m24
  56. If(x(P24) < -5 ∧ y(P24) > 0, 24) → M24
  57. If(IsInRegion[P25, poly1], 25, 0) → m25
  58. If(x(P25) < -5 ∧ y(P25) > 0, 25) → M25
  59. If(IsInRegion[P18, poly1], 18, 0) → m18
  60. If(x(P18) < -5 ∧ y(P18) > 0, 18) → M18
  61. If(IsInRegion[P27, poly1], 27, 0) → m27
  62. If(x(P27) < -5 ∧ y(P27) > 0, 27) → M27
  63. If(IsInRegion[P5, poly1], 5, 0) → m5
  64. If(x(P5) < -5 ∧ y(P5) > 0, 5) → M5
  65. If(IsInRegion[P4, poly1], 4, 0) → m4
  66. If(x(P4) < -5 ∧ y(P4) > 0, 4) → M4
  67. If(IsInRegion[P2, poly1], 2, 0) → m2
  68. If(x(P2) < -5 ∧ y(P2) > 0, 2) → M2
  69. If(IsInRegion[P7, poly1], 7, 0) → m7
  70. If(x(P7) < -5 ∧ y(P7) > 0, 7) → M7
  71. If(IsInRegion[P6, poly1], 6, 0) → m6
  72. If(x(P6) < -5 ∧ y(P6) > 0, 6) → M6
  73. If(IsInRegion[P3, poly1], 3, 0) → m3
  74. Sum(Lm) → m
  75. DivisorsList(m) → MD
  76. Factors(m) →
  77. Remove(MD, {1, m}) → MD1
  78. If(x(P3) < -5 ∧ y(P3) > 0, 3) → M3
  79. RemoveUndefined(MF) → MF1
  80. Remove(MF1, ND1) → Mistake
  81. Flatten(Mtotal) → M1total
  82. Unique(M1total) → M2total
  83. Flatten(NXtotal) → NX1total
  84. Unique(NX1total) → NX2total
  85. Join({M2total, NX2total}) → Join1
  86. Shuffle(List2) → List2A, {24, 20, 11, 32, 15, 30, 17, 14, 13, 28}
  87. Join({List1, List2A, List3}) → List4
  88. Remove(List4, Join1) → LL2
  89. Remove(ND1, Join1) → ND3
  90. Remove(MD1, Join1) → MD3
  91. Polygon(P, Q, R, S) → q1, p_1, q_1, r_1, s_1
  92. Polygon(G, H, 4) → poly2, j, k, l, t, T, U
  93. Sum(M2total) → ScoreM
  94. Unique(NT) → NT1
  95. Sum(NX2total) → ScoreN
  96. Intersect(r_1, s_1) → C_1
  97. Remove(ND1, MF1) → missing
  98. Remove(ND3, MF1) → Missing
  99. Sum(Mistake) → MistakeN
  100. Remove(MF1, Mistake) → MF2
  101. Line(M, O) → p
  102. Point(p) → A_1
  103. Polygon(Z, A_1, G_1, I_1) → q2, z_1, a_1, g_1, i_1
  104. Point(p) → M_1
  105. Polygon(L_1, M_1, N_1, O_1) → q3, l_1, m_1, n_1, o_1
  106. Polygon(P_1, Q_1, R_1, S_1) → q4, q, r, s, f_1

AI 绘图提示语参考

画一个由随机整数因子生成的多边形区域,其中包含1到40的整数因子。首先,随机选择这些因子,然后根据这些因子构建多边形、直线和点。接着,筛选出符合条件的因子,如x坐标小于-5且y坐标大于0的因子,并将它们标记为特殊点。最后,根据这些点和多边形的关系,生成一个包含多边形、直线和特殊点的图形。
以上提示语为根据原始绘图命令整理而来,仅供参考。