正负数加减法记忆配对游戏

正负数加减法记忆配对游戏
几何画板及绘图内容加载中,请稍等……
2016-02-14 20:18
该范例是一个交互式记忆配对游戏,用于帮助学习者巩固正负数加减法的运算规则。核心数学概念是正负数的加法与减法,特别是符号规则(如减去负数等于加上正数)。作图要点:利用GeoGebra的Random、RandomElement、If、Shuffle、Cell、Text、Midpoint、Sequence、Sum等命令,生成随机题目与答案卡片,并通过网格布局(A1-A16、B1-B8等对象)实现配对逻辑。适合初中数学课堂或自学练习,通过游戏化方式提升运算熟练度与符号意识。

GeoGebra 命令及参数

  1. Random(-9, 9) → B1
  2. Random(-9, 9) → B2
  3. Random(-9, 9) → B3
  4. Random(-9, 9) → B4
  5. Random(-9, 9) → B5
  6. Random(-9, 9) → B6
  7. Random(-9, 9) → B7
  8. Random(-9, 9) → B8
  9. RandomElement({"+", "-"}) → C1
  10. RandomElement({"+", "-"}) → C2
  11. RandomElement({"+", "-"}) → C3
  12. RandomElement({"+", "-"}) → C4
  13. RandomElement({"+", "-"}) → C5
  14. RandomElement({"+", "-"}) → C6
  15. RandomElement({"+", "-"}) → C7
  16. RandomElement({"+", "-"}) → C8
  17. Random(-9, 9) → D1
  18. Random(-9, 9) → D2
  19. Random(-9, 9) → D3
  20. Random(-9, 9) → D4
  21. Random(-9, 9) → D5
  22. Random(-9, 9) → D6
  23. Random(-9, 9) → D7
  24. Random(-9, 9) → D8
  25. If(C1 ≟ "+", B1 + D1, B1 - D1) → E1
  26. If(C2 ≟ "+", B2 + D2, B2 - D2) → E2
  27. If(C3 ≟ "+", B3 + D3, B3 - D3) → E3
  28. If(C4 ≟ "+", B4 + D4, B4 - D4) → E4
  29. If(C5 ≟ "+", B5 + D5, B5 - D5) → E5
  30. If(C6 ≟ "+", B6 + D6, B6 - D6) → E6
  31. If(C7 ≟ "+", B7 + D7, B7 - D7) → E7
  32. If(C8 ≟ "+", B8 + D8, B8 - D8) → E8
  33. Shuffle(Sequence[i, i, 1, 16]) → ordering
  34. Cell(6, Element[ordering, A1 + 1]) → G1
  35. Cell(6, Element[ordering, A2 + 1]) → G2
  36. Cell(6, Element[ordering, A3 + 1]) → G3
  37. Cell(6, Element[ordering, A4 + 1]) → G4
  38. Cell(6, Element[ordering, A5 + 1]) → G5
  39. Cell(6, Element[ordering, A6 + 1]) → G6
  40. Cell(6, Element[ordering, A7 + 1]) → G7
  41. Cell(6, Element[ordering, A8 + 1]) → G8
  42. Cell(6, Element[ordering, A9 + 1]) → G9
  43. Cell(6, Element[ordering, A10 + 1]) → G10
  44. Cell(6, Element[ordering, A11 + 1]) → G11
  45. Cell(6, Element[ordering, A12 + 1]) → G12
  46. Cell(6, Element[ordering, A13 + 1]) → G13
  47. Cell(6, Element[ordering, A14 + 1]) → G14
  48. Cell(6, Element[ordering, A15 + 1]) → G15
  49. Cell(6, Element[ordering, A16 + 1]) → G16
  50. Cell(5, Element[ordering, A1 + 1]) → H1
  51. Cell(5, Element[ordering, A2 + 1]) → H2
  52. Cell(5, Element[ordering, A3 + 1]) → H3
  53. Cell(5, Element[ordering, A4 + 1]) → H4
  54. Cell(5, Element[ordering, A5 + 1]) → H5
  55. Cell(5, Element[ordering, A6 + 1]) → H6
  56. Cell(5, Element[ordering, A7 + 1]) → H7
  57. Cell(5, Element[ordering, A8 + 1]) → H8
  58. Cell(5, Element[ordering, A9 + 1]) → H9
  59. Cell(5, Element[ordering, A10 + 1]) → H10
  60. Cell(5, Element[ordering, A11 + 1]) → H11
  61. Cell(5, Element[ordering, A12 + 1]) → H12
  62. Cell(5, Element[ordering, A13 + 1]) → H13
  63. Cell(5, Element[ordering, A14 + 1]) → H14
  64. Cell(5, Element[ordering, A15 + 1]) → H15
  65. Cell(5, Element[ordering, A16 + 1]) → H16
  66. If(true, Polygon[((Mod[A1, 4] * 2), (Div[A1, 4] * 2)), ((Mod[A1, 4] * 2) + 2, (Div[A1, 4] * 2)), 4]) → I1
  67. If(true, Polygon[((Mod[A2, 4] * 2), (Div[A2, 4] * 2)), ((Mod[A2, 4] * 2) + 2, (Div[A2, 4] * 2)), 4]) → I2
  68. If(true, Polygon[((Mod[A3, 4] * 2), (Div[A3, 4] * 2)), ((Mod[A3, 4] * 2) + 2, (Div[A3, 4] * 2)), 4]) → I3
  69. If(true, Polygon[((Mod[A4, 4] * 2), (Div[A4, 4] * 2)), ((Mod[A4, 4] * 2) + 2, (Div[A4, 4] * 2)), 4]) → I4
  70. If(true, Polygon[((Mod[A5, 4] * 2), (Div[A5, 4] * 2)), ((Mod[A5, 4] * 2) + 2, (Div[A5, 4] * 2)), 4]) → I5
  71. If(true, Polygon[((Mod[A6, 4] * 2), (Div[A6, 4] * 2)), ((Mod[A6, 4] * 2) + 2, (Div[A6, 4] * 2)), 4]) → I6
  72. If(true, Polygon[((Mod[A7, 4] * 2), (Div[A7, 4] * 2)), ((Mod[A7, 4] * 2) + 2, (Div[A7, 4] * 2)), 4]) → I7
  73. If(true, Polygon[((Mod[A8, 4] * 2), (Div[A8, 4] * 2)), ((Mod[A8, 4] * 2) + 2, (Div[A8, 4] * 2)), 4]) → I8
  74. If(true, Polygon[((Mod[A9, 4] * 2), (Div[A9, 4] * 2)), ((Mod[A9, 4] * 2) + 2, (Div[A9, 4] * 2)), 4]) → I9
  75. If(true, Polygon[((Mod[A10, 4] * 2), (Div[A10, 4] * 2)), ((Mod[A10, 4] * 2) + 2, (Div[A10, 4] * 2)), 4]) → I10
  76. If(true, Polygon[((Mod[A11, 4] * 2), (Div[A11, 4] * 2)), ((Mod[A11, 4] * 2) + 2, (Div[A11, 4] * 2)), 4]) → I11
  77. If(true, Polygon[((Mod[A12, 4] * 2), (Div[A12, 4] * 2)), ((Mod[A12, 4] * 2) + 2, (Div[A12, 4] * 2)), 4]) → I12
  78. If(true, Polygon[((Mod[A13, 4] * 2), (Div[A13, 4] * 2)), ((Mod[A13, 4] * 2) + 2, (Div[A13, 4] * 2)), 4]) → I13
  79. If(true, Polygon[((Mod[A14, 4] * 2), (Div[A14, 4] * 2)), ((Mod[A14, 4] * 2) + 2, (Div[A14, 4] * 2)), 4]) → I14
  80. If(true, Polygon[((Mod[A15, 4] * 2), (Div[A15, 4] * 2)), ((Mod[A15, 4] * 2) + 2, (Div[A15, 4] * 2)), 4]) → I15
  81. If(true, Polygon[((Mod[A16, 4] * 2), (Div[A16, 4] * 2)), ((Mod[A16, 4] * 2) + 2, (Div[A16, 4] * 2)), 4]) → I16
  82. Text(G1, J1, true, true) → K1
  83. Text(G2, J2, true, true) → K2
  84. Text(G3, J3, true, true) → K3
  85. Text(G4, J4, true, true) → K4
  86. Text(G5, J5, true, true) → K5
  87. Text(G6, J6, true, true) → K6
  88. Text(G7, J7, true, true) → K7
  89. Text(G8, J8, true, true) → K8
  90. Text(G9, J9, true, true) → K9
  91. Text(G10, J10, true, true) → K10
  92. Text(G11, J11, true, true) → K11
  93. Text(G12, J12, true, true) → K12
  94. Text(G13, J13, true, true) → K13
  95. Text(G14, J14, true, true) → K14
  96. Text(G15, J15, true, true) → K15
  97. Text(G16, J16, true, true) → K16
  98. Midpoint(Corner[K1, 3], Corner[K1, 1]) → L1
  99. Midpoint(Corner[K2, 3], Corner[K2, 1]) → L2
  100. Midpoint(Corner[K3, 3], Corner[K3, 1]) → L3
  101. Midpoint(Corner[K4, 3], Corner[K4, 1]) → L4
  102. Midpoint(Corner[K5, 3], Corner[K5, 1]) → L5
  103. Midpoint(Corner[K6, 3], Corner[K6, 1]) → L6
  104. Midpoint(Corner[K7, 3], Corner[K7, 1]) → L7
  105. Midpoint(Corner[K8, 3], Corner[K8, 1]) → L8
  106. Midpoint(Corner[K9, 3], Corner[K9, 1]) → L9
  107. Midpoint(Corner[K10, 3], Corner[K10, 1]) → L10
  108. Midpoint(Corner[K11, 3], Corner[K11, 1]) → L11
  109. Midpoint(Corner[K12, 3], Corner[K12, 1]) → L12
  110. Midpoint(Corner[K13, 3], Corner[K13, 1]) → L13
  111. Midpoint(Corner[K14, 3], Corner[K14, 1]) → L14
  112. Midpoint(Corner[K15, 3], Corner[K15, 1]) → L15
  113. Midpoint(Corner[K16, 3], Corner[K16, 1]) → L16
  114. Text(G1, (2 * J1) - L1, true, true) → M1
  115. Text(G2, (2 * J2) - L2, true, true) → M2
  116. Text(G3, (2 * J3) - L3, true, true) → M3
  117. Text(G4, (2 * J4) - L4, true, true) → M4
  118. Text(G5, (2 * J5) - L5, true, true) → M5
  119. Text(G6, (2 * J6) - L6, true, true) → M6
  120. Text(G7, (2 * J7) - L7, true, true) → M7
  121. Text(G8, (2 * J8) - L8, true, true) → M8
  122. Text(G9, (2 * J9) - L9, true, true) → M9
  123. Text(G10, (2 * J10) - L10, true, true) → M10
  124. Text(G11, (2 * J11) - L11, true, true) → M11
  125. Text(G12, (2 * J12) - L12, true, true) → M12
  126. Text(G13, (2 * J13) - L13, true, true) → M13
  127. Text(G14, (2 * J14) - L14, true, true) → M14
  128. Text(G15, (2 * J15) - L15, true, true) → M15
  129. Text(G16, (2 * J16) - L16, true, true) → M16
  130. Sequence(Segment[(0, (2 * i)), (8, (2 * i))], i, 0, 4) → vGrid
  131. Sequence(Segment[((2 * i), 0), ((2 * i), 8)], i, 0, 4) → hGrid
  132. Sequence("SetConditionToShowObject[M" + (i) + ", N" + (i) + " || O" + (i) + "]", i, 1, 16) → command1
  133. Sequence("SetDynamicColor[I" + (i) + ", If[N" + (i) + " || O" + (i) + ", 0, 0.8], If[N" + (i) + "|| O" + (i) + ", N" + (i) + ", 0.8], If[N" + (i) + " || O" + (i) + ", O" + (i) + ", 0.8]]", i, 1, 16) → command2
  134. Sum(N1:N16) → N18