Ábaco Oriental/Página de edición

De Wikilibros, la colección de libros de texto de contenido libre.
Ir a la navegación Ir a la búsqueda

Acerca de este libro[editar]

La presente obra es la versión en castellano conjunta de los dos Wikibooks en inglés:

que recientemente he contribuido, ampliada con una sección sobre Técnicas avanzadas. Estos wikilibros surgieron en base a unos escritos previos motivados por mi participación en el grupo: Soroban and Abacus Group, del que tanto he aprendido, y a los que quería dotar de una estructura común y un plan que los convirtiera en una guía relativamente completa para el estudio del Ábaco Oriental.

Existen muchos textos sobre el uso del ábaco, normalmente polarizados hacia el ábaco japonés (soroban) o el ábaco chino (suanpan), distinción que parece innecesaria dado que se trata del mismo instrumento y la misma técnica con sólo diferencias menores. Tales textos explican la forma moderna de uso del ábaco, simplificada, basada en una estructura con cuatro cuentas inferiores y una cuenta superior. Como diferencia, en este libro:

  • He evitado sistemáticamente toda polarización ábaco chino - ábaco japones, lo que ha dado lugar al título "Ábaco Oriental", sea éste afortunado o desafortunado
  • He procurado reunir tanto las técnicas modernas como lo que he conseguido aprender sobre las técnicas tradicionales, prácticamente olvidadas en la actualidad, para las que únicamente se puede encontrar alguna referencia en publicaciones académicas. Estas técnicas, que se ven favorecidas por las cuentas adicionales presentes en los ábacos tradicionales (típicamente cinco cuentas inferiores y dos, a veces tres, cuentas superiores), hacen más confortable el uso del ábaco.

Considero que el libro está actualmente completo en cuanto a contenido, pero no acabado. El libro puede beneficiarse de

  • Correcciones de todo tipo
  • Nuevos ejemplos
  • Hojas de ejercicios
  • Incluso de capítulos adicionales
  • Una versión de libro electrónico/versión para imprimir (en la que trabajo actualmente)

Si se anima a participar, encontrará aquí abajo algunas herramientas básicsa para la preparación de diagramas y tablas de procedimientos.

Diagramas de ábacos[editar]

Usando imágenes[editar]

Diagramas del tipo:


¡Encabezado aquí!
A B C D E F G H I K J L M
Suanpan-lw.png Suanpan-9.png Suanpan-18.png Suanpan-9.png Suanpan-0.png Suanpan-0.png Suanpan-1.png Suanpan-0.png Suanpan-0.png Suanpan-0.png Suanpan-0.png Suanpan-9.png Suanpan-9.png Suanpan-9.png Suanpan-rw.png
9 18 9 0 0 1 0 0 0 0 9 9 9

Puede ser preparado en la forma:

{| cellspacing="0" style="text-align:center"
|+ '''¡Encabezado aquí!'''
|-
|
!A
!B
!C
!D
!E
!F
!G
!H
!I
!K
!J
!L
!M
|
|-
| [[ File:suanpan-lw.png|25px]]
| [[ File:suanpan-9.png|25px]]
| [[ File:suanpan-18.png|25px]]
| [[ File:suanpan-9.png|25px]]
| [[ File:suanpan-0.png|25px]]
| [[ File:suanpan-0.png|25px]]
| [[ File:suanpan-1.png|25px]]
| [[ File:suanpan-0.png|25px]]
| [[ File:suanpan-0.png|25px]]
| [[ File:suanpan-0.png|25px]]
| [[ File:suanpan-0.png|25px]]
| [[ File:suanpan-9.png|25px]]
| [[ File:suanpan-9.png|25px]]
| [[ File:suanpan-9.png|25px]]
| [[ File:suanpan-rw.png|25px]]
|-
|
|9
|18
|9
|0
|0
|1
|0
|0
|0
|0
|9
|9
|9
|
|}

o bien puede usar este código AWK rudimentario:

BEGIN{
letras="ABCDEFGHIKJLMNOPQRSTUVWXYZ"
}
{
print "{| cellspacing=\"0\" style=\"text-align:center\"";
print "|+ '''¡Encabezado aquí!'''";
print "|-";
print "|";
for(i=1;i<=NF;i++){
    print "!"substr(letras,i,1);  
    };
print "|";
print "|-";
print "| [[ File:suanpan-lw.png|25px]]";
for(i=1;i<=NF;i++){
    print "| [[ File:suanpan-"$i".png|25px]]";  
    };
print "| [[ File:suanpan-rw.png|25px]]";
print "|-";
print "|";
for(i=1;i<=NF;i++){
    print "|"$i;  
    };
print "|";
print "|}";
}

