// Copyright (c)2001 Marian W. Boscia ALL RIGHTS RESERVED.



var inputAmount = new Array();
for (var k=0; k<lines+1; k++){ inputAmount[k] = 0;}

var RightorWrong =  new Array();
for (var k=0; k<lines; k++){ RightorWrong[k] = "correct";}

function calc(n) {
var z1 = document.calculation.calc1.value;
checknum(z1,1);
var z2 = document.calculation.calc2.value;
checknum(z2,2);
if(n==1) {c=a + b;}
if(n==2) {c=a - b;}
if(n==3) {c=a * b;}
if(n==4) {c=a / b;}
formatNumber(c);
document.calculation.calc3.value = commaAmount;
savedAnswer = document.calculation.calc3.value;
}



var dollarAmount = " ";
var commaAmount = " ";

function formatNumber(x){
var y1 = " ";
var y3 = " ";

var formatedNumber =0;
var places = 3;
if( x < 0) { y1 = "(";  y3 = ")"; x = -x;}
var roundedx0 = Math.round(x);
var roundedx1 = Math.round(x*10)/10;
formatedNumber = Math.round(x*100)/100;

if (formatedNumber  ==  roundedx1) {places = 2;}
if (formatedNumber  ==  roundedx0) {places = 0;}
    

if (formatedNumber  < 1000 ){ 
       dollarAmount  = "    $" + y1 + formatedNumber  + y3; 
      commaAmount =  "    " + y1 + formatedNumber  +y3; }
var y2= " " + formatedNumber ;
var leny2 = y2.length;

if ((formatedNumber  >= 1000)  && (formatedNumber  < 100000) )
{dollarAmount   = "$  " + y1+ y2.substring(1,leny2-3-places) + "," + y2.substring(leny2-3-places,leny2)+ y3;
 commaAmount =   "    " + y1+ y2.substring(1,leny2-3-places) + "," + y2.substring(leny2-3-places,leny2)+ y3;}

if ((formatedNumber  >= 100000)  && (formatedNumber  < 1000000) )
{dollarAmount   = "$" + y1+ y2.substring(1,leny2-3-places) + "," + y2.substring(leny2-3-places,leny2)+ y3;
 commaAmount =   "  " + y1+ y2.substring(1,leny2-3-places) + "," + y2.substring(leny2-3-places,leny2)+ y3;}

if ((formatedNumber  >= 1000000)  && (formatedNumber  < 1000000000) )
{dollarAmount   = "$"+ y1+ y2.substring(1 , leny2-6-places) + "," + y2.substring(leny2-6-places, leny2 - 3-places) + "," + y2.substring( leny2 - 3-places,leny2)+ y3;
 commaAmount =  y1 + y2.substring(1,leny2-6-places) + "," + y2.substring(leny2-6-places,leny2-3-places) + "," + y2.substring(leny2-3-places,leny2)+ y3;}

}

function formatNumber2(x){
var y1 = " ";
var y3 = " ";

var formatedNumber =0;
var places = 2;
if( x < 0) { y1 = "(";  y3 = ")"; x = -x;}
formatedNumber = Math.round(x*100);
var y2= " " + formatedNumber ;
var leny2 = y2.length; 
if (formatedNumber  < 100000 ){ 
       dollarAmount  = "$" + y1 + y2.substring(1,leny2-places) +"." + y2.substring(leny2-places,leny2)  + y3; 
      commaAmount =  "    " + y1 + y2.substring(1,leny2-places) +"." + y2.substring(leny2-places,leny2)  + y3; }
if ((formatedNumber  >= 100000)  && (formatedNumber  < 10000000) )
{dollarAmount   = "$" + y1+ y2.substring(1,leny2-3-places) + "," + y2.substring(leny2-3-places,leny2)+ y3;
 commaAmount =   "    " + y1+ y2.substring(1,leny2-3-places) + "," + y2.substring(leny2-3-places,leny2)+ y3;}
}

var percentage=1;

