Dividing Whole Numbers by Fractions with Models
Loading the math board and drawing, please wait…
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
Shuffle({1, 2, 3, 1, 2, 3}) → randomList1, {2, 1, 3, 2, 1, 3}Element(randomList1, Mod[countQuestion, Length[randomList1]] + 1) → randomNum1Shuffle({2, 3, 4, 2, 3, 4}) → randomList3, {2, 4, 4, 3, 2, 3}Element(randomList3, Mod[countQuestion, Length[randomList3]] + 1) → randomNum3Shuffle({0, 0, 0, 0, 1, 1, 2, 2}) → randomList2, {0, 1, 2, 0, 2, 0, 1, 0}Element(randomList2, Mod[countQuestion, Length[randomList2]] + 1) → randomNum2Random(1, den - 1) → numIf(Defined[input1], Min[input1, totalSlots + 1] + 1, 1) → timeOrangeMax(timeOrange, marblesTotal + 1) → timePurpleMin(2, If[ratioPic > ratioReference, Distance[C1, C2] / widthReference, Distance[C1, C4] / heightReference]) → radiusSequence((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) → centersFlatten(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]) → centersWholeFlatten({centersWhole, centers, {ExtraCenter}}) → centersTotalSequence(Circle[FromTo[A, Element[centersTotal, k], step(k, time)], radius / 2], k, input1 + 1, marblesTotal) → marblesAnimTotalIf(time ≤ 1, 0, time ≤ timeOrange, 1, time ≤ timePurple, 2, time ≤ timeFading, 3, 4) → animStepSequence(Circle[FromTo[A, Element[centersTotal, k], step(k, time)], radius / 2], k, 1, Min[input1, (numBoxes * marblesBox) + 1]) → marblesAnimStTextfield(input1) → InputBox1Polygon(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)}]) → borderBoxSequence(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) → boxesPolygon({(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))}) → boxUnusedSegment((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)) → braceMidpoint(brace) → labelBracePosSequence(Circle[FromTo[A, Element[Join[{centers, Sequence[A, p, 1, input1 - marblesBox]}], k], step(k, timeStep)], radius / 2], k, 1, input1) → marblesAnimTake(boxes, 1, Length[boxes] - 1) → shadowedBoxesZip(Circle[P, radius / 2], P, centersWhole) → marblesWholeSequence(Circle[Element[Join[{centers, Sequence[A, p, 1, input1 - marblesBox]}], k], radius / 2], k, input1 + 1, marblesBox) → marblesMissingPolygon({(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))}) → boxUncompleteTake(centersTotal, marblesBox + 1, Length[centersTotal]) → centersNotTopSequence(Circle[Element[centersTotal, k], radius / 2], k, input1 + 1, (marblesBox * numBoxes)) → marblesMissingTotalIf(animStep < 3, 0, animStep > 3, goalOpac, ((time - timePurple) * goalOpac / (timeFading - timePurple))) → fadingOpacZip(Circle[P, radius / 2], P, centersNotTop) → fadingCorner(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.