从位值构建数字
几何画板及绘图内容加载中,请稍等……
这个范例演示如何根据位值构建数字。核心数学概念包括位值制和数字表示。通过使用GeoGebra命令如If, Sequence, Flatten等,可以动态展示数字的构建过程。适合小学高年级和初中学生学习数字概念和位值制。
GeoGebra 命令及参数
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