Exploring Areas of Parallelograms

Exploring Areas of Parallelograms
Loading the math board and drawing, please wait…
2011-10-06 10:26
This example demonstrates how to explore the area of parallelograms of different shapes, including skewed ones. It involves core math concepts like the area formula for parallelograms, vectors, and triangle areas. Construction uses GeoGebra commands such as Point, Ray, Translate, Rotate, Vector, and Midpoint. Suitable for middle school students and math enthusiasts learning geometric properties.

GeoGebra Commands & Parameters

  1. Point(xAxis) → I
  2. Point(Ray[(x(I), 0), (x(I), 1)]) → J
  3. Ray((-0.01, y(J)), (-1, y(J))) → k
  4. Point(xAxis) → C
  5. Point(k) → A
  6. Translate(A, Vector[C]) → D
  7. If(floor(abs(x(D)) / base) ≟ abs(x(D)) / base, false, true) → more
  8. If(more, n + 1, n) → n'
  9. Intersect(xAxis, yAxis) → B
  10. Segment(A, B) → a
  11. Segment(B, C) → b
  12. Segment(C, D) → c
  13. Segment(D, A) → d
  14. Slope(a) → m
  15. Sequence(((i + 1) * x(C), m * x(C) * i), i, 0, n) → list1
  16. Point(Ray[(0, 0), (1, 0)]) → E
  17. Segment(E, F) → e
  18. Segment(F, G) → f
  19. Segment(G, H) → g
  20. Segment(H, E) → h
  21. Sequence((i * x(C), m * x(C) * i), i, 0, n) → list2
  22. Sequence(Polygon[Element[list2, i], Element[list1, i], Element[list2, i + 1]], i, 1, n) → list3
  23. Sequence(If[t < i, 0, If[t < i + 1, t - i, 1]], i, 0, n' - 1) → list_t
  24. Sequence(Polygon[Element[list1, i], Element[list2, i + 1], Element[list1, i + 1]], i, 1, n) → list4
  25. Sequence(Translate[Element[list3, i], Vector[(0, 0), (2 * Min[Element[list_t, i], 0.5] * (x(E) - (i - 1) * x(C)), 0)]], i, 1, n) → list5
  26. Sequence(Translate[Translate[Element[list4, i], Vector[(0, 0), (2 * Min[Element[list_t, i], 0.5] * (x(E) - (i - 1) * x(C)), 0)]], Vector[(0, 0), (2 * Max[Element[list_t, i] - 0.5, 0] * base, 0)]], i, 1, n) → list6
  27. If(more, Polygon[A, (n' * x(C), y(A)), Element[list1, n'], Element[list2, n']]) → last1
  28. If(more, Polygon[D, (n' * x(C), y(A)), Element[list1, n']]) → last2
  29. If(more, Translate[last1, Vector[(2 * Min[Element[list_t, n'], 0.5] * (n * base + x(E)), 0)]]) → last1'
  30. If(more, Translate[Translate[last2, Vector[(2 * Min[Element[list_t, n'], 0.5] * (n * base + x(E)), 0)]], Vector[(2 * Max[Element[list_t, n'] - 0.5, 0] * base, 0)]]) → last2'
  31. Segment(J, A) → i
  32. Segment(I, B) → j
  33. Rotate(J, 90*°, I) → J'
  34. Vector(I, J) → u
  35. Vector(J, I) → v
  36. Midpoint(I, J) → K
  37. Midpoint(b) → L
  38. Angle(J, I, Translate[I, Vector[If[x(I) > x(C), Vector[C], Vector[-C]]]]) → α
  39. Sequence(Segment[(0 + i, ymax), (0 + i, ymin)], i, 0, ceil(xmax)) → list7_1
  40. Sequence(Segment[(-i, ymax), (0 - i, ymin)], i, 1, ceil(abs(xmin))) → list7_2
  41. Sequence(Segment[(xmin, -i), (xmax, -i)], i, 1, ceil(abs(ymin))) → list8_2
  42. Sequence(Segment[(xmin, i), (xmax, i)], i, 0, ceil(ymax)) → list8_1
  43. Segment(I, J) → r