Fraction Division with Bar Models
Loading the math board and drawing, please wait…
This example uses a bar model visual representation to help understand division of fractions and what remainders signify. The context involves determining servings of giant items. The core math concepts include fraction division, remainder interpretation, and bar model application. GeoGebra commands and objects like Element, Polygon, Segment, Point, If, Sequence, Textfield, and Vector are used to construct the bar model, calculate results, and display solution steps. Suitable for middle school mathematics education to visually demonstrate abstract fraction division operations.
GeoGebra Commands & Parameters
Element({1, 1.3, 1, 0.6, 1, 0.8, 0.8, 0.8, 1.4, 1.2}, prob) → scaleFactorPolygon(BoxPt + (((fullServ * divisor) * scaleFactor), remainShade2lower - boxHeight - 0.1), BoxPt + (((fullServ * divisor) * scaleFactor) + (divisor * scaleFactor), remainShade2lower - boxHeight - 0.1), BoxPt + (((fullServ * divisor) * scaleFactor) + (divisor * scaleFactor), remainShade2lower - 0.1), BoxPt + (((fullServ * divisor) * scaleFactor), remainShade2lower - 0.1)) → remainDivisor, remainDivisorSeg_1, remainDivisorSeg_2, remainDivisorSeg_3, remainDivisorSegSegment(Midpoint[remainDivisorSeg_1] - (0.5, 0.5), Midpoint[remainDivisorSeg_1] + (0.5, -0.5)) → step2SplitSegPoint(step2SplitSeg) → Step2SplitSegPt7Point(step2SplitSeg) → Step2SplitSegPt10Point(step2SplitSeg) → Step2SplitSegPt9Point(step2SplitSeg) → Step2SplitSegPt8Point(step2SplitSeg) → Step2SplitSegPt6Point(step2SplitSeg) → Step2SplitSegPt5Point(step2SplitSeg) → Step2SplitSegPt4Point(step2SplitSeg) → Step2SplitSegPt3Point(step2SplitSeg) → Step2SplitSegPt2Point(step2SplitSeg) → Step2SplitSegPt1Polygon(BoxPt, BoxPt + ((dividend * scaleFactor), 0), BoxPt + ((dividend * scaleFactor), boxHeight), BoxPt + (0, boxHeight)) → dividendBoxPoly, dividendBox_2, dividendBox_3, dividendBox_4, dividendBoxPolygon(BoxPt + (0, (-boxHeight) - 0.1), BoxPt + (((divisor * If[fullServ ≥ 0 ∧ showFullServ, fullServ, 1]) * scaleFactor), (-boxHeight) - 0.1), BoxPt + (((divisor * If[fullServ ≥ 0 ∧ showFullServ, fullServ, 1]) * scaleFactor), -0.1), BoxPt + (0, -0.1)) → servBox, servBoxSeg_1, servBoxSeg_2, servBoxSeg_3, servBoxSegIf(dividend - (fullServ * divisor) < 0, 1, If[dividend - (fullServ * divisor) > divisor, 2, 3]) → fullServFBSelectPolygon(BoxPt + (((fullServ * divisor) * scaleFactor), remainShade2lower), BoxPt + ((dividend * scaleFactor), remainShade2lower), BoxPt + ((dividend * scaleFactor), remainShade2lower + boxHeight), BoxPt + (((fullServ * divisor) * scaleFactor), remainShade2lower + boxHeight)) → remainShade2, remainShade2Seg_1, remainShade2Seg_2, remainShade2Seg_3, remainShade2SegPolygon(BoxPt + (((fullServ * divisor) * scaleFactor), 0), BoxPt + ((dividend * scaleFactor), 0), BoxPt + ((dividend * scaleFactor), boxHeight), BoxPt + (((fullServ * divisor) * scaleFactor), boxHeight)) → remainShade1, remainShade1Seg_1, remainShade1Seg_2, remainShade1Seg_3, remainShade1SegPolygon(Step1ArrowsPt + (0, 0.05), Step1ArrowsPt + (0.3, 0.05), Step1ArrowsPt + (0.15, 0.4)) → step1ArrowUp, step1ArrowSeg_2, step1ArrowSeg_3, step1ArrowSeg_4Polygon(Step1ArrowsPt + (0, -0.05), Step1ArrowsPt + (0.3, -0.05), Step1ArrowsPt + (0.15, -0.4)) → step1ArrowDown, step1ArrowSeg_1, step1ArrowSeg_5, step1ArrowSegSequence(Segment[BoxPt + (i, (-boxHeight) - 0.1), BoxPt + (i, -0.1)], i, (divisor * scaleFactor), ((divisor * scaleFactor) * (fullServ - 1)), (divisor * scaleFactor)) → servBoxDivIf(ansFrac ≟ remainNum / remainDenom, true, false) → step2VerifyElement({"Ted", "Alex", "Jasmine", "Miguel", "Alessa", "Mohammad", "Georgia", "Jasper", "Frankie", "Doug"}, prob) → namesTextfield(solutionWhole) → inputSolutionWholeTextfield(solutionNum) → inputSolutionNumIf(step3Check ∧ ansFrac ≟ solutionNum / solutionDenom ∧ solutionWhole ≟ ansWhole, true, false) → step3VerifyTextfield(solutionDenom) → inputSolutionDenomPolygon(ServKeyPt, ServKeyPt + (((-divisor) * scaleFactor), 0), ServKeyPt + (((-divisor) * scaleFactor), boxHeight), ServKeyPt + (0, boxHeight)) → servKey, servKeySeg_1, servKeySeg_2, servKeySeg_3, servKeySegVector(Midpoint[BoxPt + (((fullServ * divisor) * scaleFactor), -0.2), BoxPt + ((dividend * scaleFactor), -0.2)], Midpoint[BoxPt + (((fullServ * divisor) * scaleFactor), remainShade2lower + boxHeight + 0.1), BoxPt + ((dividend * scaleFactor), remainShade2lower + boxHeight + 0.1)]) → remainVectorSequence(Segment[BoxPt + (((fullServ * divisor) * scaleFactor) + i, remainShade2lower - boxHeight - 0.1), BoxPt + (((fullServ * divisor) * scaleFactor) + i, remainShade2lower - 0.1)], i, ((scaleFactor * divisor)) / step2DivisorSections, (((scaleFactor * divisor)) / step2DivisorSections * (step2DivisorSections - 1)), ((scaleFactor * divisor)) / step2DivisorSections) → divisorSectionsListSequence(Segment[BoxPt + (i, -0.18), BoxPt + (i, boxHeight + 0.25)], i, (divisor * scaleFactor), ((divisor * scaleFactor) * fullServ), (divisor * scaleFactor)) → sandwichBoxSectionsSegment(BoxPt + ((dividend * scaleFactor), remainShade2lower + boxHeight + 0.2), BoxPt + ((dividend * scaleFactor), remainShade2lower - 1.08)) → step2AlignmentSegTextfield(remainDenom) → inputRemainDenomTextfield(remainNum) → inputRemainNum
AI Drawing Prompt Reference
Create a bar model to visualize fraction division and the interpretation of remainders. Include multiple bars representing the total amount, divisor, quotient, and remainder, distinguished by different colors or shading. Start with a bar for the total, then split it according to the divisor, highlighting the quotient and remainder sections, and use arrows or text to explain the calculation steps and results.
The prompt above was compiled from the original drawing commands and is for reference only.