Rechnen mit dem Abakus
![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() |
||||||||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
||||||||||
![]() |
0 | ![]() |
// Abakus (c)2007 dh
// Initialisierung des Abakus
var pCol = 0;
var pPos = 0;
var number = 0;
var st = new Array(2);
st[0] = new Array(0,5,5,5,5,5,5,5);
st[1] = new Array(0,6,6,6,6,6,6,6);
function mouseUp(pID) {
// wird aufgerufen, wenn die gedrückte Maustaste
// über dem Abakus losgelassen wird
var r = 0;
var h = 0;
pCol = Math.floor(pID/10);
pPos = pID - 10*pCol;
if (pPos < 6) {st[0][pCol] = (pPos <= st[0][pCol]) ? (pPos-1) : pPos}
else {st[1][pCol] = (pPos <= st[1][pCol]) ? (pPos-1) : pPos}
for (r=0; r<6; r++) {
h = (st[0][pCol] == r) ? 25 : 1;
document.getElementById("s"+pCol+r).setAttribute("height", ""+h);
}
for (r=6; r<9; r++) {
h = (st[1][pCol] == r) ? 18 : 1;
document.getElementById("s"+pCol+r).setAttribute("height", ""+h);
}
calculateNumber();
}
function calculateNumber() {
// wertet die Positionen der Abakusperlen aus
// und gibt die im Abakus gespeicherte Zahl aus
var w = 0;
number = 0;
for (w=1; w<8; w++) {
number = number + (5-st[0][w])*Math.pow(10,w-1);
}
for (w=1; w<8; w++) {
number = number + (st[1][w]-6)*5*Math.pow(10,w-1);
}
ausgabe ("numAbak", ""+number);
}
var defaultNode = document.createTextNode("");
function ausgabe (ST, out) {
// gibt den Wert von out an einer bestimmten Stelle im Dokument aus
with (document.getElementById (ST)) {
outNode = document.createTextNode("");
appendChild (defaultNode);
replaceChild (outNode, document.getElementById(ST).firstChild);
outNode = document.createTextNode(out);
appendChild (defaultNode);
replaceChild (outNode, document.getElementById(ST).firstChild);
}
}
// Initialisierung des Abakus
var pCol = 0;
var pPos = 0;
var number = 0;
var st = new Array(2);
st[0] = new Array(0,5,5,5,5,5,5,5);
st[1] = new Array(0,6,6,6,6,6,6,6);
function mouseUp(pID) {
// wird aufgerufen, wenn die gedrückte Maustaste
// über dem Abakus losgelassen wird
var r = 0;
var h = 0;
pCol = Math.floor(pID/10);
pPos = pID - 10*pCol;
if (pPos < 6) {st[0][pCol] = (pPos <= st[0][pCol]) ? (pPos-1) : pPos}
else {st[1][pCol] = (pPos <= st[1][pCol]) ? (pPos-1) : pPos}
for (r=0; r<6; r++) {
h = (st[0][pCol] == r) ? 25 : 1;
document.getElementById("s"+pCol+r).setAttribute("height", ""+h);
}
for (r=6; r<9; r++) {
h = (st[1][pCol] == r) ? 18 : 1;
document.getElementById("s"+pCol+r).setAttribute("height", ""+h);
}
calculateNumber();
}
function calculateNumber() {
// wertet die Positionen der Abakusperlen aus
// und gibt die im Abakus gespeicherte Zahl aus
var w = 0;
number = 0;
for (w=1; w<8; w++) {
number = number + (5-st[0][w])*Math.pow(10,w-1);
}
for (w=1; w<8; w++) {
number = number + (st[1][w]-6)*5*Math.pow(10,w-1);
}
ausgabe ("numAbak", ""+number);
}
var defaultNode = document.createTextNode("");
function ausgabe (ST, out) {
// gibt den Wert von out an einer bestimmten Stelle im Dokument aus
with (document.getElementById (ST)) {
outNode = document.createTextNode("");
appendChild (defaultNode);
replaceChild (outNode, document.getElementById(ST).firstChild);
outNode = document.createTextNode(out);
appendChild (defaultNode);
replaceChild (outNode, document.getElementById(ST).firstChild);
}
}