Making Numbers from Place Value

Making Numbers from Place Value
Loading the math board and drawing, please wait…
2019-04-23 20:33
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

  1. If(IsInteger[FromBase[onesText, 10]], FromBase[onesText, 10], 0) → ones
  2. If(IsInteger[FromBase[tensText, 10]], FromBase[tensText, 10], 0) → tens
  3. If(IsInteger[FromBase[hundredsText, 10]], FromBase[hundredsText, 10], 0) → hundreds
  4. Sequence(Point[{(11 * hundreds) + (2 * tens) + (2 * Div[i, 5]), (2 * Mod[i, 5])}], i, 0, ones - 1) → origOnes
  5. Sequence(Sequence[Point[{(11 * hundreds) + (2 * k), j}], j, 0, 9], k, 0, tens - 1) → origTens
  6. Sequence(Sequence[Sequence[Point[{i + (11 * k), j}], j, 0, 9], i, 0, 9], k, 0, hundreds - 1) → origHundreds
  7. Flatten({origHundreds, origTens, origOnes}) → orig
  8. Sequence(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) → properOnes
  9. Sequence(Sequence[Point[{(11 * Div[number, 100]) + (2 * k), j}], j, 0, 9], k, 0, Div[number - (100 * Div[number, 100]), 10] - 1) → properTens
  10. Sequence(Sequence[Sequence[Point[{i + (11 * k), j}], j, 0, 9], i, 0, 9], k, 0, Div[number, 100] - 1) → properHundreds
  11. Flatten({properHundreds, properTens, properOnes}) → proper
  12. If(number ≟ 0, 1, Max[{x(Element[orig, number]), x(Element[proper, number])}] + 1) → maxX
  13. Textfield(hundredsText) → InputBox1
  14. Textfield(tensText) → InputBox2
  15. Textfield(onesText) → InputBox3
  16. Zip((AAA * (1 - mover)) + (BBB * mover), AAA, old, BBB, new) → moving
  17. Zip(Polygon[AAA, AAA + (1, 0), 4], AAA, moving) → l1
  18. Polygon(A, B, C, D) → q1, a, b, c, d
  19. If(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]) → altOnes
  20. If(number ≟ 0, {}, Zip[x(AAAA), AAAA, altOnes]) → onesXs
  21. If(number ≟ 0, {}, Sort[altOnes, onesXs]) → altOnes2
  22. If(number ≟ 0, 1, Element[Zip[y(AAA), AAA, altOnes], Length[altOnes]]) → maxYFromOnes
  23. Max(maxX, (16 / 11 * maxY)) → scaledX
  24. Max(maxY, (11 / 16 * maxX)) → scaledY