Natural Number Times a Mixed Number: Constructing Rational Multiplication
Loading the math board and drawing, please wait…
In collections
Natürliche Zahl mit Bruchzahl multiplizieren
This GeoGebra example demonstrates how to generate and solve multiplication problems of the form “natural number × mixed number” by constructing the corresponding result as a rational fraction and checking it step by step. The key math ideas include converting mixed numbers to improper fractions, applying fraction multiplication rules to numerator and denominator, and ensuring the correct (often simplified) fractional form under randomized parameters. Construction and interactivity are built using: Shuffle and Element for selecting random values (questionCount, randomNosForA/B/C/D, and numA/numB/numC/numD), Mod to constrain or control number selection (e.g., divisibility/range conditions), If to provide conditional logic for hints, and Textfield/Text to display inputs and explanation text. The result fraction components are extracted via Numerator and Denominator (solZaehler1/solZaehler2, solNenner1/solNenner2). Geometry/text scaffolding uses Polygon, Segment, Corner, and related corner/position objects to present the problem layout. Suitable for middle school rational-number practice and interactive worksheets or self-assessment tasks.
GeoGebra Commands & Parameters
Shuffle(Sequence[Random[1, 9], i, 1, 100]) → randomNosForC, {3, 1, 3, 9, 2, 9, 6, 2, 9, 2, 8, 3, 6, 9, 4, 9, 1, 7, 7, 1, 9, 7, 7, 2, 3, 9, 5, 5, 4, 3, 2, 3, 6, 3, 7, 2, 8, 7, 5, 5, 7, 6, 8, 7, 2, 5, 5, 7, 5, 7, 7, 5, 5, 7, 6, 5, 4, 1, 1, 2, 3, 3, 8, 6, 7, 1, 1, 6, 6, 9, 6, 6, 6, 5, 6, 7, 8, 5, 8, 5, 3, 7, 1, 9, 3, 3, 3, 8, 7, 5, 1, 2, 4, 5, 9, 2, 1, 6, 9, 4}Element(randomNosForC, Mod[questionCount, 100] + 1) → numCShuffle(Sequence[Random[numC + 1, 10], i, 1, 100]) → randomNosForD, {10, 9, 10, 6, 10, 8, 8, 8, 6, 5, 9, 10, 9, 10, 6, 10, 6, 7, 5, 10, 8, 7, 10, 8, 6, 9, 5, 6, 8, 7, 5, 7, 7, 8, 8, 6, 8, 8, 7, 10, 6, 9, 6, 7, 5, 5, 7, 9, 6, 8, 10, 6, 8, 5, 6, 5, 6, 9, 5, 8, 8, 5, 9, 7, 8, 8, 6, 5, 5, 9, 10, 9, 9, 6, 10, 5, 5, 8, 9, 8, 9, 10, 10, 7, 9, 7, 5, 8, 6, 7, 9, 5, 10, 5, 8, 9, 10, 5, 10, 5}Element(randomNosForD, Mod[questionCount, 100] + 1) → numDShuffle(Sequence[Random[2, 6], i, 1, 100]) → randomNosForB, {5, 3, 5, 2, 6, 2, 6, 4, 5, 6, 6, 3, 2, 3, 6, 2, 3, 3, 2, 5, 2, 6, 4, 6, 6, 5, 6, 5, 6, 5, 2, 4, 2, 4, 6, 5, 5, 3, 6, 2, 2, 5, 6, 4, 3, 5, 6, 3, 4, 6, 2, 2, 2, 4, 6, 4, 5, 6, 6, 4, 6, 2, 3, 6, 3, 5, 3, 5, 3, 3, 5, 3, 6, 2, 3, 4, 3, 6, 2, 6, 4, 2, 3, 6, 2, 3, 5, 6, 3, 2, 6, 5, 2, 3, 2, 6, 2, 4, 2, 5}Element(randomNosForB, Mod[questionCount, 100] + 1) → numBShuffle(Sequence[Random[2, 8], i, 1, 100]) → randomNosForA, {3, 8, 6, 2, 2, 5, 7, 2, 5, 2, 6, 5, 4, 5, 4, 5, 3, 6, 6, 4, 8, 6, 8, 6, 4, 3, 3, 2, 4, 4, 7, 7, 8, 2, 8, 2, 3, 5, 8, 6, 5, 8, 6, 3, 6, 6, 3, 3, 4, 3, 6, 6, 2, 2, 6, 7, 2, 4, 8, 6, 8, 2, 2, 8, 7, 2, 8, 5, 5, 3, 4, 5, 3, 8, 2, 8, 3, 8, 4, 3, 5, 3, 7, 6, 5, 4, 8, 5, 6, 5, 5, 2, 4, 4, 6, 8, 8, 3, 7, 3}Element(randomNosForA, Mod[questionCount, 100] + 1) → zwischenNumAMod(zwischenSolZaehler1, solNenner1) → zwischenSolZaehler2If(zwischenSolZaehler2 ≟ 0, zwischenNumA + 1, zwischenNumA) → numAMod(solZaehler1, solNenner1) → solZaehler2Corner(text1, 3) → Corner1If(¬showhint, Corner1 + (0.8, 0), Corner1 + (0.3, 0)) → PosBox1Corner(text2, 3) → Corner2If(showhint, correctHint, input1 / input2 ≟ Dez1 ∨ ((input8 * input2) + input1) / input2 ≟ Dez1) → correct1Textfield(input1) → InputBox1Textfield(input2) → InputBox2If(solZaehler1 < solNenner1 ∨ ((input8 * input2) + input1) / input2 ≟ Dez1 ∧ input2 > input1, correct1, If[Mod[solZaehler1, solNenner1] ≟ 0, correct1 ∧ correct3, If[solZaehler1 > solNenner1, correct1 ∧ correct2 ∧ correct3]]) → correctPolygon(PtopLeftCornerFeedback, PtopRightCornerFeedback, PbottomRightCornerFeedback, PbottomLeftCornerFeedback) → rectangleCorrect, ptopleftcornerfeedback, ptoprightcornerfeedback, pbottomrightcornerfeedback, pbottomleftcornerfeedbackIf(¬showBoxes, Defined[(input1 * input2)], If[showBoxes ∧ showhint ∧ Mod[input6, input7] ≟ 0, Defined[((((input1 * input2) * input6) * input7) * input3)], If[showBoxes ∧ showhint ∧ Mod[input6, input7] ≠ 0 ∧ input6 > input7, Defined[((((((input1 * input2) * input3) * input4) * input5) * input6) * input7)], If[showBoxes ∧ showhint ∧ Mod[input6, input7] ≠ 0 ∧ input6 < input7, Defined[(((input1 * input2) * input6) * input7)], If[showBoxes ∧ Mod[input1, input2] ≟ 0, Defined[((input1 * input2) * input3)], If[showBoxes ∧ Mod[input1, input2] ≠ 0, Defined[((((input1 * input2) * input3) * input4) * input5)]]]]]]) → fixedSegment(Corner1 + (0.3, -0.63), Corner1 + (1.03, -0.63)) → fTextfield(input3) → InputBox3Textfield(input4) → InputBox4Textfield(input5) → InputBox5If(showBoxes ∧ input6 > input7, Corner2 + (3.2, -1.45), Corner2 + (1.71, -1.45)) → PbottomRightCornerFeedback_{1}If(showBoxes ∧ input6 > input7, Corner2 + (2.29, 0.17), Corner2 + (0.82, 0.17)) → PtopLeftCornerFeedback_{1}Polygon(PtopLeftCornerFeedback_{1}, PtopRightCornerFeedback_{1}, PbottomRightCornerFeedback_{1}, PbottomLeftCornerFeedback_{1}) → rectangleCorrect_{1}, ptopleftcornerfeedback_{1}, ptoprightcornerfeedback_{1}, pbottomrightcornerfeedback_{1}, pbottomleftcornerfeedback_{1}If(showBoxes ∧ input6 > input7, Corner2 + (2.2, -0.2), Corner2 + (0.78, -0.2)) → PtopLeftCornerFeedback_{2}If(showBoxes ∧ input6 > input7, Corner2 + (1.3, -1.05), Corner2 + (-0.05, -1.05)) → PbottomRightCornerFeedback_{2}Polygon(PtopLeftCornerFeedback_{2}, PtopRightCornerFeedback_{2}, PbottomRightCornerFeedback_{2}, PbottomLeftCornerFeedback_{2}) → rectangleCorrect_{2}, ptopleftcornerfeedback_{2}, ptoprightcornerfeedback_{2}, pbottomrightcornerfeedback_{2}, pbottomleftcornerfeedback_{2}If(showBoxes ∧ Mod[input1, input2] ≟ 0, Corner2 + (-0.5, -1.5), If[showBoxes ∧ Mod[input1, input2] ≠ 0, Corner2 + (-0.5, -1.5), Corner1 + (0, -1.5)]) → PointTextCorrectTextfield(input6) → InputBox6Textfield(input7) → InputBox7Segment(Corner2 + (0, -0.63), Corner2 + (0.7, -0.63)) → hIf(showhint ∧ input6 > input7, Corner2 + (2.4, -0.8), Corner2 + (0.9, -0.8)) → Pos3If(showhint ∧ input6 > input7, Segment[Corner2 + (2.4, -0.63), Corner2 + (3.15, -0.63)], Segment[Corner2 + (0.91, -0.63), Corner2 + (1.63, -0.63)]) → gPolygon(PtopLeftCornerFeedback_{3}, PtopRightCornerFeedback_{3}, PbottomRightCornerFeedback_{3}, PbottomLeftCornerFeedback_{3}) → rectangleCorrect_{3}, ptopleftcornerfeedback_{3}, ptoprightcornerfeedback_{3}, pbottomrightcornerfeedback_{3}, pbottomleftcornerfeedback_{3}If(showhint ∧ input6 > input7, Corner2 + (2.4, 0), Corner2 + (0.9, 0)) → Pos2Textfield(input8) → InputBox0Segment(PosBox1 + (0.04, -0.63), PosBox1 + (0.7, -0.63)) → PosLineNumerator(Dez2) → KuerzZaehlerDenominator(Dez2) → KuerzNennerIf(showhint ∧ input6 > input7, Corner2 + (1.4, -0.4), If[showhint ∧ input6 ≟ input7, Corner2 + (1.4, -0.4), Corner2 + (0, -0.4)]) → Pos1
AI Drawing Prompt Reference
Draw a math problem showing the multiplication of a natural number and a mixed number. First, display randomly generated natural numbers and mixed numbers, with the mixed number represented by geometric shapes (like polygons). Then, use geometric methods (e.g., dividing and combining shapes) to show the multiplication process, converting the mixed number to an improper fraction and performing fraction multiplication. Finally, use text boxes to show inputs and explanations, and represent the calculation result with geometric shapes (like rectangles) to ensure the fraction is correct and simplified.
The prompt above was compiled from the original drawing commands and is for reference only.