Dividing Whole Numbers by Fractions with Models

Dividing Whole Numbers by Fractions with Models
Loading the math board and drawing, please wait…
2022-11-15 04:55
This example demonstrates how to solve problems involving dividing whole numbers by fractions using visual models like boxes and marbles in GeoGebra. The key mathematical concepts include fraction division, mixed number operations, and proportional reasoning. Construction involves using commands such as Shuffle, Element, Random, If, Max, Min, Sequence, and objects like Polygon, Segment, Midpoint to create dynamic graphics. It is suitable for students in grades 4-5 to understand practical applications of fraction division and mathematical modeling.

GeoGebra Commands & Parameters

  1. Shuffle({1, 2, 3, 1, 2, 3}) → randomList1, {2, 1, 3, 2, 1, 3}
  2. Element(randomList1, Mod[countQuestion, Length[randomList1]] + 1) → randomNum1
  3. Shuffle({2, 3, 4, 2, 3, 4}) → randomList3, {2, 4, 4, 3, 2, 3}
  4. Element(randomList3, Mod[countQuestion, Length[randomList3]] + 1) → randomNum3
  5. Shuffle({0, 0, 0, 0, 1, 1, 2, 2}) → randomList2, {0, 1, 2, 0, 2, 0, 1, 0}
  6. Element(randomList2, Mod[countQuestion, Length[randomList2]] + 1) → randomNum2
  7. Random(1, den - 1) → num
  8. If(Defined[input1], Min[input1, totalSlots + 1] + 1, 1) → timeOrange
  9. Max(timeOrange, marblesTotal + 1) → timePurple
  10. Min(2, If[ratioPic > ratioReference, Distance[C1, C2] / widthReference, Distance[C1, C4] / heightReference]) → radius
  11. Sequence((x(Midpoint[C1, C3]) - widthBox / 2 + (0.7 * radius) + ((radius * 1.2) * (n - 1)), y(Midpoint[C1, C3]) - (radius * heightReference / 2) + (0.2 * radius) + radius / 2), n, 1, marblesBox) → centers
  12. Flatten(Sequence[Sequence[(x(Midpoint[C1, C3]) - widthBox / 2 + (0.7 * radius) + ((radius * 1.2) * (n - 1)), y(Midpoint[C1, C3]) - (radius * heightReference / 2) + (0.2 * radius) + radius / 2 + ((T * 1.8) * radius)), n, 1, marblesBox], T, whole, 1, -1]) → centersWhole
  13. Flatten({centersWhole, centers, {ExtraCenter}}) → centersTotal
  14. Sequence(Circle[FromTo[A, Element[centersTotal, k], step(k, time)], radius / 2], k, input1 + 1, marblesTotal) → marblesAnimTotal
  15. If(time ≤ 1, 0, time ≤ timeOrange, 1, time ≤ timePurple, 2, time ≤ timeFading, 3, 4) → animStep
  16. Sequence(Circle[FromTo[A, Element[centersTotal, k], step(k, time)], radius / 2], k, 1, Min[input1, (numBoxes * marblesBox) + 1]) → marblesAnimSt
  17. Textfield(input1) → InputBox1
  18. Polygon(Zip[PixelsToPoint[Corner[1], Corner[3], Corner[5], A], A, {(pixelsLeft, pixelsTop), (pixelsLeft, y(Corner[5]) - pixelsBottom), Corner[5] - (pixelsRight, pixelsBottom), (x(Corner[5]) - pixelsRight, pixelsTop)}]) → borderBox
  19. Sequence(Polygon[{(x(Midpoint[C1, C3]) - widthBox / 2, y(Midpoint[C1, C3]) + (((n * 1.8) - heightReference / 2) * radius)), (x(Midpoint[C1, C3]) + widthBox / 2, y(Midpoint[C1, C3]) + (((n * 1.8) - heightReference / 2) * radius)), (x(Midpoint[C1, C3]) + widthBox / 2, y(Midpoint[C1, C3]) + (radius * (1.4 + (1.8 * n) - heightReference / 2))), (x(Midpoint[C1, C3]) - widthBox / 2, y(Midpoint[C1, C3]) + (((1.8 * n) + 1.4 - heightReference / 2) * radius))}], n, 1, whole) → boxes
  20. Polygon({(x(Midpoint[C1, C3]) - widthBox / 2 + ((0.1 + ((num * factor) * 1.2)) * radius), y(Midpoint[C1, C3]) + (((-heightReference)) / 2 * radius)), (x(Midpoint[C1, C3]) + widthBox / 2, y(Midpoint[C1, C3]) + (((-heightReference)) / 2 * radius)), (x(Midpoint[C1, C3]) + widthBox / 2, y(Midpoint[C1, C3]) + (radius * (1.4 - heightReference / 2))), (x(Midpoint[C1, C3]) - widthBox / 2 + ((0.1 + ((num * factor) * 1.2)) * radius), y(Midpoint[C1, C3]) + ((1.4 - heightReference / 2) * radius))}) → boxUnused
  21. Segment((x(Midpoint[C1, C3]) - widthBox / 2 + ((0.1 + ((num * factor) * 1.2)) * radius), y(Midpoint[C1, C3]) + (((-heightReference)) / 2 * radius) - 0.5), (x(Midpoint[C1, C3]) - widthBox / 2, y(Midpoint[C1, C3]) + (((-heightReference)) / 2 * radius) - 0.5)) → brace
  22. Midpoint(brace) → labelBracePos
  23. Sequence(Circle[FromTo[A, Element[Join[{centers, Sequence[A, p, 1, input1 - marblesBox]}], k], step(k, timeStep)], radius / 2], k, 1, input1) → marblesAnim
  24. Take(boxes, 1, Length[boxes] - 1) → shadowedBoxes
  25. Zip(Circle[P, radius / 2], P, centersWhole) → marblesWhole
  26. Sequence(Circle[Element[Join[{centers, Sequence[A, p, 1, input1 - marblesBox]}], k], radius / 2], k, input1 + 1, marblesBox) → marblesMissing
  27. Polygon({(x(Midpoint[C1, C3]) - widthBox / 2, y(Midpoint[C1, C3]) + (((-heightReference)) / 2 * radius)), (x(Midpoint[C1, C3]) - widthBox / 2 + ((0.1 + ((num * factor) * 1.2)) * radius), y(Midpoint[C1, C3]) + (((-heightReference)) / 2 * radius)), (x(Midpoint[C1, C3]) - widthBox / 2 + ((0.1 + ((num * factor) * 1.2)) * radius), y(Midpoint[C1, C3]) + ((1.4 - heightReference / 2) * radius)), (x(Midpoint[C1, C3]) - widthBox / 2, y(Midpoint[C1, C3]) + ((1.4 - heightReference / 2) * radius))}) → boxUncomplete
  28. Take(centersTotal, marblesBox + 1, Length[centersTotal]) → centersNotTop
  29. Sequence(Circle[Element[centersTotal, k], radius / 2], k, input1 + 1, (marblesBox * numBoxes)) → marblesMissingTotal
  30. If(animStep < 3, 0, animStep > 3, goalOpac, ((time - timePurple) * goalOpac / (timeFading - timePurple))) → fadingOpac
  31. Zip(Circle[P, radius / 2], P, centersNotTop) → fading
  32. Corner(5) → Appsize

AI Drawing Prompt Reference

Draw a diagram with several boxes and balls. First, draw a border box, then randomly distribute some boxes inside it, with each box containing a random number of balls. Next, remove some balls from the boxes based on given numbers and mark them with different colors. Finally, dynamically display the animation of the remaining balls.
The prompt above was compiled from the original drawing commands and is for reference only.