Sorting Multiple Numbers

Sorting Multiple Numbers
Loading the math board and drawing, please wait…
2024-06-13 18:24
This example demonstrates how to compare and sort multiple integers. Students can answer questions by selecting the correct sorting sequence. The core math concepts involved are the comparison and sorting of integers. The construction points include using GeoGebra's Sequence and Sort commands to create and sort integer sequences. This example is suitable for middle school math education, particularly for learning integers and comparison.

GeoGebra Commands & Parameters

  1. Sequence(Random[1, 10], i, 1, 10) → randomNumbers, {2, 4, 6, 5, 6, 4, 1, 9, 10, 8}
  2. Element(randomNumbers, Mod[questionCount, Length[randomNumbers]] + 1) → randomNumber
  3. Textfield(input) → inputBox
  4. Join({Reverse[Sequence[Origin - (k * ((lengthAxis1 / ((2 * anzahl1)) * 1), 0)), k, 1, anzahl1 / 1]], Sequence[Origin + (k * ((lengthAxis1 / ((2 * anzahl1)) * 1), 0)), k, 0, anzahl1 / 1]}) → PointAxisList
  5. Sequence((-floor((1 * anzahl1 / 1))) + (k * 1), k, 0, floor((anzahl1 * 2 / 1))) → NumberList, {-8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8}
  6. Join({PointAxisList, Sequence[Origin + (((-lengthAxis1)) / 2, 1) + (k * (lengthAxis1 / ((2 * anzahl1)), 0)), k, 0, 5]}) → PosListPoints
  7. Point(PosListPoints) → Point31
  8. Point(PosListPoints) → Point32
  9. Point(PosListPoints) → Point34
  10. Point(PosListPoints) → Point35
  11. Point(PosListPoints) → Point36
  12. Sort({number31, number32, number33, number34, number35, number36}) → Number3List
  13. Join({Reverse[Sequence[Origin7 - (k * ((lengthAxis1 / ((2 * anzahl7)) * strichabstand), 0)), k, 1, anzahl7 / strichabstand]], Sequence[Origin7 + (k * ((lengthAxis1 / ((2 * anzahl7)) * strichabstand), 0)), k, 0, anzahl7 / strichabstand]}) → PointAxisList7
  14. Join({PointAxisList7, Sequence[Origin + (((-lengthAxis1)) / 2, 1) + (k * (lengthAxis1 / 20, 0)), k, 0, 5]}) → PosListPoints7
  15. Point(PosListPoints7) → Point71
  16. Point(PosListPoints7) → Point72
  17. Point(PosListPoints7) → Point74
  18. Point(PosListPoints7) → Point75
  19. Point(PosListPoints7) → Point76
  20. Sequence((-floor((schrittweite * anzahl7 / strichabstand))) + (k * schrittweite), k, 0, floor((anzahl7 * 2 / strichabstand))) → NumberList7, {-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
  21. Point(PosListPoints) → Point33
  22. Reverse(Sort[{number71, number72, number73, number74, number75, number76}]) → Number7List
  23. Point(PosListPoints7) → Point73
  24. If(step ≟ 3, correct31 ∧ correct32 ∧ correct33 ∧ correct34 ∧ correct35 ∧ correct36, step ≟ 4, correct41 ∧ correct42 ∧ correct43 ∧ correct44 ∧ correct45 ∧ correct46, step ≟ 7, correct71 ∧ correct72 ∧ correct73 ∧ correct74 ∧ correct75 ∧ correct76, step ≟ 8, correct81 ∧ correct82 ∧ correct83 ∧ correct84 ∧ correct85 ∧ correct86, true) → clickableBtnNext
  25. Segment(Origin + (((-lengthAxis1)) / 2 - edge, 0), Origin + (lengthAxis1 / 2 + edge, 0)) → Axis1
  26. Sequence(Text[(("\textsf{\(" * NumberList(k)) * "\)}"), PointAxisList(k) + (If[NumberList(k) < 0, -0.17, 0], ((-lengthSeg)) / 2), false, true, 0, -1], k, 1, Length[NumberList]) → CapAxis
  27. Sequence(Segment[PointAxisList(k) + (0, ((-lengthSeg)) / 2), PointAxisList(k) + (0, lengthSeg / 2)], k, 1, Length[PointAxisList]) → SegList
  28. Textfield(input41) → InputBox41
  29. Textfield(input43) → InputBox43
  30. Textfield(input42) → InputBox42
  31. Textfield(input44) → InputBox44
  32. Textfield(input45) → InputBox45
  33. Textfield(input46) → InputBox46
  34. Sequence(Text["\textsf{<}", PosInputBoxes + ((k * 1.7), -0.225), false, true, 0, 0], k, 1, 5) → SymbList4
  35. Textfield(input81) → InputBox81
  36. Textfield(input82) → InputBox82
  37. Textfield(input83) → InputBox83
  38. Textfield(input84) → InputBox84
  39. Textfield(input85) → InputBox85
  40. Textfield(input86) → InputBox86
  41. SelectedIndex(dropdown101) → index101
  42. SelectedIndex(dropdown102) → index102
  43. SelectedIndex(dropdown103) → index103
  44. Segment(Origin10 + (((-lengthAxis10)) / 2 - edge, 0), Origin10 + (lengthAxis10 / 2 + edge, 0)) → Axis10
  45. Join({Reverse[Sequence[Origin10 - (k * (lengthAxis10 / ((2 * anzahl10)), 0)), k, 1, anzahl10]], Sequence[Origin10 + (k * (lengthAxis10 / ((2 * anzahl10)), 0)), k, 0, anzahl10]}) → PointAxisList10
  46. Text("\textsf{Beispiel:}", PointAxisList10(1) + ((-3 * edge), 0.075), false, true, -1, 0) → txt101
  47. Sequence(Text[(("\textsf{\(" * NumberList10(k)) * "\)}"), PointAxisList10(k) + (If[NumberList10(k) < 0, -0.17, 0], ((-lengthSeg)) / 2), false, true, 0, -1], k, 1, Length[NumberList10]) → CapAxis10
  48. Sequence(Segment[PointAxisList10(k) + (0, ((-lengthSeg)) / 2), PointAxisList10(k) + (0, lengthSeg / 2)], k, 1, Length[PointAxisList10]) → SegList10
  49. Sequence(Text[(((("\textsf{" * If[NumberList10(k) ∈ {-3, -1, 0, 2}, "\bold{", "{"]) * "\(") * NumberList10(k)) * "\)}}"), PointAxisList10(k) + (If[NumberList10(k) < 0, -0.17, 0], ((-lengthSeg)) / 2), false, true, 0, -1], k, 1, Length[NumberList10]) → l1
  50. Sequence(Text[(((((("\textsf{" * If[NumberList10(k) ∈ {-3, -1, 0, 2}, "\bold{", "{"]) * "\textcolor{") * If[NumberList10(k) ≟ -3, orange, NumberList10(k) ≟ -1, green, NumberList10(k) ≟ 0, olive, NumberList10(k) ≟ 2, blue, "#000000"]) * "}{\(") * NumberList10(k)) * "\)}}}"), PointAxisList10(k) + (If[NumberList10(k) < 0, -0.17, 0], ((-lengthSeg)) / 2 + If[NumberList10(k) < 0, -0.04, 0]), false, true, 0, -1], k, 1, Length[NumberList10]) → l2
  51. Last(PosListPoints, 6) → ParkPos
  52. Polygon({(0.38, 3.68), (3.88, 3.68), (3.88, 4.58), (0.38, 4.58)} + (10.68, 0.3)) → PolyHelp
  53. Polygon({(0.38, 3.68), (3.88, 3.68), (3.88, 4.58), (0.38, 4.58)} + (10.68, 0.3)) → PolyHelp8
  54. Segment(Origin7 + (((-lengthAxis1)) / 2 - edge, 0), Origin7 + (lengthAxis1 / 2 + edge, 0)) → Axis7
  55. Sequence(Segment[PointAxisList7(k) + (0, ((-lengthSeg)) / 2), PointAxisList7(k) + (0, lengthSeg / 2)], k, 1, Length[PointAxisList7]) → SegList7
  56. Sequence(Text[(("\textsf{\(" * NumberList7(k)) * "\)}"), PointAxisList7(k) + (If[NumberList7(k) < 0, -0.17, 0], ((-lengthSeg)) / 2), false, true, 0, -1], k, 1, Length[NumberList7]) → CapAxis7
  57. Last(PosListPoints7, 6) → ParkPos7
  58. PolyLine(PosSB, Corner[txt021, 2] + (-0.5, 0), Corner[txt021, 1] + (-0.05, 0), Corner[txt021, 4] + (-0.05, 0.1), Corner[txt021, 3] + (0, 0.1), Corner[txt021, 3] + (0, -0.5), PosSB) → sb02
  59. PolyLine(PosSB, Corner[txt031, 2] + (-0.5, 0), Corner[txt031, 1] + (-0.05, 0), Corner[txt031, 4] + (-0.05, 0.1), Corner[txt031, 3] + (0, 0.1), Corner[txt031, 3] + (0, -0.5), PosSB) → sb03
  60. Text((((("\textsf{\textcolor{" * color1) * "}{\small{\(") * number31) * "\)}}}"), Point31 + (If[number31 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP31
  61. Text((((("\textsf{\textcolor{" * color2) * "}{\small{\(") * number32) * "\)}}}"), Point32 + (If[number32 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP32
  62. Text((((("\textsf{\textcolor{" * color3) * "}{\small{\(") * number33) * "\)}}}"), Point33 + (If[number33 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP33
  63. Text((((("\textsf{\textcolor{" * color4) * "}{\small{\(") * number34) * "\)}}}"), Point34 + (If[number34 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP34
  64. Text((((("\textsf{\textcolor{" * color5) * "}{\small{\(") * number35) * "\)}}}"), Point35 + (If[number35 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP35
  65. Text((((("\textsf{\textcolor{" * color6) * "}{\small{\(") * number36) * "\)}}}"), Point36 + (If[number36 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP36
  66. If(step ≟ 3, Length[Unique[{Point31, Point32, Point33, Point34, Point35, Point36}]] < 6, step ≟ 7, Length[Unique[{Point71, Point72, Point73, Point74, Point75, Point76}]] < 6, false) → double
  67. PolyLine(PosSB, Corner[txt041, 2] + (-0.5, 0), Corner[txt041, 1] + (-0.05, 0), Corner[txt041, 4] + (-0.05, 0.1), Corner[txt041, 3] + (0, 0.1), Corner[txt041, 3] + (0, -0.5), PosSB) → sb04
  68. PolyLine(PosSB, Corner[txt051, 2] + (0, 0.5), Corner[txt051, 2], Corner[txt051, 1] + (-0.05, 0), Corner[txt051, 4] + (-0.05, 0.1), Corner[txt051, 3] + (0, 0.1), Corner[txt051, 3] + (0, -0.5), PosSB) → sb05
  69. PolyLine(PosSB, Corner[txt062, 2] + (-0.5, 0), Corner[txt062, 1] + (-0.05, 0), Corner[txt062, 4] + (-0.05, 0.1), Corner[txt062, 3] + (0, 0.1), Corner[txt062, 3] + (0, -0.5), PosSB) → sb06
  70. PolyLine(PosSB, Corner[txt071, 2] + (-0.5, 0), Corner[txt071, 1] + (-0.05, 0), Corner[txt071, 4] + (-0.05, 0.1), Corner[txt071, 3] + (0, 0.1), Corner[txt071, 3] + (0, -0.5), PosSB) → sb07
  71. Text((((("\textsf{\textcolor{" * color1) * "}{\small{\(") * number71) * "\)}}}"), Point71 + (If[number71 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP71
  72. Text((((("\textsf{\textcolor{" * color2) * "}{\small{\(") * number72) * "\)}}}"), Point72 + (If[number72 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP72
  73. Text((((("\textsf{\textcolor{" * color3) * "}{\small{\(") * number73) * "\)}}}"), Point73 + (If[number73 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP73
  74. Text((((("\textsf{\textcolor{" * color4) * "}{\small{\(") * number74) * "\)}}}"), Point74 + (If[number74 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP74
  75. Text((((("\textsf{\textcolor{" * color5) * "}{\small{\(") * number75) * "\)}}}"), Point75 + (If[number75 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP75
  76. Text((((("\textsf{\textcolor{" * color6) * "}{\small{\(") * number76) * "\)}}}"), Point76 + (If[number76 < 0, -0.12, 0], 0.05), false, true, 0, 1) → capP76
  77. PolyLine(PosSB, Corner[txt081, 2] + (-0.5, 0), Corner[txt081, 1] + (-0.05, 0), Corner[txt081, 4] + (-0.05, 0.1), Corner[txt081, 3] + (0, 0.1), Corner[txt081, 3] + (0, -0.5), PosSB) → sb08
  78. Sequence(Text["\textsf{>}", PosInputBoxes + ((k * 1.7), -0.225), false, true, 0, 0], k, 1, 5) → SymbList8
  79. PolyLine(PosSB, Corner[txt091, 2] + (0, 0.5), Corner[txt091, 2], Corner[txt091, 1] + (-0.05, 0), Corner[txt091, 4] + (-0.05, 0.1), Corner[txt091, 3] + (0, 0.1), Corner[txt091, 3] + (0, -0.5), PosSB) → sb09
  80. PolyLine(PosSB + (0, 0.25), Corner[txtInfo, 2] + (0, 0.5), Corner[txtInfo, 2], Corner[txtInfo, 1] + (-0.05, 0), Corner[txtInfo, 4] + (-0.05, 0.1), Corner[txtInfo, 3] + (0, 0.1), Corner[txtInfo, 3] + (0, -2.5), PosSB + (0, 0.25)) → sb10

AI Drawing Prompt Reference

Draw an interactive number line teaching graphic for integer sorting practice. In the center of the画面, draw a horizontal number line with evenly spaced integer labels from negative eight to positive eight, and add vertical tick marks at each interval. Below the number line, mark six randomly selected points with numbers between one and ten, each point circled and the corresponding number labeled below it. Arrange six text input boxes from left to right below the graphic, each with a less-than symbol above as a hint, prompting students to fill in the sorted results of the six numbers they just saw in ascending order. At the very bottom of the graphic, place a submit button to check whether the answer is correct.
The prompt above was compiled from the original drawing commands and is for reference only.