function checknum(y1,n){
var lengthy = y1.length;
var newline = " ";
var percentage = 1;
isNegative = 1;
var ysub = new Array(lengthy);

for (var i=0; i<lengthy; i++)
  { ysub[i] = y1.substring(i,i+1);
  if(ysub[i].indexOf("%")!= "-1") {percentage=100;} 
  if( (ysub[i].indexOf("-")!= "-1") ||  (ysub[i].indexOf("(")!= "-1") ||  (ysub[i].indexOf(")")!= "-1") ){isNegative = -1;} 
    }

lengthy = y1.length;
for (var k=0; k<lengthy; k++){
    ysub[0] = y1.substring(0,1);
   if(ysub[0].indexOf("0")!= "-1"){y1=y1.substring(1,lengthy);}
    }
lengthy = y1.length;
for (var i=0; i<lengthy; i++){
    ysub[i] = y1.substring(i,i+1);
   if(ysub[i].indexOf("0")!= "-1") {newline = newline + ysub[i];}
   if(ysub[i].indexOf("1")!= "-1") {newline = newline + ysub[i];}
   if(ysub[i].indexOf("2")!= "-1") {newline = newline + ysub[i];}
   if(ysub[i].indexOf("3")!= "-1") {newline = newline + ysub[i];}
   if(ysub[i].indexOf("4")!= "-1") {newline = newline + ysub[i];}
   if(ysub[i].indexOf("5")!= "-1") {newline = newline + ysub[i];}
   if(ysub[i].indexOf("6")!= "-1") {newline = newline + ysub[i];}
   if(ysub[i].indexOf("7")!= "-1") {newline = newline + ysub[i];}
   if(ysub[i].indexOf("8")!= "-1") {newline = newline + ysub[i];}
   if(ysub[i].indexOf("9")!= "-1") {newline = newline + ysub[i];}
   if(ysub[i].indexOf(".")!= "-1") {newline = newline + ysub[i];}
   }
y1=newline;
if(n==1){a= isNegative * y1/percentage;}
if(n==2){b= isNegative * y1/percentage;}
if(n==3){g = isNegative * y1;}
}

function checkanswers(y){
settotals();
for (var m=1; m<lines; m++){
          if(y==m) {
               if( inputAmount[m] != correctAmount[m]){  
                 inputAmount[m] =0; 
                 alert("That entry is incorrect.  Please try again."); d=0;  setform1(d,m);} 
            }
      }
checkscore();
}

function setform1(d,y){
formatNumber(d);

if(d==0){
if(y==0) {document.calculation.T1.value = " ";}
if(y==1) {document.calculation.T2.value = " ";}
if(y==2) {document.calculation.T3.value = " ";}
if(y==3) {document.calculation.T4.value = " ";}
if(y==4) {document.calculation.T5.value = " ";}
if(y==5) {document.calculation.T6.value = " ";}
if(y==6) {document.calculation.T7.value = " ";}
if(y==7) {document.calculation.T8.value = " ";}
if(y==8) {document.calculation.T9.value = " ";}
if(y==9) {document.calculation.T10.value = " ";}
if(y==10) {document.calculation.T11.value = " ";}
if(y==11) {document.calculation.T12.value = " ";}
if(y==12) {document.calculation.T13.value = " ";}
if(y==13) {document.calculation.T14.value = " ";}
      }
else{
if(y==0) {document.calculation.T1.value = dollarAmount;}
if(y==1) {document.calculation.T2.value = commaAmount;}
if(y==2) {document.calculation.T3.value = commaAmount;}
if(y==3) {document.calculation.T4.value = commaAmount;}
if(y==4) {document.calculation.T5.value = commaAmount;}
if(y==5) {document.calculation.T6.value = commaAmount;}
if(y==6) {document.calculation.T7.value = commaAmount;}
if(y==7) {document.calculation.T8.value = dollarAmount;}
if(y==8) {document.calculation.T9.value = commaAmount;}
if(y==9) {document.calculation.T10.value = dollarAmount;}
if(y==10) {document.calculation.T11.value = commaAmount;}
if(y==11) {document.calculation.T12.value = dollarAmount;}
if(y==12) {document.calculation.T13.value = commaAmount;}
if(y==13) {document.calculation.T14.value = dollarAmount;}
    }

}

function setform2(d,y){
formatNumber2(d);

if(d==0){
if(y==0) {document.calculation.T1.value = " ";}
if(y==1) {document.calculation.T2.value = " ";}
if(y==2) {document.calculation.T3.value = " ";}
if(y==3) {document.calculation.T4.value = " ";}
if(y==4) {document.calculation.T5.value = " ";}
if(y==5) {document.calculation.T6.value = " ";}
if(y==6) {document.calculation.T7.value = " ";}
      }
else{
if(y==0) {document.calculation.T1.value = dollarAmount;}
if(y==1) {document.calculation.T2.value = commaAmount;}
if(y==2) {document.calculation.T3.value = dollarAmount;}
if(y==3) {document.calculation.T4.value = commaAmount;}
if(y==4) {document.calculation.T5.value = dollarAmount;}
if(y==5) {document.calculation.T6.value = commaAmount;}
if(y==6) {document.calculation.T7.value = dollarAmount;}
    }

}


