FLINK at the Supermarket
Loading the math board and drawing, please wait…
This example uses a supermarket shopping scenario to demonstrate direct and indirect proportion problems. Key mathematical concepts include ratios and rates. GeoGebra commands such as Element, Polygon, and Shuffle are used for construction. Suitable for 5-6 grade students to practice solving proportion problems, describing, comparing, and validating solution paths, and critically assessing the acc
GeoGebra Commands & Parameters
Element(randomNosForX, questionCount) → exNumElement(MatrixSolAlt, exNum, 2) → sol2altElement(MatrixSolAlt, exNum, 3) → sol3altElement(MatrixSolAlt, exNum, 1) → sol1altPolygon(PtopLeftCornerFeedback, PtopRightCornerFeedback, PbottomRightCornerFeedback, PbottomLeftCornerFeedback) → rectangleCorrect, rectangleCorrectS3, rectangleCorrectS4, rectangleCorrectS2, rectangleCorrectS1Shuffle(Sequence[Random[0, 10], i, 1, 100]) → randomNosForY, {6, 3, 4, 1, 10, 7, 0, 3, 4, 9, 4, 4, 9, 2, 9, 0, 9, 10, 10, 5, 9, 7, 1, 3, 3, 9, 8, 0, 2, 0, 1, 0, 6, 4, 8, 6, 4, 7, 5, 10, 3, 3, 9, 5, 0, 7, 7, 1, 2, 7, 10, 0, 3, 2, 10, 1, 9, 8, 3, 6, 5, 8, 1, 8, 2, 1, 8, 3, 5, 6, 6, 5, 3, 10, 7, 5, 7, 5, 6, 2, 8, 10, 8, 1, 5, 3, 2, 3, 4, 3, 8, 6, 4, 3, 1, 0, 10, 8, 2, 5}Element(randomNosForY, Mod[questionCount, 100] + 1) → numYAppend(true, Sequence[If[randomNosForX(i) ≟ randomNosForX(i - 1), false, true], i, 2, 100]) → stayXAppend(true, Sequence[If[randomNosForY(i) ≟ randomNosForY(i - 1), false, true], i, 2, 100]) → stayYRemove(Sequence[If[stayY(i), randomNosForY(i), 0], i, 1, 100], Sequence[0, i, 1, 100]) → randomNosForYwithoutRepeatElement(randomNosForYwithoutRepeat, Mod[questionCount, Length[randomNosForYwithoutRepeat]] + 1) → numYwithoutRepeatSpeechBubbleLeft(A, 8.5, 2) → Vieleck1Sequence(D + (i * Vector[B, E] / 4), i, 0, 4) → TablePointsUntenSequence(B + (i * Vector[B, D] / 3), i, 0, 3) → TablePointsLeftSequence(E + (i * Vector[B, D] / 3), i, 0, 3) → TablePointsRightSequence(Segment[TablePointsLeft(i), TablePointsRight(i)], i, 1, 4) → TableStrecken1Textfield(input1) → InputBox1Textfield(input2) → InputBox2Textfield(input3) → InputBox3If(round(input1) ≟ input1, 0, round((input1 * 10)) ≟ (input1 * 10), 1, round((input1 * 100)) ≟ (input1 * 100), 2) → nks1If(round(input2) ≟ input2, 0, round((input2 * 10)) ≟ (input2 * 10), 1, round((input2 * 100)) ≟ (input2 * 100), 2) → nks2If(round(input3) ≟ input3, 0, round((input3 * 10)) ≟ (input3 * 10), 1, round((input3 * 100)) ≟ (input3 * 100), 2) → nks3Sequence(B + (i * Vector[B, E] / 4), i, 0, 4) → TablePointsObenSequence(Segment[TablePointsOben(i), TablePointsUnten(i)], i, 1, 5) → TableStrecken2SpeechBubbleLeft(L, 9, 0.5) → Vieleck2Element(MatrixSol, exNum, 1) → sol1Element(MatrixSol, exNum, 2) → sol2Element(MatrixSol, exNum, 3) → sol3Translate(l1, (dis, 0)) → l1'Translate(l1', (dis, 0)) → l1''Element(MatrixSolText, exNum, 2) → sol2TextElement(MatrixSolText, exNum, 3) → sol3TextElement(MatrixSolText, exNum, 1) → sol1Text