Polygon Area Calculation and Algebraic Expression Application

Polygon Area Calculation and Algebraic Expression Application
Loading the math board and drawing, please wait…
2024-06-26 16:55
This example demonstrates how to calculate the area of a polygon and apply algebraic expressions to solve problems. Key mathematical concepts include area formulas, algebraic expansion and simplification. Construction involves using GeoGebra commands such as Point, Segment, and Join to create polygon shapes. Suitable for middle school students (grades 7-8) to develop skills in combining geometry a

GeoGebra Commands & Parameters

  1. Point(Line[Zettel1a, xAxis]) → Zettel2a
  2. Sequence(Zettel2a + (m * (0, (-zettelsize))), m, 0, 50) → listZettel2c
  3. Point(listZettel2c) → Zettel2d
  4. Sequence(Zettel1a + (m * (zettelsize, 0)), m, 0, 50) → listZettel1b
  5. Point(listZettel1b) → Zettel1b
  6. Point(Segment[Zettel2a, Zettel2PEnde]) → Zettel2P
  7. Sequence(Zettel1a + (m * (0, (-zettelsize))), m, 0, 50) → listZettel1c
  8. Point(listZettel1c) → Zettel1d
  9. Sequence(Zettel2a + (m * (zettelsize, 0)), m, 0, 50) → listZettel2b
  10. If(step < 5, 1, If[step < 8, 2, 3]) → exnum
  11. Flatten(Sequence[Sequence[P1 + (m * (size, 0)) + (j * (0, size)), m, 2, 9], j, 2, 5]) → listPoints1
  12. Point(listPoints1) → P2c
  13. Element({P2a, P2b, P2c}, exnum) → P2
  14. KeepIf(x(P) < x(P2c) ∧ y(P) < y(P2c), P, Flatten[Sequence[Sequence[P1 + (m * (size, 0)) + (j * (0, size)), m, 1, 8], j, 1, 4]]) → listPoints3
  15. Point(listPoints3) → P3c
  16. Flatten(Sequence[Sequence[P1 + (m * (size, 0)) + (j * (0, size)), m, 1, 6], j, 1, 3]) → listPoints2
  17. Point(listPoints2) → P3b
  18. Element({P3a, P3b, P3c}, exnum) → P3
  19. Segment(P2 + (streckenabs, 0), (x(P2) + streckenabs, y(P3))) → s4
  20. Segment((x(P2) + streckenabs, y(P3)), (x(P2) + streckenabs, y(P1))) → s3
  21. Segment((x(P3), y(P1) - streckenabs), (x(P2), y(P1) - streckenabs)) → s2
  22. Segment(P1 + (0, (-streckenabs)), (x(P3), y(P1) - streckenabs)) → s1
  23. UnicodeToText(Remove[TextToUnicode[input19], Sequence[32, m, 1, 100]]) → input19clean
  24. UnicodeToText(Remove[TextToUnicode[input20], Sequence[32, m, 1, 100]]) → input20clean
  25. Textfield(input1) → Eingabefeld1
  26. Textfield(input2) → Eingabefeld2
  27. Point(Line[Tr1, xAxis]) → Tr2
  28. Segment(P1 + (0, (-3 * streckenabs)), (x(P2), y(P1) - (3 * streckenabs))) → s5
  29. Segment((x(P2) + (4.5 * streckenabs), y(P2)), (x(P2) + (4.5 * streckenabs), y(P1))) → s6
  30. SelectedIndex(DropDown15) → input15
  31. Textfield(input4) → Eingabefeld4
  32. Textfield(input5) → Eingabefeld5
  33. Textfield(input6) → Eingabefeld6
  34. Textfield(input7) → Eingabefeld7
  35. Textfield(input8) → Eingabefeld8
  36. Textfield(input9) → Eingabefeld9
  37. Textfield(input10) → Eingabefeld10
  38. Textfield(input11) → Eingabefeld11
  39. Textfield(input12) → Eingabefeld12
  40. Textfield(input13) → Eingabefeld13
  41. Textfield(input14) → Eingabefeld14
  42. Textfield(input16) → Eingabefeld16
  43. Textfield(input17) → Eingabefeld17
  44. Textfield(input3) → Eingabefeld3
  45. Segment((x(P1), y(P2)) + (0, streckenabs), (x(P3), y(P2) + streckenabs)) → s1b
  46. Segment((x(P3), y(P2) + streckenabs), (x(P2), y(P2) + streckenabs)) → s2b
  47. Segment((x(P1), y(P2)) + ((-streckenabs), 0), (x(P1) - streckenabs, y(P3))) → s4b
  48. Segment((x(P1) - streckenabs, y(P3)), (x(P1) - streckenabs, y(P1))) → s3b
  49. Rotate(Segment[ArrowCentera + (ArrowDistance, 0), ArrowCentera + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((1 - 1) * (360°) / ArrowNumber), ArrowCentera) → arrow1a
  50. Rotate(Segment[ArrowCentera + (ArrowDistance, 0), ArrowCentera + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((2 - 1) * (360°) / ArrowNumber), ArrowCentera) → arrow2a
  51. Rotate(Segment[ArrowCentera + (ArrowDistance, 0), ArrowCentera + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((3 - 1) * (360°) / ArrowNumber), ArrowCentera) → arrow3a
  52. Rotate(Segment[ArrowCentera + (ArrowDistance, 0), ArrowCentera + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((4 - 1) * (360°) / ArrowNumber), ArrowCentera) → arrow4a
  53. Rotate(Segment[ArrowCenterb + (ArrowDistance, 0), ArrowCenterb + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((1 - 1) * (360°) / ArrowNumber), ArrowCenterb) → arrow1b
  54. Rotate(Segment[ArrowCenterc + (ArrowDistance, 0), ArrowCenterc + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((1 - 1) * (360°) / ArrowNumber), ArrowCenterc) → arrow1c
  55. Rotate(Segment[ArrowCenterb + (ArrowDistance, 0), ArrowCenterb + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((2 - 1) * (360°) / ArrowNumber), ArrowCenterb) → arrow2b
  56. Rotate(Segment[ArrowCenterb + (ArrowDistance, 0), ArrowCenterb + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((3 - 1) * (360°) / ArrowNumber), ArrowCenterb) → arrow3b
  57. Rotate(Segment[ArrowCenterb + (ArrowDistance, 0), ArrowCenterb + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((4 - 1) * (360°) / ArrowNumber), ArrowCenterb) → arrow4b
  58. Rotate(Segment[ArrowCenterc + (ArrowDistance, 0), ArrowCenterc + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((2 - 1) * (360°) / ArrowNumber), ArrowCenterc) → arrow2c
  59. Rotate(Segment[ArrowCenterc + (ArrowDistance, 0), ArrowCenterc + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((3 - 1) * (360°) / ArrowNumber), ArrowCenterc) → arrow3c
  60. Rotate(Segment[ArrowCenterc + (ArrowDistance, 0), ArrowCenterc + (ArrowDistance + ArrowLength, 0)], ArrowAngle + ((4 - 1) * (360°) / ArrowNumber), ArrowCenterc) → arrow4c
  61. Segment((x(P2) + (3 * streckenabs), y(P2)), (x(P2) + (3 * streckenabs), y(P1))) → s6b
  62. Element(Last[listPoints3], 1) → P3cLetztes
  63. Point(Flatten[Sequence[Sequence[P1 + (m * (size, 0)) + (j * (0, size)), m, 1, 9], j, 1, 5]]) → P3cHelp
  64. Midpoint(P1, P3) → M1
  65. Midpoint(P2, P3) → M2
  66. Midpoint((x(P1), y(P2)), P3) → M3
  67. Midpoint((x(P2), y(P1)), P3) → M4
  68. Sequence(Pos2 + (5.7, -0.1) + (m * (0, -1)), m, 0, 2) → listPSol2
  69. Sequence(Pos3 + (2, -1.1) + (m * (0, -0.9)), m, 0, 2) → listPSol3
  70. If((¬correct1) ∨ (¬correct2), listPSol2(1), If[(¬correct3) ∨ (¬correct4), listPSol2(2), listPSol2(3)]) → PSol2
  71. If((¬correct6) ∨ (¬correct7), listPSol3(1), If[(¬correct8) ∨ (¬correct9) ∨ (¬correct10) ∨ (¬correct11), listPSol3(2), listPSol3(2)]) → PSol3
  72. Point(listZettel1c) → Zettel1c
  73. Join({Zip[Segment[A, (x(Zettel1b), y(A))], A, Sequence[Zettel1a + (m * (0, (-zettelsize))), m, 0, Distance[Zettel1c, Zettel1a] / zettelsize]], Zip[Segment[B, (x(B), y(Zettel1c))], B, Sequence[Zettel1a + (m * (zettelsize, 0)), m, 0, Distance[Zettel1b, Zettel1a] / zettelsize]]}) → zettel1
  74. Point(listZettel2b) → Zettel2b
  75. Point(listZettel2c) → Zettel2c
  76. Join({Zip[Segment[A, (x(Zettel2b), y(A))], A, Sequence[Zettel2a + (m * (0, (-zettelsize))), m, 0, Distance[Zettel2c, Zettel2a] / zettelsize]], Zip[Segment[B, (x(B), y(Zettel2c))], B, Sequence[Zettel2a + (m * (zettelsize, 0)), m, 0, Distance[Zettel2b, Zettel2a] / zettelsize]]}) → zettel2
  77. Point(Line[K1a, xAxis]) → K2a
  78. Point(Line[K1a, xAxis]) → K3a
  79. Point(Line[K1a, xAxis]) → K4a
  80. Point(Line[K1b, xAxis]) → K2b
  81. Point(Line[K1b, xAxis]) → K4b
  82. Point(Line[K1b, xAxis]) → K3b
  83. Sequence(Pos7 + (0.09, 0.05) + (m * (kasterlx + kasterlabs, 0)), m, 0, 3) → listKasterlPoints2
  84. Sequence(Pos10 + (4.2, -1.73) + (m * (kasterlx + kasterlabs3, 0)), m, 0, 3) → listKasterlPoints3
  85. If(step < 9, Zettel2a + (4.5, -3.3), Zettel2a + (4, -2.2)) → PosText18
  86. Sequence(Zettel1a + ((m * zettelsize), 0) + ((0.5 * zettelsize), ((-(abstandzettel1 + 0.5)) * zettelsize)), m, 0, Distance[Zettel1b, Zettel1a] / zettelsize - 1) → zettel1ZackenPoints2
  87. Sequence(Zettel1a + ((m * zettelsize), 0) + (0, ((-abstandzettel1) * zettelsize)), m, 0, Distance[Zettel1b, Zettel1a] / zettelsize) → zettel1ZackenPoints1
  88. Join({Zip[Segment[A, (x(Zettel1b), y(A))], A, Sequence[Zettel1d + (m * (0, (-zettelsize))), m, 1, Distance[Zettel1c, Zettel1d] / zettelsize]], Zip[Segment[B, (x(B), y(Zettel1c))], B, Sequence[Zettel1d + (m * (zettelsize, 0)), m, 0, Distance[Zettel1b, Zettel1d] / zettelsize]]}) → zettel1unten
  89. Point(Segment[Zettel1a, Zettel1PEnde]) → Zettel1P
  90. Join({Zip[Segment[A, A + ((11 * zettelsize), 0)], A, Sequence[Zettel1P + (m * (0, (-zettelsize))), m, 0, abstandzettel1]], Zip[Segment[B, B + (0, ((-abstandzettel1) * zettelsize))], B, Sequence[Zettel1P + (m * (zettelsize, 0)), m, 0, 11]]}) → zettel1oben
  91. Translate({PolyLine[Sort[Join[{zettel1ZackenPoints1, zettel1ZackenPoints2}]]]}, Vector[Zettel1a, Zettel1P]) → zettelZacken1oben
  92. Join({Zip[Segment[A, A + ((15 * zettelsize), 0)], A, Sequence[Zettel2P + (m * (0, (-zettelsize))), m, 0, abstandzettel2]], Zip[Segment[B, B + (0, ((-abstandzettel2) * zettelsize))], B, Sequence[Zettel2P + (m * (zettelsize, 0)), m, 0, 15]]}) → zettel2oben
  93. Join({Zip[Segment[A, (x(Zettel2b), y(A))], A, Sequence[Zettel2d + (m * (0, (-zettelsize))), m, 1, Distance[Zettel2c, Zettel2d] / zettelsize]], Zip[Segment[B, (x(B), y(Zettel2c))], B, Sequence[Zettel2d + (m * (zettelsize, 0)), m, 0, Distance[Zettel2b, Zettel2d] / zettelsize]]}) → zettel2unten
  94. Sequence(Zettel2a + ((m * zettelsize), 0) + (0, ((-abstandzettel2) * zettelsize)), m, 0, Distance[Zettel2b, Zettel2a] / zettelsize) → zettel2ZackenPoints1
  95. Sequence(Zettel2a + ((m * zettelsize), 0) + ((0.5 * zettelsize), ((-(abstandzettel2 + 0.5)) * zettelsize)), m, 0, Distance[Zettel2b, Zettel2a] / zettelsize - 1) → zettel2ZackenPoints2
  96. Translate({PolyLine[Sort[Join[{zettel2ZackenPoints1, zettel2ZackenPoints2}]]]}, Vector[Zettel2a, Zettel2P]) → zettelZacken2oben
  97. 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
  98. Join({Sequence[Segment[Corner[4] + (RasterPixMat * ((k * RasterStepXY), 0)), Corner[4] + (RasterPixMat * ((k * RasterStepXY), RasterMaxY))], k, RasterMaxX / RasterStepXY, RasterMaxX / RasterStepXY], Sequence[Segment[Corner[4] + (RasterPixMat * (0, (k * RasterStepXY))), Corner[4] + (RasterPixMat * (RasterMaxX, (k * RasterStepXY)))], k, RasterMaxY / RasterStepXY, RasterMaxY / RasterStepXY]}) → RasterAussen
  99. If(correct16, Pos3 + (2.2, -0.65), Pos2 + (2.2, -1.15)) → PSol9