
var start_f=1;         // ページ読み込み後の過去データ状態
var flag=1;          // 問題の状態　1:次の問題へ　0:答える状態
var ii=-1;           // 乱数配列用カウンター
var resultdata;         // 成績保存用変数
var seiseki = new Array();
var n2 = 10;               // 選択肢ボタンの数　＊＊＊＊要確認＊＊＊＊
var kaiL = 5;		// 選択肢ボタンの改行間隔
var n = zyukugo.length;        // 問題数をnに格納
var ram = new Array(n);   // 乱数配列
var bt_char = new Array(n2); // 解等ボタン表示用
var tensuu;               // 正答率
var posi=0; // 問題　空白位置
var t_col = "#ccffff";
var f_col = "#ffccff";

window.onload = oLd;
function oLd(){
	for(i=0;i<4;i++)
		document.forms["sentaku"]["mondaibun"+i].value = document.forms["sentaku"]["mondaibun"+i].defaultValue;
	document.sentaku.seigo.value  = document.sentaku.seigo.defaultValue;
        document.sentaku.yomi.value = document.sentaku.yomi.defaultValue;
}



;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
function loadData(){
x = "";
theName = Data_id+"=";
theCookie = document.cookie+";";
start = theCookie.indexOf(theName);
if (start != -1)
	{ end = theCookie.indexOf(";",start);
	  x = unescape(theCookie.substring(start+theName.length,end));
	 }
return x;
}
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
function saveData(x){
	theName = Data_id;
	theValue = x;
	theDay = 90;            // 保存日数
	setDay = new Date();
	setDay.setTime(setDay.getTime()+(theDay*1000*60*60*24));
	expDay = setDay.toGMTString();
	document.cookie = theName + "="+escape(theValue)+";expires="+expDay;
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

function myRam(n){
var r = new Array();
r[0] = Math.floor(Math.random()*n);
l=1;
	while(l<n){
		f=0;
		r[l] = Math.floor(Math.random()*n);
		for(j=0;j<l;j++)if(r[l]==r[j]){f=1;break;}
		if(f==0)l++;
	}
return r;
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

function ans(x){

	if(start_f==1){
		alert("「スタート」を押してください\n");

	}else{	
								// 正否判定部分

			if(flag==0){

				if(document.forms["sentaku"]["bt"+x].value==ans_c){		//正否判定条件
					document.sentaku.seigo.value = "○正解";
					seiseki[0]++;
					document.forms["sentaku"]["mondaibun"+posi].style.backgroundColor = t_col;
					document.forms["sentaku"]["bt"+x].style.backgroundColor = t_col;
                                        
					
					
				}else{
					document.sentaku.seigo.value = "×不正解";
					document.forms["sentaku"]["mondaibun"+posi].style.backgroundColor = t_col;
					document.forms["sentaku"]["bt"+x].style.backgroundColor = f_col;

								// 正否判定部分終了

				}
				document.forms["sentaku"]["mondaibun"+posi].value=ans_c;
                                document.sentaku.yomi.value=zWord[ram[ii]][1];   
                                document.yahoo_s.p.value=zWord[ram[ii]][0];   // yahoo辞書フォームに表示する

				
				
				
				
				
				
				seiseki[1]++;
				resultdata = ""+seiseki[0];
				resultdata += "s";
				resultdata += seiseki[1];
				saveData(resultdata);
				document.left_seiseki.ans_n.value = seiseki[1];
				document.left_seiseki.ans_r.value = seiseki[0];
				tensuu = (Math.round(seiseki[0]/seiseki[1]*1000))/10;
				document.left_seiseki.r_avr.value = tensuu+"%";

                                document.sentaku.Next.focus();

				flag=1;

			}else{alert("「次の問題」を押して次の問題にすすんでください\n");}	
	} 
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


function next_m(){

var rm_char = new Array(n2);
	var vrt_char = new Array(n2);
	var txt_char =new Array(4);
		if(start_f==1){
			document.sentaku.Next.value="次の問題";
		start_f = 0;
	}

	if(flag==1){
		document.forms["sentaku"]["mondaibun"+posi].style.backgroundColor="#ffffff";
		for(j=0;j<n2;j++)document.forms["sentaku"]["bt"+j].style.backgroundColor="#ffffff";



		if(ii==-1 || ii==n-1){ram = myRam(n);ii=-1;}  // 最初と一巡したときシャッフル

		ii++;
		
		document.sentaku.seigo.value = document.sentaku.seigo.defaultValue;
		document.sentaku.yomi.value = document.sentaku.yomi.defaultValue

		
		posi = Math.floor(Math.random()*4);
		ans_c = zyukugo[ram[ii]][posi];
		for(i=0;i<4;i++)txt_char[i] = zyukugo[ram[ii]][i];
		txt_char[posi] = "？";
		
		bt_char[0]=ans_c;
		l=1;
		while(l<n2){
			f=0;   // flag
			bt_char[l] = zyukugo[Math.floor(Math.random()*n)][Math.floor(Math.random()*4)];
			for(j=0;j<l;j++)if(bt_char[l]==bt_char[j]){f=1;break;}
		if(f==0)l++;
		}
		for(i=0;i<n2;i++)vrt_char[i]=bt_char[i];
		rm_char = myRam(n2);
		for(i=0;i<n2;i++)bt_char[i]=vrt_char[rm_char[i]]; // bt_charをシャッフル

		for(i=0;i<4;i++)
			document.forms["sentaku"]["mondaibun"+i].value = txt_char[i];
		for(i=0;i<n2;i++)document.forms["sentaku"]["bt"+i].value=bt_char[i];
		
		document.sentaku.bt0.focus();
				
 		flag=0;
		
	}else{
		alert("問題に答えてから次へすすめます。\n");
	}
}
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
function left_reset(){

	myRet = confirm("本当にリセットしてもいいですか？");
	if ( myRet == true ){
		resultdata="0s0";
		saveData(resultdata);
		seiseki = resultdata.split("s");
		document.left_seiseki.ans_n.value = seiseki[1];
		document.left_seiseki.ans_r.value = seiseki[0];
		document.left_seiseki.r_avr.value = "0%";
	}
}



	
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;   // score

resultdata=loadData();
if(resultdata==""){
		seiseki[0]=0;
		seiseki[1]=0;
}else{
		seiseki = resultdata.split("s");
}

if(seiseki[1] == 0){tensuu=0;}
else{tensuu = (Math.round(seiseki[0]/seiseki[1]*1000))/10;}


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;   // main_block

var main_str = "";
main_str += "<form name='sentaku'>";
main_str += "<input type='text' value='－－－' name='seigo' class='seigoCss'><br>";
for(i=0;i<4;i++){
	main_str += "<input type='text' name='mondaibun"+i+"' class='monCss'>";
}
main_str += "<br>";
main_str += "<input type='text' value='' name='yomi' class='yomiCss'><br>";
main_str += "<br>";
for(i=0;i<n2;i++){
	main_str += "<input type='button' value='－' onclick='ans("+ i +")' class='btnCss' name='bt"+i+"'>　";
	if(i%kaiL==(kaiL-1))main_str += "<br>";
}
main_str += "<br>";
main_str += "<input type='button' value='スタート' onclick='next_m()' name='Next' class='nextCss'>";
main_str += "</p>";
main_str += "</form>";
main_str += "<form name='left_seiseki'>";
main_str += "正答数　　　<input type='text' value='"+seiseki[0]+"' name='ans_r' size='10'>　/　";
main_str += "解答問題数<input type='text' value='"+seiseki[1]+"' name='ans_n' size='10'>　＝　";
main_str += "正答率　　　<input type='text' value='"+tensuu+"%' name='r_avr' size='10'><br>";
main_str += "<span class='mini_txt'>id : "+Data_id+"</span>　";
main_str += "記録リセット<input type='button' value='リセット' onClick='left_reset()'>　　";
main_str += "登録問題数　<strong>"+n+"</strong>問";
main_str += "<br></form>";

var yahoo_str = "";


