//DO NOT REMOVE THIS COPYWRITE INFO! //Child Math Tutor //By Daniel C. Peterson //Web Winder Website Services, 1997-2006 All Rights Reserved. //Distribution, editing or reselling of this script is strictyly prohibited //without expressed written permission from Daniel C. Peterson. //For commercial grade (professional) versions of this and many other //calculators, visit http://www.webwinder.com.
function getNumbers(form) {
if(form.numSets.selectedIndex == 10) {
var now = new Date(); var seed = now.getTime() % 0xffffffff;
var randomNumber = seed % 10;
var seed2 = "" + seed + ""; var randomNumber2 = seed2.substring(0,7); randomNumber2 = eval(randomNumber2 % 10);
//var now2 = new Date(); //var seed2 = now2.getTime() % 0xffffffff;
//var randomNumber2 = parseInt((seed2 / (eval(randomNumber) + eval(1))) % 10,10);
if(form.operation[0].checked) { form.test.value = randomNumber; form.test2.value = randomNumber2; form.sign.value = "+"; } else if(form.operation[1].checked) { form.sign.value = "-"; if(randomNumber > randomNumber2) { form.test.value = randomNumber; form.test2.value = randomNumber2; } else { form.test.value = randomNumber2; form.test2.value = randomNumber; } } else if(form.operation[2].checked) { form.test.value = randomNumber; form.test2.value = randomNumber2; form.sign.value = "x"; } else { form.sign.value = "/"; form.test.value = randomNumber * randomNumber2; if(randomNumber2 < 1) { form.test2.value = eval(randomNumber2) + eval(1); } else { form.test2.value = randomNumber2; } } } else { //IF RANDOM IS NOT SELECTED PERFORM THIS BLOCK //ADVANCE QUESTION NUMBER var questNum = form.questionNumber.value; questNum = eval(questNum) + eval(1); form.questionNumber.value = questNum; var bottomCounter = form.botCount.value; var currentArray = form.botArray.value; if(bottomCounter == "" || bottomCounter == 10) { //GET RANDOM NUMBER TO BE USED AS ARRAY NUMBER. var now = new Date(); var seed = now.getTime() % 0xffffffff; currentArray = seed % 10; form.botArray.value = currentArray; form.botCount.value = 0; bottomCounter = 0; } if(currentArray == 0) { var numArray = new Array(10); numArray[0] = 8; numArray[1] = 3; numArray[2] = 6; numArray[3] = 2; numArray[4] = 5; numArray[5] = 0; numArray[6] = 9; numArray[7] = 7; numArray[8] = 4; numArray[9] = 1; } else if(currentArray == 1) { var numArray = new Array(10); numArray[0] = 3; numArray[1] = 7; numArray[2] = 4; numArray[3] = 1; numArray[4] = 9; numArray[5] = 6; numArray[6] = 0; numArray[7] = 8; numArray[8] = 5; numArray[9] = 2; } else if(currentArray == 2) { var numArray = new Array(10); numArray[0] = 5; numArray[1] = 1; numArray[2] = 8; numArray[3] = 3; numArray[4] = 7; numArray[5] = 9; numArray[6] = 2; numArray[7] = 4; numArray[8] = 6; numArray[9] = 0; } else if(currentArray == 3) { var numArray = new Array(10); numArray[0] = 9; numArray[1] = 6; numArray[2] = 5; numArray[3] = 8; numArray[4] = 2; numArray[5] = 3; numArray[6] = 7; numArray[7] = 1; numArray[8] = 0; numArray[9] = 4; } else if(currentArray == 4) { var numArray = new Array(10); numArray[0] = 2; numArray[1] = 8; numArray[2] = 1; numArray[3] = 0; numArray[4] = 4; numArray[5] = 7; numArray[6] = 5; numArray[7] = 6; numArray[8] = 3; numArray[9] = 9; } else if(currentArray == 5) { var numArray = new Array(10); numArray[0] = 1; numArray[1] = 9; numArray[2] = 3; numArray[3] = 7; numArray[4] = 0; numArray[5] = 8; numArray[6] = 4; numArray[7] = 2; numArray[8] = 6; numArray[9] = 5; } else if(currentArray == 6) { var numArray = new Array(10); numArray[0] = 4; numArray[1] = 0; numArray[2] = 7; numArray[3] = 9; numArray[4] = 1; numArray[5] = 5; numArray[6] = 3; numArray[7] = 8; numArray[8] = 2; numArray[9] = 6; } else if(currentArray == 7) { var numArray = new Array(10); numArray[0] = 7; numArray[1] = 2; numArray[2] = 9; numArray[3] = 6; numArray[4] = 8; numArray[5] = 1; numArray[6] = 0; numArray[7] = 5; numArray[8] = 3; numArray[9] = 4; } else if(currentArray == 8) { var numArray = new Array(10); numArray[0] = 6; numArray[1] = 4; numArray[2] = 2; numArray[3] = 5; numArray[4] = 3; numArray[5] = 7; numArray[6] = 1; numArray[7] = 0; numArray[8] = 9; numArray[9] = 8; } else if(currentArray == 9) { var numArray = new Array(10); numArray[0] = 0; numArray[1] = 5; numArray[2] = 6; numArray[3] = 4; numArray[4] = 9; numArray[5] = 2; numArray[6] = 8; numArray[7] = 3; numArray[8] = 1; numArray[9] = 7; } randomNumber = numArray[bottomCounter]; bottomCounter++; form.botCount.value = bottomCounter; //DETERMINE OPERATION SIGN TO USE if(form.operation[0].checked) { form.sign.value = "+"; } else if(form.operation[1].checked) { form.sign.value = "-"; } else if(form.operation[2].checked) { form.sign.value = "x"; } else { form.sign.value = "/"; } if(form.numSets.selectedIndex == 0) { if(form.operation[3].checked) { form.test.value = randomNumber * form.numSets.selectedIndex; form.test2.value = 0; alert("Sorry, you cannot divide any number by zero. Please select a number set greater than zero if you would like to work with division."); } else { if(form.operation[1].checked && 0 < randomNumber) { form.test.value = randomNumber; form.test2.value = 0; } else { form.test.value = 0; form.test2.value = randomNumber; } } } else if(form.numSets.selectedIndex == 1) { if(form.operation[3].checked) { form.test.value = randomNumber * form.numSets.selectedIndex; form.test2.value = 1; } else { if(form.operation[1].checked && 1 < randomNumber) { form.test.value = randomNumber; form.test2.value = 1; } else { form.test.value = 1; form.test2.value = randomNumber; } } } else if(form.numSets.selectedIndex == 2) { if(form.operation[3].checked) { form.test.value = randomNumber * form.numSets.selectedIndex; form.test2.value = 2; } else { if(form.operation[1].checked && 2 < randomNumber) { form.test.value = randomNumber; form.test2.value = 2; } else { form.test.value = 2; form.test2.value = randomNumber; } } } else if(form.numSets.selectedIndex == 3) { if(form.operation[3].checked) { form.test.value = randomNumber * form.numSets.selectedIndex; form.test2.value = 3; } else { if(form.operation[1].checked && 3 < randomNumber) { form.test.value = randomNumber; form.test2.value = 3; } else { form.test.value = 3; form.test2.value = randomNumber; } } } else if(form.numSets.selectedIndex == 4) { if(form.operation[3].checked) { form.test.value = randomNumber * form.numSets.selectedIndex; form.test2.value = 4; } else { if(form.operation[1].checked && 4 < randomNumber) { form.test.value = randomNumber; form.test2.value = 4; } else { form.test.value = 4; form.test2.value = randomNumber; } } } else if(form.numSets.selectedIndex == 5) { if(form.operation[3].checked) { form.test.value = randomNumber * form.numSets.selectedIndex; form.test2.value = 5; } else { if(form.operation[1].checked && 5 < randomNumber) { form.test.value = randomNumber; form.test2.value = 5; } else { form.test.value = 5; form.test2.value = randomNumber; } } } else if(form.numSets.selectedIndex == 6) { if(form.operation[3].checked) { form.test.value = randomNumber * form.numSets.selectedIndex; form.test2.value = 6; } else { if(form.operation[1].checked && 6 < randomNumber) { form.test.value = randomNumber; form.test2.value = 6; } else { form.test.value = 6; form.test2.value = randomNumber; } } } else if(form.numSets.selectedIndex == 7) { if(form.operation[3].checked) { form.test.value = randomNumber * form.numSets.selectedIndex; form.test2.value = 7; } else { if(form.operation[1].checked && 7 < randomNumber) { form.test.value = randomNumber; form.test2.value = 7; } else { form.test.value = 7; form.test2.value = randomNumber; } } } else if(form.numSets.selectedIndex == 8) { if(form.operation[3].checked) { form.test.value = randomNumber * form.numSets.selectedIndex; form.test2.value = 8; } else { if(form.operation[1].checked && 8 < randomNumber) { form.test.value = randomNumber; form.test2.value = 8; } else { form.test.value = 8; form.test2.value = randomNumber; } } } else if(form.numSets.selectedIndex == 9) { if(form.operation[3].checked) { form.test.value = randomNumber * form.numSets.selectedIndex; form.test2.value = 9; } else { if(form.operation[1].checked && 9 < randomNumber) { form.test.value = randomNumber; form.test2.value = 9; } else { form.test.value = 9; form.test2.value = randomNumber; } } } } //END BLOCK FOR NUMBER SETS form.answer.value = ""; form.check.value = ""; form.answer.focus(); } function checkAnswer(form) { var now = new Date(); var time = now.getHours() * 60 * 60; var minute = now.getMinutes() * 60; var second = now.getSeconds(); var VcurrentTime = eval(time) + eval(minute) + eval(second); var hours = 0; var totalTime = eval(VcurrentTime) - eval(form.startTime.value); if (totalTime > 3600) { hours = parseInt(totalTime / 3600,10); minute = parseInt(totalTime % 3600 / 60,10); second = totalTime % 60; } else if (totalTime > 60) { hours = 0; minute = parseInt(totalTime / 60,10); second = totalTime % 60; } else { hours = 0; minute = "0"; second = totalTime % 60; }
if(hours < 10) { hours = "0" + hours; } if(minute < 10) { minute = "0" + minute; } if(second < 10) { second = "0" + second; } form.currentTime.value = ("" + hours + ":" + minute + ":" + second + ""); var correctAnswer = "0"; if(form.operation[0].checked) { correctAnswer = eval(form.test.value) + eval(form.test2.value); } else if(form.operation[1].checked) { correctAnswer = eval(form.test.value) - eval(form.test2.value); } else if(form.operation[2].checked) { correctAnswer = eval(form.test.value) * eval(form.test2.value); } else { correctAnswer = eval(form.test.value) / eval(form.test2.value); } if(form.answer.value == correctAnswer) { form.check.value = "That's correct " + form.firstname.value + "!"; if(form.operation[0].checked) { form.HaddRight.value = eval(form.HaddRight.value) + eval(1); } else if(form.operation[1].checked) { form.HsubRight.value = eval(form.HsubRight.value) + eval(1); } else if(form.operation[2].checked) { form.HmultRight.value = eval(form.HmultRight.value) + eval(1); } else if(form.operation[3].checked) { form.HdivRight.value = eval(form.HdivRight.value) + eval(1); } } else { form.check.value = "[" + form.answer.value + "] was Incorrect " + form.firstname.value + "."; if(form.operation[0].checked) { form.HaddWrong.value = eval(form.HaddWrong.value) + eval(1); } else if(form.operation[1].checked) { form.HsubWrong.value = eval(form.HsubWrong.value) + eval(1); } else if(form.operation[2].checked) { form.HmultWrong.value = eval(form.HmultWrong.value) + eval(1); } else if(form.operation[3].checked) { form.HdivWrong.value = eval(form.HdivWrong.value) + eval(1); } form.answer.value = ""; form.answer.focus(); } } function resetOperation(form) { form.test.value = ""; form.test2.value = ""; form.answer.value = ""; form.check.value = ""; if(form.operation[0].checked) { form.sign.value = "+"; } else if(form.operation[1].checked) { form.sign.value = "-"; } else if(form.operation[2].checked) { form.sign.value = "x"; } else { form.sign.value = "/"; } } function enter1(form) { form.answer.value = form.answer.value + "" + "1"; } function enter2(form) { form.answer.value = form.answer.value + "" + "2"; } function enter3(form) { form.answer.value = form.answer.value + "" + "3"; } function enter4(form) { form.answer.value = form.answer.value + "" + "4"; } function enter5(form) { form.answer.value = form.answer.value + "" + "5"; } function enter6(form) { form.answer.value = form.answer.value + "" + "6"; } function enter7(form) { form.answer.value = form.answer.value + "" + "7"; } function enter8(form) { form.answer.value = form.answer.value + "" + "8"; } function enter9(form) { form.answer.value = form.answer.value + "" + "9"; } function enter0(form) { form.answer.value = form.answer.value + "" + "0"; } function clearAnswer(form) { form.answer.value = ""; } function reportCard(form) { var addRight = form.HaddRight.value; var addWrong = form.HaddWrong.value; var addTotal = eval(addRight) + eval(addWrong); var addPercent = parseInt(addRight / addTotal * 100,10); var addGrade = ""; if(addTotal == 0) { addPercent = "0" addGrade = "N/A"; } else if(addPercent >= 90) { addGrade = "A"; } else if(addPercent >= 80) { addGrade = "B"; } else if(addPercent >= 70) { addGrade = "C"; } else if(addPercent >= 60) { addGrade = "D"; } else { addGrade = "F"; }
var subRight = form.HsubRight.value; var subWrong = form.HsubWrong.value; var subTotal = eval(subRight) + eval(subWrong); var subPercent = parseInt(subRight / subTotal * 100,10); var subGrade = ""; if(subTotal == 0) { subPercent = "0" subGrade = "N/A"; } else if(subPercent >= 90) { subGrade = "A"; } else if(subPercent >= 80) { subGrade = "B"; } else if(subPercent >= 70) { subGrade = "C"; } else if(subPercent >= 60) { subGrade = "D"; } else { subGrade = "F"; }
var multRight = form.HmultRight.value; var multWrong = form.HmultWrong.value; var multTotal = eval(multRight) + eval(multWrong); var multPercent = parseInt(multRight / multTotal * 100,10); var multGrade = ""; if(multTotal == 0) { multPercent = "0" multGrade = "N/A"; } else if(multPercent >= 90) { multGrade = "A"; } else if(multPercent >= 80) { multGrade = "B"; } else if(multPercent >= 70) { multGrade = "C"; } else if(multPercent >= 60) { multGrade = "D"; } else { multGrade = "F"; }
var divRight = form.HdivRight.value; var divWrong = form.HdivWrong.value; var divTotal = eval(divRight) + eval(divWrong); var divPercent = parseInt(divRight / divTotal * 100,10); var divGrade = ""; if(divTotal == 0) { divPercent = "0" divGrade = "N/A"; } else if(divPercent >= 90) { divGrade = "A"; } else if(divPercent >= 80) { divGrade = "B"; } else if(divPercent >= 70) { divGrade = "C"; } else if(divPercent >= 60) { divGrade = "D"; } else { divGrade = "F"; }
var allRight = eval(addRight) + eval(subRight) + eval(multRight) + eval(divRight); var allWrong = eval(addWrong) + eval(subWrong) + eval(multWrong) + eval(divWrong); var allTotal = eval(allRight) + eval(allWrong); var allPercent = parseInt(allRight / allTotal * 100,10); var allGrade = ""; if(allTotal == 0) { allPercent = "0" allGrade = "N/A"; } else if(allPercent >= 90) { allGrade = "A"; } else if(allPercent >= 80) { allGrade = "B"; } else if(allPercent >= 70) { allGrade = "C"; } else if(allPercent >= 60) { allGrade = "D"; } else { allGrade = "F"; }
var now = new Date(); var time = now.getHours() * 60 * 60; var minute = now.getMinutes() * 60; var second = now.getSeconds(); var VcurrentTime = eval(time) + eval(minute) + eval(second);
var totalTime = eval(VcurrentTime) - eval(form.startTime.value); var timePerQuest = 0; if(allTotal ==0) { timePerQuest = "N/A"; } else { timePerQuest = parseInt(totalTime / allTotal,10); }
var head = "
";
var headRow = "
Operation | Total Answered | Total Right | Percent Right | Letter Grade |
Addition | " + addTotal + " | " + addRight + " | " + addPercent + "% | " + addGrade + " |
Subtraction | " + subTotal + " | " + subRight + " | " + subPercent + "% | " + subGrade + " |
Multipication | " + multTotal + " | " + multRight + " | " + multPercent + "% | " + multGrade + " |
Division | " + divTotal + " | " + divRight + " | " + divPercent + "% | " + divGrade + " |
Overall | " + allTotal + " | " + allRight + " | " + allPercent + "% | " + allGrade + " |
Elapsed time: " + form.currentTime.value + " | ||||
Average time spent on each equation: " + timePerQuest + " seconds. |
var foot = "