Fraction Addition Demo by Teri Dillard

Fraction Addition Demo by Teri Dillard
Loading the math board and drawing, please wait…
2019-05-02 03:21
This example demonstrates fraction addition and its geometric representation. It involves core math concepts like fraction operations, vectors, polygon construction, and coordinate geometry. Key GeoGebra commands and objects used include Point, If, Ray, Polygon, Sequence, Textfield, Segment, Vector, FractionText. Suitable for high school mathematics teaching to understand the connection between fraction addition and geometric figures.

GeoGebra Commands & Parameters

  1. Point(yAxis) → C
  2. Point(Segment[C + (0, h), C + (0, (1.85 * h))]) → B
  3. If(t ≤ 0.5, 0, (2 * (t - 0.5))) → t2
  4. If(t ≤ 0.5, (2 * t), 1) → t1
  5. Point(Segment[B + (0, h), B + (0, (1.85 * h))]) → A
  6. Ray((0, 1.9), (0, 2.9)) → f
  7. Polygon({A, A + (l, 0), A + (l, h), A + (0, h)}) → poly1
  8. Polygon({B, B + (l, 0), B + (l, h), B + (0, h)}) → poly2
  9. Sequence(Segment[A + ((i * l / a1), 0), A + ((i * l / a1), h)], i, 1, a1 - 1) → list1
  10. Sequence(Segment[B + ((i * l / a2), 0), B + ((i * l / a2), h)], i, 1, a2 - 1) → list2
  11. Polygon({A, A + ((b1 * l / a1), 0), A + ((b1 * l / a1), h), A + (0, h)}) → poly3
  12. Polygon({B, B + ((b2 * l / a2), 0), B + ((b2 * l / a2), h), B + (0, h)}) → poly4
  13. Sequence(Sequence[Segment[A + ((i * l / a1) + (j * l / ((a1 * c1))), 0), A + ((i * l / a1) + (j * l / ((a1 * c1))), h)], j, 1, c1 - 1], i, 0, a1 - 1) → list3
  14. Sequence(Sequence[Segment[B + ((i * l / a2) + (j * l / ((a2 * c2))), 0), B + ((i * l / a2) + (j * l / ((a2 * c2))), h)], j, 1, c2 - 1], i, 0, a2 - 1) → list4
  15. If(a1 ≟ a2, true, false) → equald
  16. If(equald ∧ (Div[b1 + b2, a1] > 0 ∨ GCD[b1 + b2, a1] > 1), true, If[Div[(b1 * c1) + (b2 * c2), (a1 * c1)] > 0 ∨ GCD[(b1 * c1) + (b2 * c2), (a1 * c1)] > 1, true, false]) → simplify
  17. Textfield(a1) → InputBox1
  18. Textfield(b1) → InputBox2
  19. Textfield(a2) → InputBox3
  20. Textfield(b2) → InputBox4
  21. Polygon({A', A' + (l, 0), A' + (l, h), A' + (0, h)}) → poly5
  22. Polygon({B', B' + ((b2 / a2 * l), 0), B' + ((b2 / a2 * l), h), B' + (0, h)}) → poly6
  23. Polygon({A', A' + ((b1 * l / a1), 0), A' + ((b1 * l / a1), h), A' + (0, h)}) → poly7
  24. Polygon({B', B' + ((b2 * l / a2), 0), B' + ((b2 * l / a2), h), B' + (0, h)}) → poly8
  25. Sequence(Sequence[Segment[A' + ((i * l / a1) + (j * l / ((a1 * c1))), 0), A' + ((i * l / a1) + (j * l / ((a1 * c1))), h)], j, 1, c1 - 1], i, 0, b1 - 1) → list8
  26. Sequence(Sequence[Segment[B' + ((i * l / a2) + (j * l / ((a2 * c2))), 0), B' + ((i * l / a2) + (j * l / ((a2 * c2))), h)], j, 1, c2 - 1], i, 0, b2 - 1) → list9
  27. Segment(C - (0, 0.5), C - (0, 1)) → g
  28. Segment(C + ((b1 / a1 * l), -0.5), C + ((b1 / a1 * l), -1)) → i
  29. Segment(C + ((b1 / a1 * l) + (b2 / a2 * l), -0.5), C + ((b1 / a1 * l) + (b2 / a2 * l), -1)) → j
  30. Vector(Midpoint[g], Midpoint[i]) → u
  31. Vector(Midpoint[i], Midpoint[g]) → v
  32. Vector(Midpoint[i], Midpoint[j]) → w
  33. Vector(Midpoint[j], Midpoint[i]) → a
  34. Sequence(Segment[A' + ((i * l / a1), 0), A' + ((i * l / a1), h)], i, 0, b1) → list6
  35. Sequence(Segment[B' + ((i * l / a2), 0), B' + ((i * l / a2), h)], i, 0, b2) → list7
  36. Sequence(Polygon[{C + ((i * l), 0), C + ((i * l) + l, 0), C + ((i * l) + l, h), C + ((i * l), h)}], i, 1, floor(b1 / a1 + b2 / a2)) → list5
  37. Segment(B', B' + ((b2 / a2 * l), 0)) → k
  38. Segment(B' + ((b2 / a2 * l), h), B' + (0, h)) → m
  39. If(b1 / a1 + b2 / a2 ≥ 1, true, false) → improper
  40. FractionText(b1 / a1 + b2 / a2) → text19
  41. FractionText(b1 / a1 + b2 / a2 - 1) → text20
  42. Sequence(Sequence[Segment[C + ((i * l / ((a1 * c1))) + (j * l), 0), C + ((i * l / ((a1 * c1))) + (j * l), h)], i, 1, (a1 * c1) - 1], j, 0, If[b1 / a1 + b2 / a2 ≤ 1, 0, 1]) → list10