Adding Decimal Numbers and Shortest Path Strategies

Adding Decimal Numbers and Shortest Path Strategies
Loading the math board and drawing, please wait…
2025-06-11 21:48
In collections Arithmetic and Algebra
This GeoGebra activity demonstrates how to combine addition of positive decimal numbers with strategic reasoning to determine a shortest route in a given network. It highlights the idea that path length can be modeled as the sum of decimal edge weights and that comparing sums across candidate routes leads to an optimal (shortest) choice. The core concepts include arithmetic operations on positive decimals, accumulation of quantities along paths, and optimization by selecting the minimum among feasible route strategies. Construction uses GeoGebra commands reflected in the provided command set: Shuffle, Random, and RandomElement to randomize questions/parameters; Textfield to enter and display decimal values; Segment and Polyline/Polygon to create edges and candidate paths; Element and If to manage conditional logic such as feasibility checks and shortest-route selection; Midpoint to generate intermediate points when needed; Corner and onboarding text/offset helpers to structure the on-screen instructions. It is suitable for secondary school (advanced) through early university learners, particularly for lessons that connect arithmetic skills with optimal strategy thinking and basic modeling of network paths.

GeoGebra Commands & Parameters

  1. Shuffle({1, 2}) → allCaseNum, {2, 1}
  2. Element(allCaseNum, Mod[countQuestion, Length[allCaseNum]] + 1) → caseNum
  3. If(caseNum ≟ 1, (-11, 0), (-9, 4)) → A
  4. If(caseNum ≟ 1, (-4, -5), (-5, -5)) → B
  5. If(caseNum ≟ 1, (-2, 5), (3, 0)) → C
  6. If(caseNum ≟ 1, (5, -1), (7, 6)) → D
  7. If(caseNum ≟ 1, (10, -7), (10, -8)) → E
  8. Shuffle({1, 2, 3}) → allGivenQuest, {1, 3, 2}
  9. Element(allGivenQuest, Mod[countQuestion, Length[allGivenQuest]] + 1) → givenQuest
  10. Segment(A, If[caseNum ≟ 1, C, B]) → s1
  11. Segment(If[caseNum ≟ 1, A, C], B) → s2
  12. Segment(If[caseNum ≟ 1, B, C], D) → s3
  13. Segment(C, If[caseNum ≟ 1, D, E]) → s4
  14. Segment(D, E) → s5
  15. Random(7, 12) → varN
  16. Random(5, 10) → varA
  17. Random(2, 29) → decN5
  18. Shuffle({"Mattia", "Teo", "Andrea", "Roberto", "Chiara"}) → allFriends, {"Mattia", "Andrea", "Roberto", "Chiara", "Teo"}
  19. Random(10, 13) → varB
  20. Random(1, 99) → decN
  21. RandomElement(allDecN1) → decN1
  22. RandomElement(allDecN2) → decN2
  23. Shuffle(Join[Sequence[Sequence[(j, k), j, -4, 4, 1], k, -4, 4, 1]]) → startGrid, {(0, 0), (-2, 4), (2, -2), (-4, 3), (2, 3), (0, -4), (-3, -3), (-1, 4), (-3, -1), (1, 4), (-4, -1), (-4, -2), (-2, 0), (4, -3), (-2, 3), (4, -4), (-1, -2), (-4, -3), (-1, 1), (0, 3), (1, -1), (3, 2), (-1, 2), (-2, -2), (0, -2), (4, 3), (4, -2), (-1, -3), (-4, 0), (1, 2), (3, -3), (3, -2), (0, 4), (3, -1), (-2, -1), (-3, -2), (2, 4), (3, 1), (0, 2), (3, 4), (-3, 4), (0, 1), (3, 3), (2, -1), (-2, -3), (-1, 0), (2, -4), (-1, 3), (-1, -4), (-4, 1), (-4, 2), (-2, -4), (4, 2), (3, 0), (1, -3), (1, 3), (2, 1), (-3, 2), (-3, -4), (2, 2), (-2, 2), (4, 1), (-1, -1), (0, -3), (-3, 3), (4, 4), (-4, -4), (-2, 1), (2, 0), (2, -3), (1, 1), (1, -2), (-4, 4), (1, -4), (4, 0), (4, -1), (3, -4), (1, 0), (0, -1), (-3, 1), (-3, 0)}
  24. Element(allFriends, Mod[countQuestion, Length[allFriends]] + 1) → startFriend
  25. RandomElement(allDecN3) → decN3
  26. RandomElement(allDecN4) → decN4
  27. Textfield(inputB) → InputBoxB
  28. Corner(5) → layoutAppSize
  29. onboardingTextOffset(Corner[onboardingText, 1], Corner[onboardingText, 3], onboardingCase, Corner[1], Corner[3], Corner[5]) → OnboardingTextOffset
  30. Textfield(inputA) → InputBoxA
  31. Textfield(inputC) → InputBoxC
  32. Polygon(P1, Mirror[P1, yAxis], Mirror[P1, (0, 0)], Mirror[P1, xAxis]) → peep, p1, f, g, h
  33. Segment((-10.8, 0), (10.8, 0)) → fakeX
  34. Segment((0, -10.8), (0, 10.8)) → fakeY
  35. If(givenQuest ≟ 2 ∧ caseNum ≟ 2, E + (-1, 0), givenQuest ≟ 2 ∧ caseNum ≟ 1, E + (-1, 0), E + (1, 0)) → PLABE
  36. If(givenQuest ≟ 2 ∧ caseNum ≟ 2, A + (-1.5, 0), givenQuest ≟ 2 ∧ caseNum ≟ 1, A + (-1, 0), A + (1, 0)) → PLABA
  37. If(givenQuest ≟ 2 ∧ caseNum ≟ 2, B + (-1, 0), givenQuest ≟ 2 ∧ caseNum ≟ 1, B + (-0.2, 0), B + (1, 0)) → PLABB
  38. If(givenQuest ≟ 2 ∧ caseNum ≟ 2, D + (-1, 0.2), givenQuest ≟ 2 ∧ caseNum ≟ 1, D + (-1, 0.5), D) → PLABD
  39. If(givenQuest ≟ 2 ∧ caseNum ≟ 2, C + (-1, 0), givenQuest ≟ 2 ∧ caseNum ≟ 1, C + (1, 0), C + (2.5, 0)) → PLABC
  40. Midpoint(s5) → PLABS5
  41. PolyLine({A, C, D, E}) → solPath11
  42. PolyLine({A, B, D, E}) → solPath12
  43. PolyLine({A, B, C, D, E}) → solPath21
  44. PolyLine({A, B, C, E}) → solPath22

AI Drawing Prompt Reference

Create a coordinate-plane network diagram for shortest-path thinking. Place five main nodes at specific coordinate positions, then connect them according to conditional choices so the edges form a connected graph. Draw multiple candidate routes as polylines from the start node to the end node: include routes that go through different intermediate points and share some segments while differing on other parts. Ensure the shared and differing portions are clearly reflected in the polyline geometry, keeping all connections consistent with the underlying node layout for each constructed path.
The prompt above was compiled from the original drawing commands and is for reference only.