Square Roots

Square Roots
Loading the math board and drawing, please wait…
2025-11-26 03:42
This example demonstrates the concept of square roots. It involves core mathematical concepts such as roots and real numbers. Using GeoGebra commands like Sequence, Element, Textfield, etc., users can explore the properties of square roots. Suitable for middle school and above students to learn about square roots.

GeoGebra Commands & Parameters

  1. Sequence(Random[1, 10], i, 1, 10) → randomNumbers, {5, 10, 4, 7, 2, 3, 6, 3, 1, 6}
  2. Element(randomNumbers, Mod[questionCount, Length[randomNumbers]] + 1) → randomNumber
  3. Textfield(input) → inputBox
  4. Join({Sequence[Segment[Corner[4] + (RasterPixMat * ((k * RasterStepXY), 0)), Corner[4] + (RasterPixMat * ((k * RasterStepXY), RasterMaxY))], k, 0, RasterMaxX / RasterStepXY], Sequence[Segment[Corner[4] + (RasterPixMat * (0, (k * RasterStepXY))), Corner[4] + (RasterPixMat * (RasterMaxX, (k * RasterStepXY)))], k, 0, RasterMaxY / RasterStepXY]}) → RasterStrecken
  5. Join({Sequence[Text[UnicodeToLetter[65 + k], Midpoint[Corner[4] + (RasterPixMat * ((k * RasterStepXY), RasterMaxY)), Corner[4] + (RasterPixMat * (((k + 1) * RasterStepXY), RasterMaxY))], false, true, 0, -1], k, 0, RasterMaxX / RasterStepXY - 1], Sequence[Text[("" * k), Midpoint[Corner[4] + (RasterPixMat * (RasterMaxX, ((k - 1) * RasterStepXY))), Corner[4] + (RasterPixMat * (RasterMaxX, (k * RasterStepXY)))], false, true, 1, 0], k, 1, RasterMaxY / RasterStepXY]}) → RasterBeschriftung
  6. Sequence(Sequence[Corner[4] + (RasterPixMat * ((k * RasterStepXY), (m * RasterStepXY))), k, 0, RasterMaxX / RasterStepXY], m, 0, RasterMaxY / RasterStepXY) → RasterPunkte
  7. SelectedIndex(dropdown051) → index051
  8. Sequence(InputQList(k) ≟ SolutionQList(k), k, 1, Length[InputQList]) → CorrectQList
  9. Sequence(Sequence[Polygon[PosQ01 - ((2.5 * disQ), (2.5 * disQ)) + ((k * (dimQ + disQ)), (m * (dimQ + disQ))) + (dimQ * {(0, 0), (0, 1), (1, 1), (1, 0)})], k, 0, 5], m, 0, 5) → polyQ06
  10. If(step ≟ 9, (5.1, 4.75), (8.6, 5.85)) → Pos1
  11. Angle(MP1 + (1, 0), MP1, Pos1) → angle11
  12. Angle(MP1 + (1, 0), MP1, Pos2) → angle12
  13. CircleArc(MP1, MP1 + (Distance[MP1, Pos1] * (cos(angle12 + disAngle), sin(angle12 + disAngle))), MP1 + (Distance[MP1, Pos1] * (cos(angle11 - disAngle), sin(angle11 - disAngle)))) → arc01
  14. Mirror(arc01, Spiegelgerade) → arc02
  15. Text((("\textsf{\bold{\Large{" * If[step < 7, "6", step ≟ 7, "3", step ≟ 8, "1", "x\vphantom{x²}"]) * "}}}"), Pos1 + (0, If[step > 8, 0.15, 0]), false, true, 0, 0) → txt1
  16. Text((("\textsf{\bold{\Large{" * If[step < 7, "36", step ≟ 7, "9", step ≟ 8, "1", "x²"]) * "}}}"), Pos2 + (0, If[step > 8, 0.15, 0]), false, true, 0, 0) → txt2
  17. Segment(Point[arc01, 0], Point[arc01, 0] + (0.001 * UnitVector[Tangent[Point[arc01, 0], arc01]])) → arrow01
  18. Segment(Point[arc02, 1], Point[arc02, 1] + (0.001 * UnitVector[Tangent[Point[arc02, 1], arc02]])) → arrow02
  19. Translate(arc01, Vector[Pos1, Pos3]) → arc03
  20. Translate(arc02, Vector[Pos1, Pos3]) → arc04
  21. Translate(arrow01, Vector[Pos1, Pos3]) → arrow03
  22. Translate(arrow02, Vector[Pos1, Pos3]) → arrow04
  23. Translate(MP1, Vector[Pos1, Pos3]) → MP3
  24. Translate(MP2, Vector[Pos1, Pos3]) → MP4
  25. Text((("\textsf{\bold{\Large{" * If[step < 7, "6", step ≟ 7, "3", step ≟ 8, "1", "x\vphantom{x²}"]) * "}}}"), Pos3 + (0, If[step > 8, 0.15, 0]), false, true, 0, 0) → txt3
  26. Text((("\textsf{\bold{\Large{" * If[step < 7, "36", step ≟ 7, "9", step ≟ 8, "1", "x²"]) * "}}}"), Pos4 + (0, If[step > 8, 0.15, 0]), false, true, 0, 0) → txt4
  27. Text("\bold{\textsf{Quadrieren}}", MP4 + (0, 0.15), false, true, 0, 0) → txt7
  28. Text("\bold{\textsf{Quadratwurzelziehen}}", MP3 + (0, -0.15), false, true, 0, 0) → txt8
  29. Textfield(input021) → InputBox021
  30. Textfield(input051) → InputBox051
  31. Textfield(input052) → InputBox052
  32. Textfield(input061) → InputBox061
  33. Textfield(input062) → InputBox062
  34. Textfield(input071) → InputBox071
  35. Textfield(input072) → InputBox072
  36. Textfield(input081) → InputBox081
  37. Textfield(input082) → InputBox082
  38. Sequence(Sequence[Polygon[PosQ02 - ((2.5 * disQ), (2.5 * disQ)) + ((k * (dimQ + disQ)), (m * (dimQ + disQ))) + (dimQ * {(0, 0), (0, 1), (1, 1), (1, 0)})], k, 0, 2], m, 0, 2) → polyQ07
  39. Sequence(Sequence[Polygon[PosQ03 - ((2.5 * disQ), (2.5 * disQ)) + ((k * (dimQ + disQ)), (m * (dimQ + disQ))) + (dimQ * {(0, 0), (0, 1), (1, 1), (1, 0)})], k, 0, 0], m, 0, 0) → polyQ08
  40. Textfield(inputQ022) → InputBoxQ022
  41. Textfield(inputQ031) → InputBoxQ031
  42. Textfield(inputQ032) → InputBoxQ032
  43. Textfield(inputQ041) → InputBoxQ041
  44. Textfield(inputQ042) → InputBoxQ042
  45. Textfield(inputQ051) → InputBoxQ051
  46. Textfield(inputQ052) → InputBoxQ052
  47. Textfield(inputQ061) → InputBoxQ061
  48. Textfield(inputQ062) → InputBoxQ062
  49. Textfield(inputQ071) → InputBoxQ071
  50. Textfield(inputQ072) → InputBoxQ072
  51. Textfield(inputQ081) → InputBoxQ081
  52. Textfield(inputQ082) → InputBoxQ082
  53. Textfield(inputQ091) → InputBoxQ091
  54. Textfield(inputQ092) → InputBoxQ092
  55. Textfield(inputQ101) → InputBoxQ101
  56. Textfield(inputQ102) → InputBoxQ102
  57. Textfield(inputQ111) → InputBoxQ111
  58. Textfield(inputQ112) → InputBoxQ112
  59. Textfield(inputQ121) → InputBoxQ121
  60. Textfield(inputQ122) → InputBoxQ122
  61. Textfield(inputQ131) → InputBoxQ131
  62. Textfield(inputQ132) → InputBoxQ132
  63. Textfield(inputQ141) → InputBoxQ141
  64. Textfield(inputQ142) → InputBoxQ142
  65. Textfield(inputQ151) → InputBoxQ151
  66. Textfield(inputQ152) → InputBoxQ152
  67. If(step ≟ 2, correct021, step ≟ 3, anim03 ≟ Length[txtListAnim03], true, step ≟ 5, correct051 ∧ correct052 ∧ correct053 ∧ correctdd051, step ≟ 6, correct061 ∧ correct062, step ≟ 7, correct071 ∧ correct072, step ≟ 8, correct081 ∧ correct082) → clickableBtnNext
  68. Text("\textsf{\large{\bold{\textcolor{black}{A = 36 cm²}}}}", PosQ01 + (dimQ * (3, 3)), false, true, 0, 0) → CapQ01
  69. Segment(Vertex[polyQ01(1), 3] + (disSeg, 0), Vertex[polyQ01(1), 4] + (disSeg, 0)) → seg011
  70. Segment(Vertex[polyQ01(1), 1] + (0, (-disSeg)), Vertex[polyQ01(1), 4] + (0, (-disSeg))) → seg012
  71. Textfield(input053) → InputBox053
  72. Text("\textsf{\bold{\textcolor{black}{A = 9 cm²}}}", PosQ02 + (dimQ * (1.5, 1.5)), false, true, 0, 0) → CapQ02
  73. Text("\textsf{\bold{\textcolor{black}{A = 1 cm²}}}", PosQ03 + (dimQ * (0.5, 0.5)) + (-0.05, 0) + (0, dimQ), false, true, 0, 0) → CapQ03
  74. Text("\textsf{Quadratwurzelziehen}", MP1 - (0, 0.85), false, true, 0, 0) → CapOperation2
  75. Text("\textsf{Quadrieren}", MP2 + (0, 0.85), false, true, 0, 0) → CapOperation1
  76. Segment(Vertex[polyQ06(1, 6), 4] + (disSeg, 0), Vertex[polyQ06(6, 6), 3] + (disSeg, 0)) → seg061
  77. Segment(Vertex[polyQ06(1, 1), 1] + (0, (-disSeg)), Vertex[polyQ06(1, 6), 4] + (0, (-disSeg))) → seg062
  78. Segment(Vertex[polyQ07(1, 3), 4] + (disSeg, 0), Vertex[polyQ07(3, 3), 3] + (disSeg, 0)) → seg071
  79. Segment(Vertex[polyQ07(1, 1), 1] + (0, (-disSeg)), Vertex[polyQ07(1, 3), 4] + (0, (-disSeg))) → seg072
  80. Segment(Vertex[polyQ08(1, 1), 4] + (disSeg, 0), Vertex[polyQ08(1, 1), 3] + (disSeg, 0)) → seg081
  81. Segment(Vertex[polyQ08(1, 1), 1] + (0, (-disSeg)), Vertex[polyQ08(1, 1), 4] + (0, (-disSeg))) → seg082
  82. Text("\bold{\textsf{\begin{array}{c}Quadrieren\\x \cdot x = x²\end{array}}}", MP2 + (0, -0.5), false, true, 0, 1) → txt5
  83. Text("\bold{\textsf{\begin{array}{c}\sqrt{x²} = x\\Quadratwurzelziehen\vphantom{x²}\end{array}}}", MP1 + (0, 0.5), false, true, 0, -1) → txt6
  84. If(step ≟ 2, Corner[txt021, 1] + (0.5, -0.25), step ≟ 5, Corner[txt051, 1] + (4, -0.25), 6 ≤ step ≤ 8, Pos1 + (0.85, 0.25), step ≟ 10, Corner[txt102, 1] + (3.5, 0), (1, 1)) → PosShowSolution