 
     	var RAND =   89000000; 
    	var CONTROL =  10000000;
	var BLANK = " ";
	var t = 0;
	var LINE = "1. __________________ 2. __________________ 3. ________________";
	var LINE1 = "4. __________________ 5. __________________ 6. ________________";
	var LINEHOLD = "_______________________________";
	var DIRECTIONS = "DIRECTIONS: Name the place the ^ is located under."
	var DIRECTIONS1 = "DIRECTIONS: Name the value the ^ is located under."
	var DIRECTIONS2 = "DIRECTIONS: Write each number."
    	N = new Array (4) 
	CORRECT = new Array (12)
     	PLACENAMES = new Array (" ","ten millions", "millions", "hundred thousands", "ten thousands", "thousands", "hundreds", "tens", "ones");
     	NUMBERONES= new Array ("","one ","two ","three ","four ","five ", "six ","seven ","eight ","nine ")
     	NUMBERTENS= new Array ("ten ", "eleven ","twelve ","thirteen ","fourteen ","fifteen ","sixteen ","seventeen ","eighteen ","nineteen ")
     	NUMBERTENSPLACE= new Array ("","","twenty ","thirty ","forty ","fifty ","sixty ","seventy ","eighty ","ninety ")

	function CreateNumber ()
	{
      	  	NUMBER = Math.random() * RAND + CONTROL;
	  	 NUMBER = Math.round(NUMBER);
	    	X = Math.random() * 7 + 1;
	     	 X = Math.round (X);
		t++;
	   	SNUMBER = BLANK + NUMBER;
		VAL = SNUMBER.substring(X,X+1)
            	INDEX = SNUMBER.length;
	     	sNUMBER = SNUMBER.substring (1,INDEX);
	      	sINDEX = sNUMBER.length;
	  	PLACEVALUE= sNUMBER.substring (0,sINDEX-6) + "," + 
             	 sNUMBER.substring (sINDEX-6,sINDEX-3)+ "," + 
                 sNUMBER.substring(sINDEX-3,sINDEX);
		switch(X)
		{
			case 1:
				MARK = "^*,***,***";
	  			PLACE = VAL + "0,000,000";
			break;
			case 2:
				MARK = "*^,***,***";
	  			PLACE = VAL + ",000,000";
			break;
			case 3:
				MARK = "**,^**,***";
	  			PLACE = VAL + "00,000";
			break;
			case 4:
				MARK = "**,*^*,***";
	  			PLACE = VAL + "0,000";
			break;
			case 5:
				MARK = "**,**^,***";
	  			PLACE = VAL + ",000";
			break;
			case 6:
				MARK = "**,***,^**";
	  			PLACE = VAL + "00";
			break;
			case 7:
				MARK = "**,***,*^*";
	  			PLACE = VAL + "0";
			break;
			case 8:
				MARK = "**,***,**^";
	  			PLACE = VAL;
			break;
		}
	 	if (VAL == "0")
		{
	  		PLACE = "0";
	 	}
		if (t < 4)
		{
			CORRECT[t] = PLACENAMES[X];
		}
		if (t > 3 && 6 < 7)
		{
			CORRECT[t] = PLACE;
		}
	}

	function CreateNumber1 ()
	{
     		var RAND =   990000000; 
     		var CONTROL =  1000000;
     		var THREETRIPS ="";
     		var PLACE = "";
      	  	NUMBER = Math.random() * RAND + CONTROL;
	  	 NUMBER = Math.round(NUMBER);
	   	SNUMBER = BLANK + NUMBER;
            	INDEX = SNUMBER.length;
	     	sNUMBER = SNUMBER.substring (1,INDEX);
	      	sINDEX = sNUMBER.length;
	  	PLACEVALUE= sNUMBER.substring (0,sINDEX-6) + "," + 
             	 sNUMBER.substring (sINDEX-6,sINDEX-3)+ "," + 
             	 sNUMBER.substring(sINDEX-3,sINDEX);
		t++;

	     	WORDNUMBER= "" + NUMBER;
	      	WINDEX=WORDNUMBER.length;
  //Create hundreds place
	       	THREETRIPS = WORDNUMBER.substring (WINDEX-3,WINDEX);
		A = THREETRIPS.substring (0,1);
		B = THREETRIPS.substring (2,1);
		C = THREETRIPS.substring (3,2);
		PLACE = "hundred ";
	  	if (A == 0) 
		{
			PLACE ="";
	       	}
	  	if (B == 1) 
		{
			QUESTION = NUMBERONES[A] + PLACE + NUMBERTENS[C];
	     	}
	  	else
		{  
			QUESTION = NUMBERONES[A] + PLACE + NUMBERTENSPLACE[B]+ NUMBERONES[C];
	     	}     
	      	QUESTION1 = QUESTION;
  //Create thousands place
		THREETRIPS = WORDNUMBER.substring (WINDEX-6,WINDEX-3);
		A = THREETRIPS.substring (0,1);
		B = THREETRIPS.substring (2,1);
		C = THREETRIPS.substring (3,2);
		PLACE = "hundred ";
	  	if (A == 0) 
		{
			PLACE ="";
	     	}
	  	if (B == 1)
		{
			QUESTION = NUMBERONES[A] + PLACE + NUMBERTENS[C] + "thousand " + QUESTION1;
	     	}
	  	else
		{  
			QUESTION = NUMBERONES[A] + PLACE + NUMBERTENSPLACE[B]+ NUMBERONES[C] + "thousand " +QUESTION1;
	     	}	
	     	QUESTION1 = QUESTION;
  //Create millions place	
		THREETRIPS = WORDNUMBER.substring (WINDEX-9,WINDEX-6);
		A = THREETRIPS.substring (0,1);
		B = THREETRIPS.substring (2,1);
		C = THREETRIPS.substring (3,2);
	  	if (WINDEX == 7)
		{ 
			QUESTION = NUMBERONES [A] + "million " + QUESTION1;
	     	}
  //Variables changed to A and B because C receives no value with 8 digit number
	  	if (WINDEX == 8) 
		{
	       		if (A == 1) 
			{
				QUESTION =  NUMBERTENS[B] + "million " + QUESTION1;
	     		}
	       		else 
			{
				QUESTION = NUMBERTENSPLACE[A] + NUMBERONES[B] + "million " + QUESTION1;
	        	}	
     	     	}
	   	if (WINDEX == 9) 
		{
	       		if (B==1) 
			{
				QUESTION = NUMBERONES[A] + "hundred " +NUMBERTENS[C] + "million " + QUESTION1;
	      		}
			else 
			{
				QUESTION = NUMBERONES[A] +"hundred " + NUMBERTENSPLACE[B]+ NUMBERONES[C] + "million " +QUESTION1;
	     		}
	    	}
		CORRECT[t] = PLACEVALUE;
	}

	function CreateNumber2 ()
	{
     		var RAND =  88; 
     		var CONTROL = 10; 
		t++; 
      	  	N1 = Math.random() * RAND + CONTROL;
	  	 N1 = Math.round(N1);
	  	N2 = Math.random() * RAND + CONTROL;
	  	 N2 = Math.round(N2);
	  	N3 = Math.random() * RAND + CONTROL;
	  	 N3 = Math.round(N3);
	  	N4 = Math.random() * RAND + CONTROL;
	  	 N4 = Math.round(N4);
 		NUMBER = (N1 * 1000) + (N2 * 100) + (N3 * 10) + N4;
		NUMBER1 =" " + NUMBER;
		QUESTION = N1 + " thousands, " + N2 + " hundreds, " + N3 + " tens, " + N4 + " ones";
		PLACEVALUE= NUMBER1.substring (1,3) + "," + NUMBER1.substring (3,6);
		CORRECT[t] = PLACEVALUE;
	}

	function CreateNumber3 ()
	{
    		var j =0;
    		var x = 0;
    		var y = 0;
    		var z = 0;
    		var w = 0;
		var RAND =  6; 
    		var CONTROL = 3;
		t++; 
	  	N1 = " thousands, ";
	  	N2 = " hundreds, ";
	  	N3 = " tens, ";
	  	N4 = " ones ";
	  	for (i=1; i< 5; i++)
		{
      	  		N[i] = Math.random() * RAND + CONTROL;
	  		N[i] = Math.round(N[i]);
	 	}
	  	NUMBER = N[1]+ "," + N[2] + N[3] + N[4]
	    	j = Math.random() * 2 + 1;
	   	 j = Math.round(j);
	    	x = N[j];
 	    	y = Math.random() * (x-1) + 1;
	  	 y = Math.round(y);
	    	z = x - y;
		if (z == 0)
		{
			z++
		}
	    	w = z * 10;
	    	PLACEVALUE = w + N[j+1];
	    	N[j] = y
	    	N[j+1] = "_______ "
		 QUESTION = NUMBER  + " = " + N[1] + N1 + N[2] + N2 + N[3] + N3 + N[4] + N4;
		CORRECT[t] = PLACEVALUE;
	}