para generarlo automáticamente a partir de una entrada como esta:

9 18 9 0 0 1 0 0 0 0 9 9 9

También puede usar esta variante para evitar los bordes izquierdo y derecho del ábaco:

BEGIN{
letras="ABCDEFGHIKJLMNOPQRSTUVWXYZ"
}
{
print "{| cellspacing=\"0\" style=\"text-align:center\"";
print "|+ '''Write caption here!'''";
print "|-";
for(i=1;i<=NF;i++){
    print "!"substr(letras,i,1);  
    };
print "|-";
for(i=1;i<=NF;i++){
    print "| [[ File:suanpan-"$i".png|25px]]";  
    };
print "|-";
for(i=1;i<=NF;i++){
    print "|"$i;  
    };
print "|}";
}

es decir:

Write caption here!
A B C D E F G H I K J L M
Suanpan-9.png Suanpan-18.png Suanpan-9.png Suanpan-0.png Suanpan-0.png Suanpan-1.png Suanpan-0.png Suanpan-0.png Suanpan-0.png Suanpan-0.png Suanpan-9.png Suanpan-9.png Suanpan-9.png
9 18 9 0 0 1 0 0 0 0 9 9 9

o bien para un ábaco moderno:

BEGIN{
letras="ABCDEFGHIKJLMNOPQRSTUVWXYZ"
}
{
print "{| cellspacing=\"0\" style=\"text-align:center\"";
print "|+ '''Write caption here!'''";
print "|-";
print "|";
for(i=1;i<=NF;i++){
    print "!"substr(letras,i,1);  
    };
print "|";
print "|-";
print "| [[ File:Soroban-lw.png|30px]]";
for(i=1;i<=NF;i++){
    print "| [[ File:Soroban-"$i".png|30px]]";  
    };
print "| [[ File:Soroban-rw.png|30px]]";
print "|-";
print "|";
for(i=1;i<=NF;i++){
    print "|"$i;  
    };
print "|";
print "|}";
}
Write caption here!
A B C D E F G H I K J L M
Soroban-lw.png Soroban-9.png Soroban-9.png Soroban-8.png Soroban-0.png Soroban-0.png Soroban-1.png Soroban-0.png Soroban-0.png Soroban-0.png Soroban-0.png Soroban-9.png Soroban-9.png Soroban-9.png Soroban-rw.png
9 9 8 0 0 1 0 0 0 0 9 9 9

con

9 9 8 0 0 1 0 0 0 0 9 9 9

y

BEGIN{
letras="ABCDEFGHIKJLMNOPQRSTUVWXYZ"
}
{
print "{| cellspacing=\"0\" style=\"text-align:center\"";
print "|+ '''Write caption here!'''";
print "|-";
for(i=1;i<=NF;i++){
    print "!"substr(letras,i,1);  
    };
print "|-";
for(i=1;i<=NF;i++){
    print "| [[ File:Soroban-"$i".png|30px]]";  
    };
print "|-";
for(i=1;i<=NF;i++){
    print "|"$i;  
    };
print "|}";
}

para esto otro:

Write caption here!
A B C D E F G H I K J L M
Soroban-9.png Soroban-9.png Soroban-8.png Soroban-0.png Soroban-0.png Soroban-1.png Soroban-0.png Soroban-0.png Soroban-0.png Soroban-0.png Soroban-9.png Soroban-9.png Soroban-9.png
9 9 8 0 0 1 0 0 0 0 9 9 9


txt-abacus[editar]

Generados con https://github.com/jccsvq/txt-abacus. Funciona en mi ordenador pero no en mis dispositivos móviles por las fuentes de caracteres disponibles. Mejor olvidarlo por ahora...

   9 18  8  0  0  1              9  9  9
╔═════════════════════════════════════════╗
║  │  │  │  ●  ●  ●  ●  ●  ●  ●  │  │  │  ║
║  │  │  │  │  │  │  │  │  │  │  │  │  │  ║
║  ●  ●  ●  │  │  │  │  │  │  │  ●  ●  ●  ║
╠═════════════════════════════════════════╣
║  ●  ●  ●  │  │  ●  │  │  │  │  ●  ●  ●  ║
║  ●  ●  ●  │  │  │  │  │  │  │  ●  ●  ●  ║
║  ●  ●  ●  ●  ●  │  ●  ●  ●  ●  ●  ●  ●  ║
║  ●  │  │  ●  ●  ●  ●  ●  ●  ●  ●  ●  ●  ║
║  │  │  │  ●  ●  ●  ●  ●  ●  ●  │  │  │  ║
║  ●  ●  ●  ●  ●  ●  ●  ●  ●  ●  │  │  │  ║
║  │  ●  ●  ●  ●  ●  ●  ●  ●  ●  ●  ●  ●  ║
╚═════════════════════════════════════════╝
   A  B  C  D  E  F  G  H  I  J  K  L  M  