function settotals(){
var y1 = "$";
var y3 = " ";
var lineAmount = 0;
var  calcsum =0;
lineAmount  = document.calculation.T1.value;
checknum(lineAmount,1);
setform1(a,0);
inputAmount[0] =a;
lineAmount = 0;
a=0;
lineAmount  = document.calculation.T2.value;
checknum(lineAmount,1);
setform1(a,1);
inputAmount[1] =a;
lineAmount = 0;
a=0;
lineAmount  = document.calculation.T3.value;
checknum(lineAmount,1);
inputAmount[2] = a;
setform1(a,2);
lineAmount = 0;
a=0;
if (lines >=4){
lineAmount  = document.calculation.T4.value;
checknum(lineAmount,1);
setform1(a,3);
inputAmount[3] = a;
lineAmount = 0;
a=0;}

if (lines >=5){
lineAmount  = document.calculation.T5.value;
checknum(lineAmount,1);
setform1(a,4);
inputAmount[4] = a;
lineAmount = 0;
a=0;}


if (lines >=6){
lineAmount  = document.calculation.T6.value;
checknum(lineAmount,1);
inputAmount[5] = a;
setform1(a,5);
lineAmount = 0;
a=0;}

if (lines >=7){
lineAmount  = document.calculation.T7.value;
checknum(lineAmount,1);
inputAmount[6] = a;
setform1(a,6);
lineAmount = 0;
a=0; }

for (var k=0; k<10; k++)
if (lines == k){
for (var j=0; j<lines; j++){calcsum = calcsum + inputAmount[j];}
setform1(calcsum,lines);}
}

function settotals2() {
var y1 = "$";
var y3 = " ";
lineAmount  = document.calculation.T2.value;
checknum(lineAmount,1);
setform1(a,1);
inputAmount[1] =a;
lineAmount = 0;
a=0;
document.calculation.T1.value = 2450000 + inputAmount[1]; 
lineAmount  = document.calculation.T1.value;
checknum(lineAmount,1);
setform1(a,0);
inputAmount[0] =a;
lineAmount = 0;
a=0;

lineAmount  = document.calculation.T3.value;
checknum(lineAmount,1);
inputAmount[2] = a;
setform1(a,2);
lineAmount = 0;
a=0;
lineAmount  = document.calculation.T4.value;
checknum(lineAmount,1);
setform1(a,3);
inputAmount[3] = a;
lineAmount = 0;
a=0;
lineAmount  = document.calculation.T5.value;
checknum(lineAmount,1);
setform1(a,4);
inputAmount[4] = a;
lineAmount = 0;
a=0;
document.calculation.T9.value = itemAmount[2] +  inputAmount[2];
lineAmount  = document.calculation.T9.value;
checknum(lineAmount,1);
setform1(a,8);
inputAmount[8] = a;
lineAmount = 0;
a=0;
document.calculation.T10.value = inputAmount[0]  + inputAmount[8] ;
lineAmount  = document.calculation.T10.value;
checknum(lineAmount,1);
setform1(a,9);
inputAmount[9] = a;
lineAmount = 0;
a=0;
document.calculation.T11.value = itemAmount[5]  + inputAmount[3]; 
lineAmount  = document.calculation.T11.value;
checknum(lineAmount,1);
setform1(a,10);
inputAmount[10] = a;
lineAmount = 0;
a=0;
document.calculation.T12.value = inputAmount[9] + inputAmount[10]; 

lineAmount  = document.calculation.T12.value;
checknum(lineAmount,1);
setform1(a,11);
inputAmount[11] = a;
lineAmount = 0;
a=0;
document.calculation.T13.value  = itemAmount[6] + inputAmount[4] ;
lineAmount  = document.calculation.T13.value;
checknum(lineAmount,1);
setform1(a,12);
inputAmount[12] = a;
lineAmount = 0;
a=0;
document.calculation.T14.value =inputAmount[11] + inputAmount[12];
lineAmount  = document.calculation.T14.value;
checknum(lineAmount,1);
setform1(a,13);
inputAmount[13] = a;
lineAmount = 0;
a=0;
}

