Difference of Squares Demonstration

Difference of Squares Demonstration
Loading the math board and drawing, please wait…
2024-06-26 16:56
In collections Binomische Formeln
This example visually demonstrates the inequality between (a+b)² and a²+b² through interactive graphics; Key math concepts include difference of squares formula, algebraic operations, and polynomial expansion; Construction highlights involve commands like Sequence, Element, Textfield, PolyLine, Point, Sort, SelectedIndex, If, Segment, Text in GeoGebra for dynamic visualization; Suitable for 7th-8th grade students learning algebraic expressions and the difference of squares formula.

GeoGebra Commands & Parameters

  1. Sequence(Random[1, 10], i, 1, 10) → randomNumbers, {7, 4, 5, 4, 2, 7, 9, 1, 3, 9}
  2. Element(randomNumbers, Mod[questionCount, Length[randomNumbers]] + 1) → randomNumber
  3. Textfield(input071) → InputBox071
  4. Textfield(input072) → InputBox072
  5. Textfield(input131) → InputBox131
  6. Textfield(input132) → InputBox132
  7. Textfield(input141) → InputBox141
  8. Textfield(input171) → InputBox171
  9. Textfield(input172) → InputBox172
  10. Textfield(input181) → InputBox181
  11. Textfield(input182) → InputBox182
  12. Textfield(input183) → InputBox183
  13. Textfield(input184) → InputBox184
  14. Textfield(input) → inputBox
  15. PolyLine(PosSBR1, Corner[txt021, 2] + (-0.5, 0.1), Corner[txt021, 1] + (-0.1, 0.1), Corner[txt021, 4] + (-0.1, 0.1), Corner[txt021, 3] + (0, 0.1), Corner[txt021, 2] + (0, 0.5), PosSBR1) → sbR102
  16. PolyLine(PosSBL2, Corner[txt031, 4] + (0.5, 0.1), Corner[txt031, 3] + (0, 0.1), Corner[txt031, 2] + (0, 0.1), Corner[txt031, 1] + (-0.1, 0.1), Corner[txt031, 4] + (-0.1, -0.5), PosSBL2) → sbL203
  17. PolyLine(PosSBR1, Corner[txt041, 2] + (-0.5, 0.1), Corner[txt041, 1] + (-0.1, 0.1), Corner[txt041, 4] + (-0.1, 0.1), Corner[txt041, 3] + (0, 0.1), Corner[txt041, 2] + (0, 0.5), PosSBR1) → sbR104
  18. PolyLine(PosSBL2, Corner[txt051, 4] + (0.5, 0.1), Corner[txt051, 3] + (0, 0.1), Corner[txt051, 2] + (0, 0.1), Corner[txt051, 1] + (-0.1, 0.1), Corner[txt051, 4] + (-0.1, -0.5), PosSBL2) → sbL205
  19. PolyLine(PosSBL1, Corner[txt061, 1] + (0.5, 0.1), Corner[txt061, 2] + (0, 0.1), Corner[txt061, 3] + (0, 0.1), Corner[txt061, 4] + (-0.1, 0.1), Corner[txt061, 1] + (-0.1, 0.5), PosSBL1) → sbL106
  20. PolyLine(PosSBL1, Corner[txt071, 1] + (0.5, 0.1), Corner[txt071, 2] + (0, 0.1), Corner[txt071, 3] + (0, 0.1), Corner[txt071, 4] + (-0.1, 0.1), Corner[txt071, 1] + (-0.1, 0.5), PosSBL1) → sbL107
  21. PolyLine(PosSBL1, Corner[txt081, 1] + (0.5, 0.1), Corner[txt081, 2] + (0, 0.1), Corner[txt081, 3] + (0, 0.1), Corner[txt081, 4] + (-0.1, 0.1), Corner[txt081, 1] + (-0.1, 0.5), PosSBL1) → sbL108
  22. Textfield(input091) → InputBox091
  23. Textfield(input092) → InputBox092
  24. Textfield(input093) → InputBox093
  25. PolyLine(PosSBL1, Corner[txt101, 1] + (0.5, 0.1), Corner[txt101, 2] + (0, 0.1), Corner[txt101, 3] + (0, 0.1), Corner[txt101, 4] + (-0.1, 0.1), Corner[txt101, 1] + (-0.1, 0.5), PosSBL1) → sbL110
  26. Textfield(input101) → InputBox101
  27. PolyLine(PosSBL1, Corner[txt111, 1] + (0.5, 0.1), Corner[txt111, 2] + (0, 0.1), Corner[txt111, 3] + (0, 0.1), Corner[txt111, 4] + (-0.1, 0.1), Corner[txt111, 1] + (-0.1, 0.5), PosSBL1) → sbL111
  28. PolyLine(PosSBR1, Corner[txt121, 2] + (-0.5, 0.1), Corner[txt121, 1] + (-0.1, 0.1), Corner[txt121, 4] + (-0.1, 0.1), Corner[txt121, 3] + (0, 0.1), Corner[txt121, 2] + (0, 0.5), PosSBR1) → sbR112
  29. PolyLine(PosSBL2 + (0, 0.35), Corner[txt141, 1] + (-0.1, 0.5), Corner[txt141, 1] + (-0.1, 0.1), Corner[txt141, 2] + (0, 0.1), Corner[txt141, 3] + (0, 0.1), Corner[txt141, 4] + (-0.1, 0.1), Corner[txt141, 1] + (-0.1, 1), PosSBL2 + (0, 0.35)) → sbL114
  30. PolyLine(PosSBL1, Corner[txt151, 1] + (0.5, 0.1), Corner[txt151, 2] + (0, 0.1), Corner[txt151, 3] + (0, 0.1), Corner[txt151, 4] + (-0.1, 0.1), Corner[txt151, 1] + (-0.1, 0.5), PosSBL1) → sbL115
  31. PolyLine(PosSBL1, Corner[txt171, 1] + (0.5, 0.1), Corner[txt171, 2] + (0, 0.1), Corner[txt171, 3] + (0, 0.1), Corner[txt171, 4] + (-0.1, 0.1), Corner[txt171, 1] + (-0.1, 0.5), PosSBL1) → sbL117
  32. Sequence(PosD + (k * (PosA - PosD) / (number1 + number2)), k, 0, number1 + number2) → PointsP
  33. Point(PointsP) → PosP
  34. PolyLine(PosSBL1, Corner[txt181, 1] + (0.5, 0.1), Corner[txt181, 2] + (0, 0.1), Corner[txt181, 3] + (0, 0.1), Corner[txt181, 4] + (-0.1, 0.1), Corner[txt181, 1] + (-0.1, 0.5), PosSBL1) → sbL118
  35. Textfield(input191) → InputBox191
  36. Textfield(input192) → InputBox192
  37. Textfield(input193) → InputBox193
  38. PolyLine(PosSBL1, Corner[txt201, 1] + (0.5, 0.1), Corner[txt201, 2] + (0, 0.1), Corner[txt201, 3] + (0, 0.1), Corner[txt201, 4] + (-0.1, 0.1), Corner[txt201, 1] + (-0.1, 0.5), PosSBL1) → sbL120
  39. PolyLine(PosSBL1, Corner[txt211_{1}, 1] + (0.5, 0.1), Corner[txt211_{1}, 2] + (0, 0.1), Corner[txt211_{1}, 3] + (0, 0.1), Corner[txt211_{1}, 4] + (-0.1, 0.1), Corner[txt211_{1}, 1] + (-0.1, 0.5), PosSBL1) → sbL121_{1}
  40. PolyLine(PosSBR2, Corner[txt221, 3] + (-0.5, 0.1), Corner[txt221, 4] + (-0.1, 0.1), Corner[txt221, 1] + (-0.1, 0.1), Corner[txt221, 2] + (0, 0.1), Corner[txt221, 2] + (0, 0.5), PosSBR2) → sbR222
  41. Sort({"$\textsf{Wähle aus!\phantom{g}}$", "$\textsf{jeweils quadriert habe.\phantom{W}}$", "$\textsf{miteinander multipliziert habe.\phantom{W}}$", "$\textsf{miteinander addiert habe.\phantom{W}}$"}, Order041) → dropdown041
  42. SelectedIndex(dropdown041) → index041
  43. Sort({"$\textsf{\phantom{2ab²g}}$", "$\textsf{2ab\phantom{g²}}$", "$\textsf{a²\phantom{gb}}$", "$\textsf{b²\phantom{gb}}$"}, Order091) → dropdown091
  44. SelectedIndex(dropdown091) → index091
  45. Textfield(input231) → InputBox231
  46. Textfield(input232) → InputBox232
  47. If(step ≟ 23, correct231 ∧ correct232, step ≟ 13, correct131 ∧ correct132 ∧ correct141, step ≟ 14, correct142 ∧ correct143, step ≟ 16, movedSlider1 ∧ movedSlider2 ∧ number1 ≠ number2, step ≟ 17, correct171 ∧ correct172, step ≟ 18, correct181 ∧ correct182 ∧ correct183 ∧ correct071, step ≟ 4, step ≟ 19, correct191 ∧ correct192 ∧ correct193, true, correctdd041, step ≟ 7, PosP ≟ PosA ∧ correct072, step ≟ 9, correctdd091, step ≟ 10, correct101) → clickableBtnNext
  48. PolyLine(PosSBL1 + (0, 0.5), Corner[txt163, 1] + (0.5, 0.1), Corner[txt163, 2] + (0, 0.1), Corner[txt163, 3] + (0, 0.1), Corner[txt163, 4] + (-0.1, 0.1), Corner[txt163, 1] + (-0.1, 0.5), PosSBL1 + (0, 0.5)) → sbL116
  49. PolyLine(PosSBL1, Corner[txt231, 1] + (0.5, -0.1), Corner[txt231, 2] + (0, -0.1), Corner[txt231, 3] + (0, 0.1), Corner[txt231, 4] + (-0.1, 0.1), Corner[txt231, 1] + (-0.1, 0.5), PosSBL1) → sbL231
  50. PolyLine(PosSBL1, Corner[txt211, 1] + (0.5, 0.1), Corner[txt211, 2] + (0, 0.1), Corner[txt211, 3] + (0, 0.1), Corner[txt211, 4] + (-0.1, 0.1), Corner[txt211, 1] + (-0.1, 0.5), PosSBL1) → sbL121
  51. Segment(PosD + (0, disQ1), PosG + (0, disQ1)) → segQ1
  52. Segment(PosC + (0, disQ1), PosG + (0, disQ1)) → segQ2
  53. Segment(PosD + (0, disQ1 + 0.65), PosC + (0, disQ1 + 0.65)) → segQ3
  54. Segment(PosD + ((-disQ1), 0), PosH + ((-disQ1), 0)) → segQ4
  55. Segment(PosA + ((-disQ1), 0), PosH + ((-disQ1), 0)) → segQ5
  56. Segment(PosA + ((-disQ1) - 0.75, 0), PosD + ((-disQ1) - 0.75, 0)) → segQ6
  57. Segment(PosG, (x(PosG), y(PosP))) → segQU1
  58. Segment(PosH, PosF) → segQU2
  59. Text(If[PosP ≠ PosA, "\textsf{\textcolor{#50c1ce}{\bold{\begin{array}{c}Zieh mich!\\↓\end{array}}}}", ""], PosP, false, true, 1, -1) → CapZiehMich07
  60. Sequence(Segment[PosD + (k / (number1 + number2) * (dimQ, 0)), PosP + (k / (number1 + number2) * (dimQ, 0))], k, 1, number1 + number2 - 1) → gitterQ1
  61. Sequence(Segment[PosD + (k / (number1 + number2) * (0, (-dimQ))), PosC + (k / (number1 + number2) * (0, (-dimQ)))], k, 1, IndexOf[PosP, PointsP] - 1) → gitterQ2
  62. Textfield(input142) → InputBox142
  63. Textfield(input143) → InputBox143
  64. PolyLine(PosSBL2 + (0.25, 0.75), Corner[txt131, 1] + (0.25, 0.1), Corner[txt131, 2] + (0, 0.1), Corner[txt131, 3] + (0, 0.1), Corner[txt131, 4] + (-0.1, 0.1), Corner[txt131, 1] + (-0.1, 0.5), PosSBL2 + (0.25, 0.75)) → sbL113
  65. PolyLine(PosSBL2 + (0.25, 0.75), Corner[txt143, 1] + (0.25, 0.1), Corner[txt143, 2] + (0, 0.1), Corner[txt143, 3] + (0, 0.1), Corner[txt143, 4] + (-0.1, 0.1), Corner[txt143, 1] + (-0.1, 0.5), PosSBL2 + (0.25, 0.75)) → sbL14
  66. Text("\textsf{Toni}", Midpoint[PosImgAlex1, PosImgAlex2] + (0, 0.05), false, true, 0, -1) → CapAlex
  67. Text("\textsf{Alex}", Midpoint[PosImgToni1, PosImgToni2] + (0, 0.05), false, true, 0, -1) → CapToni
  68. PolyLine(PosSBL1 + (0, -0.5), Corner[txt091, 1] + (0.5, 0.1), Corner[txt091, 2] + (0, 0.1), Corner[txt091, 3] + (0, 0.1), Corner[txt091, 4] + (-0.1, 0.1), Corner[txt091, 1] + (-0.1, 0.5), PosSBL1 + (0, -0.5)) → sbL109
  69. If(step ≟ 7, attemptCount072 ≥ 3 ∧ (¬correct072) ∧ Defined[input072], step ≟ 17, attemptCount17 ≥ 2 ∧ ((¬correct171) ∧ Defined[input171] ∨ (¬correct172) ∧ Defined[input172]), step ≟ 18, (¬correct181) ∧ Defined[input181] ∧ attemptCount181 ≥ 3 ∨ (¬correct182) ∧ Defined[input182] ∧ attemptCount182 ≥ 3 ∨ (¬correct183) ∧ Defined[input183] ∧ attemptCount183 ≥ 3 ∨ attemptCount07 ≥ 3 ∧ Defined[input071] ∧ (¬correct071) ∧ correct181 ∧ correct182 ∧ correct183, step ≟ 19 ∧ correct191 ∧ correct192, attemptCount192 ≥ 3 ∧ (¬correct193) ∧ Defined[input193], step ≟ 19, attemptCount19 ≥ 3 ∧ ((¬correct191) ∧ Defined[input191] ∨ (¬correct192) ∧ Defined[input192]), step ≟ 23, attemptCount23 ≥ 2 ∧ Defined[input231] ∧ Defined[input232] ∧ ((¬correct231) ∨ (¬correct232)), step ≟ 9, false, attemptCount09 ≥ 3 ∧ ((¬correct091) ∧ Defined[input091] ∨ (¬correct092) ∧ Defined[input092] ∨ (¬correct093) ∧ Defined[input093]), step ≟ 10, attemptCount10 ≥ 2 ∧ (¬correct101) ∧ Defined[input101], step ≟ 13, attemptCount13 ≥ 3 ∧ ((¬correct131) ∧ Defined[input131] ∨ (¬correct132) ∧ Defined[input132]) ∨ attemptCount14 ≥ 3 ∧ Defined[input141] ∧ correct131 ∧ correct132 ∧ (¬correct141), step ≟ 14, (¬correct142) ∧ Defined[input142] ∧ attemptCount142 ≥ 3 ∨ (¬correct143) ∧ Defined[input143] ∧ attemptCount143 ≥ 3) → showBtnShowSolution

AI Drawing Prompt Reference

Draw a difference of squares demonstration with two movable points A and B, and their coordinate input boxes. Point A has coordinates (a, b), and point B has coordinates (a+b, b). Input values for a and b to dynamically show (a+b)² and a²+b², and connect points A and B with a line segment. Also, display the result of (a+b)² - a² - b² and show the calculation process in text boxes.
The prompt above was compiled from the original drawing commands and is for reference only.