Caption text
Header text Header text

   9 18  8  0  0  1              9  9  9
╔═════════════════════════════════════════╗
║  │  │  │  ●  ●  ●  ●  ●  ●  ●  │  │  │  ║
║  │  │  │  │  │  │  │  │  │  │  │  │  │  ║
║  ●  ●  ●  │  │  │  │  │  │  │  ●  ●  ●  ║
╠═════════════════════════════════════════╣
║  ●  ●  ●  │  │  ●  │  │  │  │  ●  ●  ●  ║
║  ●  ●  ●  │  │  │  │  │  │  │  ●  ●  ●  ║
║  ●  ●  ●  ●  ●  │  ●  ●  ●  ●  ●  ●  ●  ║
║  ●  │  │  ●  ●  ●  ●  ●  ●  ●  ●  ●  ●  ║
║  │  │  │  ●  ●  ●  ●  ●  ●  ●  │  │  │  ║
║  ●  ●  ●  ●  ●  ●  ●  ●  ●  ●  │  │  │  ║
║  │  ●  ●  ●  ●  ●  ●  ●  ●  ●  ●  ●  ●  ║
╚═════════════════════════════════════════╝
   A  B  C  D  E  F  G  H  I  J  K  L  M  

Example

Tablas de procedimientos[editar]

El siguiente código awk:

AWK code[editar]

BEGIN {
    FS="|";
    print "{| class=\"wikitable\" style=\"font-family:Courier; line-height: 1.10em;\"";
    print "|+ Encabezado";
    print "|-";
    print "! Abacus !! Comment";
}
{
    sub(/\ *$/,"",$1)
    gsub(/\ /,"\&nbsp;",$1);
    print "|-";
    print "| " $1;
    print "| " $2;
}
END {
    print "|}";
}

permite convertir una entrada como esta:

 ABCDEFGHIJKLM|
    4567890123|Entering radicand starting in CD (first group)
  2           |First root digit in B
   -4         |Subtract square of B from first group
  2  567890123|Null remainder
  4  567890123|Doubling B. Appending next group to remainder
  41 567890123|5/4≈1, try 1 as next root digit
    -4        |Continue division by 41, subtract 1✕41 from EF
     -1|
  41 157890123|15 as remainder
  42 157890123|Double second root digit
  42 157890123|Append next group
  423157890123|157/42≈3, try 3 as next root digit
    -12       |Continue division by 423, subtract 3✕423 from E-H
     -06|
      -09|
  423 30990123|309 as remainder
  426 30990123|Double third root digit
  426 30990123|Append next group
     etc.|

en el siguiente código wiki:

{| class="wikitable" style="font-family:Courier; line-height: 1.10em;"
|+ Encabezado
|-
! Abacus !! Comment
|-
| ABCDEFGHIJKLM
| 
|-
|    4567890123
| Entering radicand starting in CD (first group)
|-
|  2
| First root digit in B
|-
|   -4
| Subtract square of B from first group
|-
|  2  567890123
| Null remainder
|-
|  4  567890123
| Doubling B. Appending next group to remainder
|-
|  41 567890123
| 5/4≈1, try 1 as next root digit
|-
|    -4
| Continue division by 41, subtract 1✕41 from EF
|-
|     -1
| 
|-
|  41 157890123
| 15 as remainder
|-
|  42 157890123
| Double second root digit
|-
|  42 157890123
| Append next group
|-
|  423157890123
| 157/42≈3, try 3 as next root digit
|-
|    -12
| Continue division by 423, subtract 3✕423 from E-H
|-
|     -06
| 
|-
|      -09
| 
|-
|  423 30990123
| 309 as remainder
|-
|  426 30990123
| Double third root digit
|-
|  426 30990123
| Append next group
|-
|     etc.
| 
|}

que será representado de este modo:

Encabezado
Abacus Comment
ABCDEFGHIJKLM
   4567890123 Entering radicand starting in CD (first group)
 2 First root digit in B
  -4 Subtract square of B from first group
 2  567890123 Null remainder
 4  567890123 Doubling B. Appending next group to remainder
 41 567890123 5/4≈1, try 1 as next root digit
   -4 Continue division by 41, subtract 1✕41 from EF
    -1
 41 157890123 15 as remainder
 42 157890123 Double second root digit
 42 157890123 Append next group
 423157890123 157/42≈3, try 3 as next root digit
   -12 Continue division by 423, subtract 3✕423 from E-H
    -06
     -09
 423 30990123 309 as remainder
 426 30990123 Double third root digit
 426 30990123 Append next group
    etc.