function settotals3() {
lineAmount  = document.calculation.T1.value;
checknum(lineAmount,1);
setform2(a,0);
inputAmount[0] =a;
lineAmount = 0;
a=0;
lineAmount  = document.calculation.T2.value;
checknum(lineAmount,1);
setform2(a,1);
inputAmount[1] =a;
lineAmount = 0;
a=0;
document.calculation.T3.value = inputAmount[0]  + inputAmount[1]; 
lineAmount  = document.calculation.T3.value;
checknum(lineAmount,1);
inputAmount[2] = a;
setform2(a,2);
lineAmount = 0;
a=0;

lineAmount  = document.calculation.T4.value;
checknum(lineAmount,1);
setform2(a,3);
inputAmount[3] = a;
lineAmount = 0;
a=0;

document.calculation.T5.value = inputAmount[3] +  inputAmount[2];
lineAmount  = document.calculation.T5.value;
checknum(lineAmount,1);
setform2(a,4);
inputAmount[4] = a;
lineAmount = 0;
a=0;

lineAmount  = document.calculation.T6.value;
checknum(lineAmount,1);
setform2(a,5);
inputAmount[5] = a;
lineAmount = 0;
a=0;
document.calculation.T7.value = inputAmount[5]  + inputAmount[4]; 
lineAmount  = document.calculation.T7.value;
checknum(lineAmount,1);
setform2(a,6);
inputAmount[6] = a;
lineAmount = 0;
a=0;
}

function resetvars(){
for (var i=0; i<9; i++){inputAmount[i]=0;}
settotals();
}

function showans() {
var x = 0;
for (var j =0; j<lines; j++){ x= correctAmount[j]; setform1(x,j)}
settotals();
}

function showans2() {
var x = 0;
for (var j =1; j<lines ; j++){ x= correctAnswer[j]; setform1(x,j)}
}

function showans3() {
var x = 0;
for (var j =0; j<lines ; j++){ x= correctAmount[j]; setform2(x,j)}
}

function checkscore() {
settotals();
var x = 0;
var response = " ";
settotals();
for (var i=0; i<lines; i++) {
 if(inputAmount[i] == correctAmount[i]){ x = x+1; RightorWrong[i] = "correct";} else {RightorWrong[i] = " ";} 
   }
if (x>=lines){alert("Congratuations, you have sucessfully completed this part of the exercise." );}
if (x<= 3){ for  (var j=0; j<lines; j++) {
      if( RightorWrong[j] == "correct"){ alert("Line " + (j+1)  + " is correct." ); }
        }  }
if (x>3 && x<lines){ for  (var j=0; j<lines; j++) {
      if( RightorWrong[j] != "correct"){ alert("Line " + (j+1) + " is incorrect." ); }
        }  }
if(RightorWrong[0] != "correct") {document.calculation.T1.value = " ";}
if(RightorWrong[1] != "correct") {document.calculation.T2.value = " ";}
if(RightorWrong[2] != "correct") {document.calculation.T3.value = " ";}
if(RightorWrong[3] != "correct") {document.calculation.T4.value = " ";}
if(RightorWrong[4] != "correct") {document.calculation.T5.value = " ";}
if(RightorWrong[5] != "correct") {document.calculation.T6.value = " ";}
if(RightorWrong[6] != "correct") {document.calculation.T7.value = " ";}
if(RightorWrong[7] != "correct") {document.calculation.T8.value = " ";}
settotals();
}

function checkscore2() {
settotals2();
var x = 0;
var response = " ";
for (var i=1; i<lines; i++) 
{
 if(inputAmount[i] == correctAnswer[i]){ x = x+1; RightorWrong[i] = "correct";} else {RightorWrong[i] = " ";} 
   }
if (x>=lines-1){alert("Congratuations, you have sucessfully completed this part of the exercise." );} 
  else{ for (var j=1; j<lines; j++) {
   if(RightorWrong[j] == "correct"){ alert("Line " + (j+1)  + " is correct." ); } } }

if(RightorWrong[1] != "correct") {document.calculation.T2.value = " ";}
if(RightorWrong[2] != "correct") {document.calculation.T3.value = " ";}
if(RightorWrong[3] != "correct") {document.calculation.T4.value = " ";}
if(RightorWrong[4] != "correct") {document.calculation.T5.value = " ";}
settotals2();
}

function checkscore3() {
settotals3();
var x = 0;
var response = " ";
for (var i=0; i<lines; i++) 
{ if(inputAmount[i] == correctAmount[i]){ x = x+1; RightorWrong[i] = "correct";} 
  else {RightorWrong[i] = " ";}
   }
if (x>=lines-1){alert("Congratuations, you have sucessfully completed this part of the exercise." );} 
else {
if(RightorWrong[0] != "correct") {alert("Line 1 is incorrect." ); document.calculation.T1.value = " ";}
if(RightorWrong[1] != "correct") {alert("Line 2 is incorrect." ); document.calculation.T2.value = " ";}
if(RightorWrong[3] != "correct") {alert("Line 4 is incorrect." ); document.calculation.T4.value = " ";}
if(RightorWrong[5] != "correct") {alert("Line 6 is incorrect." ); document.calculation.T6.value = " ";}
}
settotals3();
}
