Dragomir's Family: Quadrilateral Area Practice

Dragomir's Family: Quadrilateral Area Practice
Loading the math board and drawing, please wait…
2023-09-07 13:39
This interactive GeoGebra exercise, titled 'Dragomir and his Family', helps students master area formulas for special quadrilaterals through hands-on practice. Key mathematical concepts covered include: area of parallelogram (base × height), area of trapezoid ((top base + bottom base) × height ÷ 2), area of rhombus (product of diagonals ÷ 2), and area of deltoid/kite (product of diagonals ÷ 2). Construction highlights: Polygon commands create dynamic quadrilaterals, Segment commands draw auxiliary lines showing heights and diagonals, Angle commands measure angles to verify properties, Textfield and Input commands provide interactive answer checking, Shuffle and Element commands enable randomized question rotation. Designed for Grade 5-6 students, this material is ideal for classroom practice or homework, developing students' ability to apply and justify area formulas for special quadrilaterals.

GeoGebra Commands & Parameters

  1. Join(Sequence[Shuffle[Sequence[m, m, 1, maxexnum]], i, 1, 20]) → listexnums
  2. SelectedIndex(DropDown1) → input3
  3. Polygon(P2, (x(P2a), y(P2)), P2a, (x(P2), y(P2a))) → v4, p2, f, p2a, g
  4. Translate(Polygon[(0, 0), (sizefbx, 0), (sizefbx, sizefby), (0, sizefby)], P1) → v1
  5. Translate(Polygon[(0, 0), (sizefbx, 0), (sizefbx, sizefby), (0, sizefby)], P1 + (sizefbx + abs1, 0)) → v2
  6. Translate(Polygon[(0, 0), (sizefbx, 0), (sizefbx, sizefby), (0, sizefby)], P1 + (2 * (sizefbx + abs1, 0))) → v3
  7. CountIf(m ∈ v1, m, m1) → minv1
  8. CountIf(m ∈ v2, m, m1) → minv2
  9. CountIf(m ∈ v3, m, m1) → minv3
  10. CountIf(m ∈ v4, m, m2) → minv4
  11. Textfield(input1) → InputBox1
  12. Polygon(PtopLeftCornerFeedback, PtopRightCornerFeedback, PbottomRightCornerFeedback, PbottomLeftCornerFeedback) → rectangleCorrect, rectangleCorrectS3, rectangleCorrectS4, rectangleCorrectS2, rectangleCorrectS1
  13. Shuffle(Sequence[Random[0, 10], i, 1, 100]) → randomNosForX, {5, 1, 4, 3, 10, 2, 9, 2, 4, 1, 0, 2, 9, 4, 0, 2, 1, 4, 3, 6, 0, 1, 3, 5, 9, 3, 8, 9, 6, 6, 10, 0, 9, 2, 9, 9, 5, 1, 6, 5, 7, 1, 6, 1, 1, 6, 5, 8, 2, 8, 3, 8, 10, 9, 4, 8, 7, 4, 8, 2, 4, 8, 0, 6, 1, 0, 7, 8, 1, 2, 9, 7, 1, 9, 4, 0, 7, 9, 5, 5, 7, 6, 0, 8, 3, 3, 10, 7, 8, 4, 2, 3, 4, 8, 1, 5, 5, 5, 6, 5}
  14. Element(randomNosForX, Mod[questionCount, 100] + 1) → numX
  15. Shuffle(Sequence[Random[0, 10], i, 1, 100]) → randomNosForY, {0, 8, 4, 5, 9, 8, 7, 4, 4, 3, 10, 2, 1, 4, 2, 9, 7, 1, 1, 0, 2, 6, 5, 8, 9, 0, 0, 7, 3, 0, 1, 2, 9, 6, 7, 2, 7, 10, 7, 7, 5, 0, 4, 2, 4, 5, 2, 5, 2, 0, 4, 1, 9, 7, 4, 1, 4, 10, 3, 0, 7, 0, 10, 2, 5, 6, 5, 7, 1, 10, 9, 8, 10, 5, 0, 2, 0, 8, 7, 1, 10, 8, 8, 7, 3, 3, 9, 6, 4, 3, 3, 7, 4, 6, 5, 4, 5, 5, 3, 6}
  16. Element(randomNosForY, Mod[questionCount, 100] + 1) → numY
  17. Append(true, Sequence[If[randomNosForX(i) ≟ randomNosForX(i - 1), false, true], i, 2, 100]) → stayX
  18. Append(true, Sequence[If[randomNosForY(i) ≟ randomNosForY(i - 1), false, true], i, 2, 100]) → stayY
  19. Remove(Sequence[If[stayX(i), randomNosForX(i), 0], i, 1, 100], Sequence[0, i, 1, 100]) → randomNosForXwithoutRepeat
  20. Remove(Sequence[If[stayY(i), randomNosForY(i), 0], i, 1, 100], Sequence[0, i, 1, 100]) → randomNosForYwithoutRepeat
  21. Element(randomNosForXwithoutRepeat, Mod[questionCount, Length[randomNosForXwithoutRepeat]] + 1) → numXwithoutRepeat
  22. Element(randomNosForYwithoutRepeat, Mod[questionCount, Length[randomNosForYwithoutRepeat]] + 1) → numYwithoutRepeat
  23. Segment(C1, C3) → lc1
  24. Segment(C2, C4) → lc2
  25. Segment(A1, A3) → la1
  26. Segment(A2, A4) → la2
  27. Segment(B1, B3) → lb1
  28. Segment(B2, B4) → lb2
  29. Translate(Polygon[(0, 0), ((3 * sizefbx) + (2 * abs1) + 1, 0), ((3 * sizefbx) + (2 * abs1) + 1, sizefby - 1), (0, sizefby - 1)], P1 + (-0.5, 0.5)) → fb1
  30. Segment(D1, D3) → ld1
  31. Segment(D2, D4) → ld2
  32. Segment(E1, E3) → le1
  33. Segment(E2, E4) → le2
  34. Segment(F1, F3) → lf1
  35. Segment(F2, F4) → lf2
  36. Segment(G1, G3) → lg1
  37. Segment(G2, G4) → lg2
  38. Segment(D2, D4) → ld3
  39. Segment(E2, E4) → le3
  40. Segment(G2, G4) → lg3
  41. Segment(H1, H1 + (0, -7)) → lh1
  42. Segment(H1 + (-2, -2), H1 + (2, -2)) → lh2
  43. Segment(I1, I1 + (0, -6)) → li1
  44. Segment(I1 + (-1.5, -2.5), I1 + (1.5, -2.5)) → li2
  45. Segment(J1, J1 + (0, -4)) → lj1
  46. Segment(J1 + (-1.5, -1), J1 + (1.5, -1)) → lj2
  47. Textfield(input2) → InputBox2
  48. Textfield(input4h) → Eingabefeld1
  49. Textfield(input5h) → Eingabefeld2
  50. Textfield(input6h) → Eingabefeld3
  51. Element({PosC1, PosC2, PosC3, PosC4, PosC5}, exnum) → PosCorrect
  52. Angle(E4, Intersect[Segment[E1, E3], Segment[E2, E4]], E1) → we1
  53. Angle(F1, Intersect[Segment[F1, F3], Segment[F2, F4]], F2) → wf1
  54. Angle(G1, Intersect[Segment[G1, G3], Segment[G2, G4]], G2) → wg1
  55. Angle(D4, Intersect[Segment[D1, D3], Segment[D2, D4]], D1) → wd1
  56. Angle(A4, Intersect[Segment[A1, A3], Segment[A2, A4]], A1) → wa1
  57. Angle(B4, Intersect[Segment[B1, B3], Segment[B2, B4]], B1) → wb1
  58. Angle(C4, Intersect[Segment[C1, C3], Segment[C2, C4]], C1) → wc1
  59. Angle(H1 + (0, 5), H1 + (0, -2), H1 + (-6, -2)) → wh1
  60. Angle(I1 + (0, 5), I1 + (0, -2.5), I1 + (-6, -2.5)) → wi1
  61. Angle(J1 + (0, 5), J1 + (0, -1), J1 + (-6, -1)) → wj1

AI Drawing Prompt Reference

Draw a quadrilateral with its two diagonals and two heights. Start by drawing the quadrilateral, then add the diagonals, and finally, draw the heights from each vertex to the opposite side. Also, include some auxiliary lines, such as parallel and perpendicular lines, to help understand the properties of the quadrilateral.
The prompt above was compiled from the original drawing commands and is for reference only.