


     	var CHECK = 0;
     	var RAND = 10;
     	var CONTROL = 2;
     	var RAND1 = 7;
        var t = 0;
	var MIDS = " ";
	var AND = " and ";
	var WEIGHT1 = " ";
	var DIRECTIONS = "DIRECTIONS: Circle the correct answer.";
	DIRECTIONS1 = new Array(10);
	WHOLENUMBER1 = new Array (10);
	PLACE1 = new Array (10); 
	PLACE2 = new Array (10);
	WHOLE = new Array (4);
	NUMERATOR = new Array (4);
	DENOMINATOR = new Array (4);
	WHOLE1 = new Array (4);
	NUMERATOR1 = new Array (4);
	DENOMINATOR1 = new Array (4);   
	NOUN = new Array ("Robert","Joan","George","Jane","Nick","Samantha","Donald","Betty","Eric","Erica","Steven","Stephanie","Ronald","Ricki","Tommy","Toni","Brian","Roberta","James","Ann","Josh","Brittany","Chris","Christine","Kevin","Judy","Carl","Erin");
	VERB = new Array (" ","bought","purchased","acquired","obtained","secured");
	WEIGHT = new Array ("pounds","ounces","grams","kilograms","centigrams","milligrams");
	FRACTION = new Array (" 1/4"," 1/2"," 3/4");

	FRACTIONALLTOP = new Array ("1","3","5","7","1","1","3","1","3","5","7","9","11","13","15");
	FRACTIONALLBOTTOM = new Array ("8","8","8","8","2","4","4","16","16","16","16","16","16","16","16");
	FRACTIONMORETOP14 = new Array ("3","5","7","1","3","5","7","9","11","13","15");
	FRACTIONMOREBOTTOM14 = new Array ("8","8","8","2","4","16","16","16","16","16","16","16","16");
	FRACTIONLESSTOP14 = new Array ("1","1","3");
	FRACTIONLESSBOTTOM14 = new Array ("8","16","16");
	FRACTIONLESSTOP12 = new Array ("1","1","3","1","3","5","7");
	FRACTIONLESSBOTTOM12 = new Array ("4","8","8","16","16","16","16");
	FRACTIONMORETOP12 = new Array ("5","7","3","9","11","13","15");
	FRACTIONMOREBOTTOM12 = new Array ("8","8","4","16","16","16","16");

	FRACTIONLESSTOP34 = new Array ("1","1","1","3","5","1","3","5","7","9","11");
	FRACTIONLESSBOTTOM34 = new Array ("2","4","8","8","16","16","16","16","16","16");
	FRACTIONMORETOP34 = new Array ("7","13","15");
	FRACTIONMOREBOTTOM34 = new Array ("8","16","16");


	FRACTIONLESS34 = new Array (" 1/2"," 1/4"," 1/8"," 3/8"," 5/8"," 1/16"," 3/16"," 5/16"," 7/16"," 9/16"," 11/16")
	FRACTIONMORE34 = new Array (" 7/8"," 13/16"," 15/16") 



	FRACTIONALL = new Array (" 1/8"," 3/8"," 5/8"," 7/8"," 1/2"," 1/4"," 3/4"," 1/16"," 3/16"," 5/16"," 7/16"," 9/16"," 11/16"," 13/16"," 15/16")  
	FRACTIONLESS12 = new Array (" 1/4"," 1/8"," 3/8"," 1/16"," 3/16"," 5/16"," 7/16")
	FRACTIONMORE12 = new Array (" 5/8"," 7/8"," 3/4"," 9/16"," 11/16"," 13/16"," 15/16")


	function CreateNumber ()
	{  
	  	WHOLENUMBER = Math.random() * RAND1 + CONTROL;
	  	 WHOLENUMBER = Math.round(WHOLENUMBER);
		t++;
	  	TOP1 = Math.random() * RAND + CONTROL;
	  	 TOP1 = Math.round(TOP1);
	  	TOP2 = Math.random() * RAND + CONTROL;
	  	 TOP2 = Math.round(TOP2);
	  	TOP3 = Math.random() * RAND + CONTROL;
	  	 TOP3 = Math.round(TOP3);
	  	TOP4 = Math.random() * RAND + CONTROL;
	  	 TOP4 = Math.round(TOP4);
	  	BOTTOM1 = Math.random() * RAND + CONTROL;
	  	 BOTTOM1 = Math.round(BOTTOM1);
	  	BOTTOM2 = Math.random() * RAND + CONTROL;
	  	 BOTTOM2 = Math.round(BOTTOM2);
	  	BOTTOM3 = Math.random() * RAND + CONTROL;
	  	 BOTTOM3 = Math.round(BOTTOM3);
	  	BOTTOM4 = Math.random() * RAND + CONTROL;
	   	BOTTOM4 = Math.round(BOTTOM4);
	   	if (TOP1 == BOTTOM1) 
		{
			BOTTOM1 = BOTTOM1 + 2;
	    	}
	   	if (TOP2 == BOTTOM2) 
		{
			BOTTOM2 = BOTTOM2 + 2;
	    	}   
	   	if (TOP3 == BOTTOM3) 
		{
			BOTTOM3 = BOTTOM3 + 2;
	    	}
	   	if (TOP4 == BOTTOM4) 
		{
			BOTTOM4 = BOTTOM4 + 2;
	    	}
	   	if (TOP1 > BOTTOM1) 
		{
			HOLD = TOP1;
			TOP1 = BOTTOM1;
	 		BOTTOM1 = HOLD;
	    	}
	   	if (TOP2 > BOTTOM2) 
		{
			HOLD = TOP2;
			TOP2 = BOTTOM2;
	 		BOTTOM2 = HOLD;
	    	}
	   	if (TOP3 > BOTTOM3) 	
		{
			HOLD = TOP3;
			TOP3 = BOTTOM3;
	 		BOTTOM3 = HOLD;
	    	}
	   	if (TOP4 > BOTTOM4) 
		{
			HOLD = TOP4;
			TOP4 = BOTTOM4;
	 		BOTTOM4 = HOLD;
	    	} 
  // REDUCE FRACTIONS:
	   	for (p = TOP1; p >=2; p--) 
		{
	      		FIRST = TOP1 / p;
	       		FIRST1 = parseInt(FIRST);
	      		if (FIRST == FIRST1 ) 
			{
		  		SECOND = BOTTOM1 / p;
		  		SECOND1 = parseInt (SECOND);
		    		if (SECOND == SECOND1) 
				{
		     			TOP1 = FIRST;
		     			BOTTOM1 = SECOND;
		     			p = 1;
		    		}
		 	}
	      	}
	   	for (p = TOP2; p >=2; p--) 
		{
	      		FIRST = TOP2 / p;
	      		FIRST1 = parseInt(FIRST);
	      		if (FIRST == FIRST1 ) 
			{
		  		SECOND = BOTTOM2 / p;
		  		SECOND1 = parseInt (SECOND);
		    		if (SECOND == SECOND1) 
				{
		    			TOP2 = FIRST;
		     			BOTTOM2 = SECOND;
		     			p = 1;
		    		}
		 	}
	      	}
	    	for (p = TOP3; p >=2; p--)
		{
	      		FIRST = TOP3 / p;
	       		FIRST1 = parseInt(FIRST);
	      		if (FIRST == FIRST1 ) 
			{
		  		SECOND = BOTTOM3 / p;
		  		SECOND1 = parseInt (SECOND);
		    		if (SECOND == SECOND1) 
				{
	     				TOP3 = FIRST;
		     			BOTTOM3 = SECOND;
		     			p = 1;
		    		}
		 	}
	      	}
	    	for (p = TOP4; p >=2; p--) 
		{
	      		FIRST = TOP4 / p;
	       		FIRST1 = parseInt(FIRST);
	      		if (FIRST == FIRST1 ) 
			{
		  		SECOND = BOTTOM4 / p;
		  		SECOND1 = parseInt (SECOND);
		    		if (SECOND == SECOND1) 
				{
		     			TOP4 = FIRST;
		     			BOTTOM4 = SECOND;
		     			p = 1;
		    		}
		 	}
	      	} 
  //CHECK FOR SAME FRACTIONS:
		HOLD1 = TOP1 * BOTTOM1;
	   	HOLD2 = TOP2 * BOTTOM2;
	   	HOLD3 = TOP3 * BOTTOM3;
	  	HOLD4 = TOP4 * BOTTOM4;
	   	if (HOLD1 == HOLD2 || HOLD1 == HOLD3 || HOLD1 ==HOLD4)
		{
			t--;
	      		CreateNumber();
	    	}
	   	if (HOLD2 == HOLD3 || HOLD2 == HOLD4)
		{
			t--;
	      		CreateNumber();
	    	}
	   	if (HOLD3 == HOLD4)
		{
			t--;
	      		CreateNumber();
	    	}
	   	HOLD = BOTTOM1 * BOTTOM2 * BOTTOM3 * BOTTOM4;
	   	HOLD1 = (HOLD / BOTTOM1) * TOP1;
	   	HOLD2 = (HOLD / BOTTOM2) * TOP2;
	   	HOLD3 = (HOLD / BOTTOM3) * TOP3 ;  
	   	HOLD4 = (HOLD / BOTTOM4) * TOP4;
	  	SELECT = Math.random() * 1;
	  	 SELECT = Math.round(SELECT);
	  	CHOOSE = Math.random() * 3;
	  	 CHOOSE = Math.round(CHOOSE);
	  	if (SELECT == 1) 
		{
	   		if (HOLD1 > HOLD2 && HOLD1 > HOLD3 && HOLD1 > HOLD4)
			{
	     			 WHOLENUMBER1[t] = WHOLENUMBER;
				 PLACE1[t] = TOP1; 
				 PLACE2[t] = BOTTOM1;
	    		}
	   		if (HOLD2 > HOLD1 && HOLD2 > HOLD3 && HOLD2 > HOLD4) 
			{
	     			 WHOLENUMBER1[t] = WHOLENUMBER;
				 PLACE1[t] = TOP2; 
				 PLACE2[t] = BOTTOM2;
	    		}
	   			if (HOLD3 > HOLD1 && HOLD3 > HOLD2 && HOLD3 > HOLD4) 
			{
	     			 WHOLENUMBER1[t] = WHOLENUMBER;
				 PLACE1[t] = TOP3; 
				 PLACE2[t] = BOTTOM3;
	    		}
	   			if (HOLD4 > HOLD1 && HOLD4 > HOLD2 && HOLD4 > HOLD3) 
			{
	     			 WHOLENUMBER1[t] = WHOLENUMBER;
				 PLACE1[t] = TOP4; 
				 PLACE2[t] = BOTTOM4;
	    		}

			switch (CHOOSE) 
			{	
				case 0:
	          			CHOICE =  " greatest?";
	   			break;
				case 1:
		  			CHOICE =  " largest?";
	       			break;
				case 2:
		  			CHOICE =  " highest?";
	    			break;
				case 3:
		  			CHOICE =  " biggest?";
	    			break;
	     		}
	
	  	}
	   	else 
		{
	   		if (HOLD1 < HOLD2 && HOLD1 < HOLD3 && HOLD1 < HOLD4) 
			{
	     			 WHOLENUMBER1[t] = WHOLENUMBER;
				 PLACE1[t] = TOP1; 
				 PLACE2[t] = BOTTOM1;
	    		}
	   		if (HOLD2 < HOLD1 && HOLD2 < HOLD3 && HOLD2 < HOLD4) 
			{
	     			 WHOLENUMBER1[t] = WHOLENUMBER; 
				 PLACE1[t] = TOP2; 
				 PLACE2[t] = BOTTOM2;	     			
	    		}
	   		if (HOLD3 < HOLD1 && HOLD3 < HOLD2 && HOLD3 < HOLD4) 
			{
	     			 WHOLENUMBER1[t] = WHOLENUMBER; 
				 PLACE1[t] = TOP3; 
				 PLACE2[t] = BOTTOM3;	     			
	    		}
	   		if (HOLD4 < HOLD1 && HOLD4 < HOLD2 && HOLD4 < HOLD3) 
			{
	     			 WHOLENUMBER1[t] = WHOLENUMBER; 
				 PLACE1[t] = TOP4; 
				 PLACE2[t] = BOTTOM4;
	    		}
	 		switch (CHOOSE) 
			{	
				case 0:
	          			CHOICE =  " least?";
	   			break;
				case 1:
		  			CHOICE =  " smallest?";
	        		break;
				case 2:
		  			CHOICE =  " lowest?";
	    			break;
				case 3:
		  			CHOICE =  " littlest?";
	    			break;
	     		}
		}
		DIRECTIONS1 = "Which mixed number is the " + CHOICE;
	}

	function CreateNumber1 ()
	{
     		var RAND = 27;
     		var RAND1 = 4;
     		var RAND2 = 18;				
		var RAND3 = 2;
		var CONTROL1 = 1;
		var CONTROL2 = 2;
		t++;
		NUMBER = Math.random() * RAND2 + CONTROL2;
 		 NUMBER = Math.round(NUMBER);
		n = Math.random() * RAND;
	   	 n = Math.round(n);
		v = Math.random() * RAND1 + CONTROL1;
	   	 v = Math.round(v);
		w = Math.random() * RAND1 + CONTROL1;
	   	 w = Math.round(w);
		f = Math.random() * RAND3;
	   	 f = Math.round(f);
		NUMBER1 = NUMBER + v;
		CHECKER = FRACTION[f];
		if (CHECKER == " 1/4")
		{
			TOP1 = "1";
			BOTTOM1 = "4";
			WEIGHT1 = WEIGHT[w];
			NUMBERHOLD = NUMBER1 - (NUMBER + 1); 
			NUMBERCORRECT = Math.random() * NUMBERHOLD;
	   	 	 NUMBERCORRECT = Math.round(NUMBERCORRECT);
			NUMBERCORRECT1 = NUMBERCORRECT + NUMBER;
			s = Math.random() * 2;
	   	 	 s = Math.round(s);
			WHOLE[2] = NUMBER;
			NUMERATOR[2] = FRACTIONLESSTOP14[s];
			DENOMINATOR[2] = FRACTIONLESSBOTTOM14[s];
			y = Math.random() * 10;
	   	 	 y = Math.round(y);
			WHOLE[1] = NUMBERCORRECT1;
			NUMERATOR[1] = FRACTIONMORETOP14[y];
			DENOMINATOR[1] = FRACTIONMOREBOTTOM14[y];
			x = Math.random() * 4;
	   	  	 x = Math.round(x);
			if (x > 2)
			{
				y = Math.random() * 2;
	   	 		  y = Math.round(y);
				WHOLE[1] = NUMBER1;
				NUMERATOR[1] = FRACTIONLESSTOP14[y];
				DENOMINATOR[1] = FRACTIONLESSBOTTOM14[y];
			}
			r = Math.random() * 10;
	   	 	 r = Math.round(r);
			WHOLE[3] = NUMBER1;
			NUMERATOR[3] = FRACTIONMORETOP14[r];
			DENOMINATOR[3] = FRACTIONMOREBOTTOM14[r];
			if (s == 1)
			{
				a = Math.random() * 14;
	   	 		 a = Math.round(a);
				NUMBER1++;
				WHOLE[3] = NUMBER1;
				NUMERATOR[3] = FRACTIONALLTOP[a];
				DENOMINATOR[3] = FRACTIONALLBOTTOM[a];
				NUMBER1--;
			}
			a = Math.random() * 14;
	   	 	 a = Math.round(a);
			NUMBER2 = NUMBER-1;
			WHOLE[4] = NUMBER2;
			NUMERATOR[4] = FRACTIONALLTOP[a];
			DENOMINATOR[4] = FRACTIONALLBOTTOM[a];
			if (s == 2)
			{
				WHOLE[4] = WHOLE[3] + 1;
			}
		}
		if (CHECKER == " 1/2")
		{
			TOP1 = "1";
			BOTTOM1 = "2";
			NUMBERHOLD = NUMBER1 - (NUMBER + 1); 
			NUMBERCORRECT = Math.random() * NUMBERHOLD;
	   	 	 NUMBERCORRECT = Math.round(NUMBERCORRECT);
			NUMBERCORRECT1 = NUMBERCORRECT + NUMBER;
			s = Math.random() * 6;
	   	 	 s = Math.round(s);
			WHOLE[2] = NUMBER;
			NUMERATOR[2] = FRACTIONLESSTOP12[s];
			DENOMINATOR[2] = FRACTIONLESSBOTTOM12[s];
			y = Math.random() * 6;
	   	 	 y = Math.round(y);
			WHOLE[1] = NUMBERCORRECT1;
			NUMERATOR[1] = FRACTIONMORETOP12[y];
			DENOMINATOR[1] = FRACTIONMOREBOTTOM12[y];
			x = Math.random() * 4;
	   	 	 x = Math.round(x);
			if (x > 2)
			{
				y = Math.random() * 6;
	   	 		  y = Math.round(y);
				WHOLE[1] = NUMBER1;
				NUMERATOR[1] = FRACTIONLESSTOP12[y];
				DENOMINATOR[1] = FRACTIONLESSBOTTOM12[y];
			}
			r = Math.random() * 6;
	   	 	 r = Math.round(r);
			WHOLE[3] = NUMBER1;
			NUMERATOR[3] = FRACTIONMORETOP12[r];
			DENOMINATOR[3] = FRACTIONMOREBOTTOM12[r];
			if (s > 3)
			{
				a = Math.random() * 14;
	   	  		 a = Math.round(a);
				NUMBER1++;
				WHOLE[3] = NUMBER1;
				NUMERATOR[3] = FRACTIONALLTOP[a];
				DENOMINATOR[3] = FRACTIONALLBOTTOM[a];
				NUMBER1--;
			}
			a = Math.random() * 14;
	   	 	 a = Math.round(a);
			NUMBER2 = NUMBER-1;
			WHOLE[4] = NUMBER2;
			NUMERATOR[4] = FRACTIONALLTOP[a];
			DENOMINATOR[4] = FRACTIONALLBOTTOM[a];
		}
		if (CHECKER == " 3/4")
		{
			TOP1 = "3";
			BOTTOM1 = "4";
			NUMBERHOLD = NUMBER1 - (NUMBER + 1); 
	  		NUMBERCORRECT = Math.random() * NUMBERHOLD;
	   	 	 NUMBERCORRECT = Math.round(NUMBERCORRECT);
			NUMBERCORRECT1 = NUMBERCORRECT + NUMBER;
			s = Math.random() * 10;
	   	 	 s = Math.round(s);
			WHOLE[2] = NUMBER;
			NUMERATOR[2] = FRACTIONLESSTOP34[s];
			DENOMINATOR[2] = FRACTIONLESSBOTTOM34[s];
			y = Math.random() * 2;
	   	 	 y = Math.round(y);
			WHOLE[1] = NUMBERCORRECT1;
			NUMERATOR[1] = FRACTIONMORETOP34[y];
			DENOMINATOR[1] = FRACTIONMOREBOTTOM34[y];
			x = Math.random() * 4;
	        	 x = Math.round(x);
			if (x > 2)
			{
				y = Math.random() * 2;
	   	  	 	 y = Math.round(y);
				WHOLE[1] = NUMBER1;
				NUMERATOR[1] = FRACTIONLESSTOP12[y];
				DENOMINATOR[1] = FRACTIONLESSBOTTOM12[y];
			}
			r = Math.random() * 2;
	   	 	 r = Math.round(r);
			WHOLE[3] = NUMBER1;
			NUMERATOR[3] = FRACTIONMORETOP34[r];
			DENOMINATOR[3] = FRACTIONMOREBOTTOM34[r];
			if (s > 5)
			{
				a = Math.random() * 14;
	   	  		 a = Math.round(a);
				NUMBER1++;
				WHOLE[3] = NUMBER1;
				NUMERATOR[3] = FRACTIONALLTOP[a];
				DENOMINATOR[3] = FRACTIONALLBOTTOM[a];
				NUMBER1--;
			}
			a = Math.random() * 14;
	   	 	 a = Math.round(a);
			NUMBER2 = NUMBER-1;
			WHOLE[4] = NUMBER2;
			NUMERATOR[4] = FRACTIONALLTOP[a];
			DENOMINATOR[4] = FRACTIONALLBOTTOM[a];		
		}
		ASK7 = NOUN[n] + MIDS + VERB[v] + " between " + NUMBER + FRACTION[f] + " and " + NUMBER1 + FRACTION[f] + MIDS + WEIGHT[w] + ". Which best describes the amount?"
		ASK = NOUN[n] + MIDS + VERB[v] + " between ";
		ASK1 = MIDS + WEIGHT[w] + ". Which best describes the amount?"
		WHOLENUMBER1[t] = WHOLE[1];
		PLACE1[t] = NUMERATOR[1];
		PLACE2[t] = DENOMINATOR[1];
		CHOOSE = Math.random() * 3 + 1;
	  	 CHOOSE = Math.round(CHOOSE);
		switch(CHOOSE)
		{
			case 1:
				WHOLE1[1] = WHOLE[1];
				NUMERATOR1[1] = NUMERATOR[1];
				DENOMINATOR1[1] = DENOMINATOR[1];
				WHOLE1[2] = WHOLE[2];
				NUMERATOR1[2] = NUMERATOR[2];
				DENOMINATOR1[2] = DENOMINATOR[2];
				WHOLE1[3] = WHOLE[3];
				NUMERATOR1[3] = NUMERATOR[3];
				DENOMINATOR1[3] = DENOMINATOR[3];
				WHOLE1[4] = WHOLE[4];
				NUMERATOR1[4] = NUMERATOR[4];
				DENOMINATOR1[4] = DENOMINATOR[4];
			break;
			case 2:
				WHOLE1[1] = WHOLE[2];
				NUMERATOR1[1] = NUMERATOR[2];
				DENOMINATOR1[1] = DENOMINATOR[2];
				WHOLE1[2] = WHOLE[1];
				NUMERATOR1[2] = NUMERATOR[1];
				DENOMINATOR1[2] = DENOMINATOR[1];
				WHOLE1[3] = WHOLE[4];
				NUMERATOR1[3] = NUMERATOR[4];
				DENOMINATOR1[3] = DENOMINATOR[4];
				WHOLE1[4] = WHOLE[3];
				NUMERATOR1[4] = NUMERATOR[3];
				DENOMINATOR1[4] = DENOMINATOR[3];
			break;
			case 3:
				WHOLE1[1] = WHOLE[4];
				NUMERATOR1[1] = NUMERATOR[4];
				DENOMINATOR1[1] = DENOMINATOR[4];
				WHOLE1[2] = WHOLE[3];
				NUMERATOR1[2] = NUMERATOR[3];
				DENOMINATOR1[2] = DENOMINATOR[3];
				WHOLE1[3] = WHOLE[1];
				NUMERATOR1[3] = NUMERATOR[1];
				DENOMINATOR1[3] = DENOMINATOR[1];
				WHOLE1[4] = WHOLE[2];
				NUMERATOR1[4] = NUMERATOR[2];
				DENOMINATOR1[4] = DENOMINATOR[2];
			break;
			case 4:
				WHOLE1[1] = WHOLE[3];
				NUMERATOR1[1] = NUMERATOR[3];
				DENOMINATOR1[1] = DENOMINATOR[3];
				WHOLE1[2] = WHOLE[4];
				NUMERATOR1[2] = NUMERATOR[4];
				DENOMINATOR1[2] = DENOMINATOR[4];
				WHOLE1[3] = WHOLE[2];
				NUMERATOR1[3] = NUMERATOR[2];
				DENOMINATOR1[3] = DENOMINATOR[2];
				WHOLE1[4] = WHOLE[1];
				NUMERATOR1[4] = NUMERATOR[1];
				DENOMINATOR1[4] = DENOMINATOR[1];
			break;
		}
	}
