安第斯算盘:自然数四则运算与概率模拟互动教具
几何画板及绘图内容加载中,请稍等……
本范例演示一种名为“塔普塔尼塔”(Taptanita)的安第斯传统计算工具,模拟类似算盘的珠算操作,用于教学自然数的加法、减法及四则运算。核心数学概念包括自然数运算、随机过程模拟、概率统计入门。构造要点:使用Polygon命令绘制玉米粒与豆粒的排列图形,Sequence与Join命令生成序列与集合,Random与Mod命令实现随机抽取与取模运算,CircleArc与Semicircle命令绘制弧形装饰,Vector与PointIn命令定位元素,Textfield实现交互输入。适合小学至初中数学课堂,用于直观展示算术运算过程或作为概率实验的动手操作教具。
GeoGebra 命令及参数
Join({Sequence[Rotate[(0, (-4.55 * s)), (k * pi / 5), CentroChoza(2)], k, 4, -4, -1], CentroKilla, {Rotate[(0, (-4.55 * s)), (4 * pi / 5), CentroChoza(2)]}}) → CentroPozoSequence(Text[("CHOZA " * k), CentroChoza(k) + ajusteChoza], k, 1, 2) → textoChozaSequence(Text[("POZO " * k), CentroPozo(k) + ajustePozo], k, 1, 9) → textoPozoSemicircle(CentroKilla(1) + ((1.52 * s), 0), CentroKilla(1) - ((1.52 * s), 0)) → killaPolygon(CentroChoza(2) - ((3.4, 3.4) * s), CentroChoza(2) + ((3.4, -3.4) * s), CentroChoza(1) + ((3.4, 1.6) * s), CentroChoza(1) - ((3.4, -1.6) * s)) → zona, f, g, h, iPointIn(zona) → C1M0aPointIn(zona) → C1M1aPointIn(zona) → C1M2aPointIn(zona) → C1M3aPointIn(zona) → C1M4aPointIn(zona) → C1M5aPointIn(zona) → C1M6aPointIn(zona) → C1M7aPointIn(zona) → C1M8aPointIn(zona) → C1M9aPointIn(zona) → C1P0aPointIn(zona) → C1P1aPointIn(zona) → C1P2aPointIn(zona) → C1P3aPointIn(zona) → C1P4aPointIn(zona) → C1P5aPointIn(zona) → C1P6aPointIn(zona) → C1P7aPointIn(zona) → C1P8aPointIn(zona) → C1P9aPointIn(zona) → C1H1aPointIn(zona) → C1H2aPointIn(zona) → C1H3aPointIn(zona) → C1H4aPointIn(zona) → C1H5aPointIn(zona) → C1H6aPointIn(zona) → C1H7aPointIn(zona) → C1H8aPointIn(zona) → C1H9aPointIn(zona) → C2M0aPointIn(zona) → C2M1aPointIn(zona) → C2M2aPointIn(zona) → C2M3aPointIn(zona) → C2M4aPointIn(zona) → C2M5aPointIn(zona) → C2M6aPointIn(zona) → C2M7aPointIn(zona) → C2M8aPointIn(zona) → C2M9aPointIn(zona) → C2P0aPointIn(zona) → C2P1aPointIn(zona) → C2P2aPointIn(zona) → C2P3aPointIn(zona) → C2P4aPointIn(zona) → C2P5aPointIn(zona) → C2P6aPointIn(zona) → C2P7aPointIn(zona) → C2P8aPointIn(zona) → C2P9aPointIn(zona) → C2H1aPointIn(zona) → C2H2aPointIn(zona) → C2H3aPointIn(zona) → C2H4aPointIn(zona) → C2H5aPointIn(zona) → C2H6aPointIn(zona) → C2H7aPointIn(zona) → C2H8aPointIn(zona) → C2H9aCorner(1, 1) → E1Random(1, 1000000) → activarJoin({Sequence[{CentroPozo(k) - (anchoM, altoM) / 2, CentroPozo(k) + (anchoM, (-altoM)) / 2}, k, 1, 9], {posKillaM}}) → posPozosMSequence(Rotate[CentroPozo(k) - ((0.2, 0.05) * s), ((-k) * pi / 5), CentroPozo(k)], k, 1, 9) → posPozosHaSequence(Rotate[posPozosHa(k) + (anchoH, 0), (((-(k - 1)) * pi)) / 5, posPozosHa(k)], k, 1, 9) → posPozosHbSequence(Circle[CentroPozo(k), (0.66 * s)], k, 1, 9) → pozoSequence(posC1Maiz(k) + CentroChoza(2) - CentroChoza(1), k, 1, 10) → posC2MaizSequence(Rotate[CentroChoza(1) + (((-anchoP)) / 2, (0.5 * s)), ((-k) * pi / 5), CentroChoza(1)], k, 1, 10) → posC1PorotoSequence(posC1Poroto(k) + CentroChoza(2) - CentroChoza(1), k, 1, 10) → posC2PorotoSequence(Rotate[CentroChoza(1) + (((-anchoH)) / 2, (0.75 * s)), ((-k) * pi / 5), CentroChoza(1)], k, 1, 10) → posC1HabaSequence(posC1Haba(k) + CentroChoza(2) - CentroChoza(1), k, 1, 10) → posC2HabaJoin({Sequence[Rotate[CentroPozo(k) - ((-0.2, 0.05) * s), ((-k) * pi / 5), CentroPozo(k)], k, 1, 9], {posKillaP(1)}}) → posPozosPaJoin({Sequence[Rotate[posPozosPa(k) - (anchoP, 0), (((-(k - 1)) * pi)) / 5, posPozosPa(k)], k, 1, 9], {posKillaP(2)}}) → posPozosPbVector(CentroChoza(2) + (0.65 * (CentroPozo(9) - CentroChoza(2))) - (0.2, 0.15), CentroChoza(2) + (0.65 * (CentroPozo(9) - CentroChoza(2)))) → flechaSentidoHorarioCircleArc(CentroChoza(2), CentroChoza(2) + (0.65 * (CentroPozo(9) - CentroChoza(2))), CentroChoza(2) + (0.65 * (CentroPozo(1) - CentroChoza(2)))) → sentidoIf(sumar9 ∨ restar9, contar9) → cIf(contar, N1, sumar, N1 + N2, N1 - N2) → TIf(contar19 ∧ aux ≟ 1, 0, floor(N1 / 100)) → c1If(contar19 ∧ aux ≟ 1, 10, contar19 ∧ aux ≟ 0, 0, floor((N1 - (c1 * 100)) / 10)) → d1If(contar19 ∧ aux ≟ 1, floor((N1 - 100) / 10), contar19 ∧ aux ≟ 0, 0, floor((N2 - (c2 * 100)) / 10)) → d2If(contar19 ∧ aux ≟ 0, 10, contar19 ∧ aux ≟ 1, 0, N1 - (100 * c1) - (10 * d1)) → u1If(contar19 ∧ aux ≟ 0, N1 - 10, contar19 ∧ aux ≟ 1, N1 - 100 - (10 * d2), N2 - (100 * c2) - (10 * d2)) → u2Mod(u1 + u2, 10) → u12Mod(d1 + d2, 10) → d12Vector(CentroChoza(2) + (0.65 * (CentroPozo(1) - CentroChoza(2))) + (0.2, -0.15), CentroChoza(2) + (0.65 * (CentroPozo(1) - CentroChoza(2)))) → flechaSentidoAntiHorarioTextfield(N1) → CasillaDeEntrada1Textfield(N2) → CasillaDeEntrada2