Making Numbers from Place Value
Loading the math board and drawing, please wait…
This example demonstrates how to construct numbers based on place value. Key mathematical concepts include place value and number representation. Using GeoGebra commands such as If, Sequence, and Flatten, the construction process is dynamically shown. Suitable for high-grade elementary and junior high school students to learn about number concepts and place value.
GeoGebra Commands & Parameters
If(IsInteger[FromBase[onesText, 10]], FromBase[onesText, 10], 0) → onesIf(IsInteger[FromBase[tensText, 10]], FromBase[tensText, 10], 0) → tensIf(IsInteger[FromBase[hundredsText, 10]], FromBase[hundredsText, 10], 0) → hundredsSequence(Point[{(11 * hundreds) + (2 * tens) + (2 * Div[i, 5]), (2 * Mod[i, 5])}], i, 0, ones - 1) → origOnesSequence(Sequence[Point[{(11 * hundreds) + (2 * k), j}], j, 0, 9], k, 0, tens - 1) → origTensSequence(Sequence[Sequence[Point[{i + (11 * k), j}], j, 0, 9], i, 0, 9], k, 0, hundreds - 1) → origHundredsFlatten({origHundreds, origTens, origOnes}) → origSequence(Point[{(11 * Div[number, 100]) + (2 * Div[number - (100 * Div[number, 100]), 10]) + (2 * Div[i, 5]), (2 * Mod[i, 5])}], i, 0, Mod[number, 10] - 1) → properOnesSequence(Sequence[Point[{(11 * Div[number, 100]) + (2 * k), j}], j, 0, 9], k, 0, Div[number - (100 * Div[number, 100]), 10] - 1) → properTensSequence(Sequence[Sequence[Point[{i + (11 * k), j}], j, 0, 9], i, 0, 9], k, 0, Div[number, 100] - 1) → properHundredsFlatten({properHundreds, properTens, properOnes}) → properIf(number ≟ 0, 1, Max[{x(Element[orig, number]), x(Element[proper, number])}] + 1) → maxXTextfield(hundredsText) → InputBox1Textfield(tensText) → InputBox2Textfield(onesText) → InputBox3Zip((AAA * (1 - mover)) + (BBB * mover), AAA, old, BBB, new) → movingZip(Polygon[AAA, AAA + (1, 0), 4], AAA, moving) → l1Polygon(A, B, C, D) → q1, a, b, c, dIf(number ≟ 0, {(-1, -1)}, First[Flatten[Sequence[Sequence[Point[{i, j}], i, 0, maxX - 1, 2], j, 0, (3 * ceil((2 * number / maxX))) - 1, 2]], number]) → altOnesIf(number ≟ 0, {}, Zip[x(AAAA), AAAA, altOnes]) → onesXsIf(number ≟ 0, {}, Sort[altOnes, onesXs]) → altOnes2If(number ≟ 0, 1, Element[Zip[y(AAA), AAA, altOnes], Length[altOnes]]) → maxYFromOnesMax(maxX, (16 / 11 * maxY)) → scaledXMax(maxY, (11 / 16 * maxX)) → scaledY