var grid = 50;
var my_y_offset = 137;
var my_x_offset = 57;
qnum = -1;
ans_set = new Array(2,1,2,1,0, 2,2,3,0,1, 0,3,1,2,0, 3,0);
quest_set = new Array();
quest_set[0] = new Array(1,2,1,0,0);// 0=sin,1=cos,2=tan; amp, coef, x_off, y_off
quest_set[1] = new Array(1,-1,1,0,0);
quest_set[2] = new Array(1,1,2,0,0);
quest_set[3] = new Array(1,1,1,0.5,0);
quest_set[4] = new Array(1,1,1,-0.5,0);
quest_set[5] = new Array(1,1,1,0,1);
quest_set[6] = new Array(1,1,1,0,-1);
quest_set[7] = new Array(1,-2,0.5,0,0);
quest_set[8] = new Array(1,0.5,1,0.5,0);
quest_set[9] = new Array(1,-0.5,1,0,1);
quest_set[10] = new Array(1,1,2,0.5,0);
quest_set[11] = new Array(1,1,0.5,0,-1);
quest_set[12] = new Array(1,1,1,-0.25,1);
quest_set[13] = new Array(1,2,2,0.25,0);
quest_set[14] = new Array(1,-2,2,0,1);
quest_set[15] = new Array(1,1,2,0.25,0);
quest_set[16] = new Array(1,1,3,-0.1666,0);
exp_set = new Array();
exp_set[0] = new Array('y=cos2x','y=cos'+cFrac_102('x','2','',1,1,1,'','','lb'),'y=2cosx','y=−2cosx','y=cosx+2','y=cosx−2');
exp_set[1] = new Array('y=cosx','y=−cosx','y=cosx−1','y=cosx+1');
exp_set[2] = new Array('y=2cosx','y=−2cosx','y=cos2x','y=cos'+cFrac_102('x','2','',1,1,1,'','','lb'));
exp_set[3] = new Array('y=cos(x+'+cFrac_102('π','2','',1,1,1,'','','lb')+')','y=cos(x−'+cFrac_102('π','2','',1,1,1,'','','lb')+')','y=cosx+'+cFrac_102('π','2','',1,1,1,'','','lb'),'y=cosx−'+cFrac_102('π','2','',1,1,1,'','','lb'));
exp_set[4] = new Array('y=cos(x+'+cFrac_102('π','2','',1,1,1,'','','lb')+')','y=cos(x−'+cFrac_102('π','2','',1,1,1,'','','lb')+')','y=cosx+'+cFrac_102('π','2','',1,1,1,'','','lb'),'y=cosx−'+cFrac_102('π','2','',1,1,1,'','','lb'));
exp_set[5] = new Array('y=2cosx','y=cosx+2','y=cosx+1','y=cos(x+1)');
exp_set[6] = new Array('y=−2cosx','y=cosx−2','y=cosx−1','y=cos(x−1)');
exp_set[7] = new Array('y=2cos2x','y=2cos'+cFrac_102('x','2','',1,1,1,'','','lb'),'y=−2cos2x','y=−2cos'+cFrac_102('x','2','',1,1,1,'','','lb'),'y=cos2x−2','y=cos'+cFrac_102('x','2','',1,1,1,'','','lb')+'−2');
exp_set[8] = new Array('y='+cFrac_102('1','2','',1,1,1,'','','lb')+'cos(x−'+cFrac_102('π','2','',1,1,1,'','','lb')+' )','y='+cFrac_102('1','2','',1,1,1,'','','lb')+'cos(x+'+cFrac_102('π','2','',1,1,1,'','','lb')+' )','y='+cFrac_102('1','2','',1,1,1,'','','lb')+'cosx−'+cFrac_102('π','2','',1,1,1,'','','lb'),'y='+cFrac_102('1','2','',1,1,1,'','','lb')+'cosx+'+cFrac_102('π','2','',1,1,1,'','','lb'));
exp_set[9] = new Array('y='+cFrac_102('1','2','',1,1,1,'','','lb')+'cosx+1','y=−'+cFrac_102('1','2','',1,1,1,'','','lb')+'cosx+1','y='+cFrac_102('1','2','',1,1,1,'','','lb')+'cosx+'+cFrac_102('1','2','',1,1,1,'','','lb'),'y='+cFrac_102('3','2','',1,1,1,'','','lb')+'cosx');
exp_set[10] = new Array('y=cos2(x−'+cFrac_102('π','2','',1,1,1,'','','lb')+' )','y=cos'+cFrac_102('1','2','',1,1,1,'','','lb')+'(x−'+cFrac_102('π','2','',1,1,1,'','','lb')+' )','y=cos(2x−'+cFrac_102('π','2','',1,1,1,'','','lb')+' )','y=cos(2x+'+cFrac_102('π','2','',1,1,1,'','','lb')+' )');
exp_set[11] = new Array('y=−cosx−1','y=cosx−2','y=cos2x−1','y=cos'+cFrac_102('x','2','',1,1,1,'','','lb')+'−1');
exp_set[12] = new Array('y=cos(x−'+cFrac_102('π','4','',1,1,1,'','','lb')+')+1','y=cos(x+'+cFrac_102('π','4','',1,1,1,'','','lb')+')+1','y=2cos(x−'+cFrac_102('π','4','',1,1,1,'','','lb')+')','y=2cos(x+'+cFrac_102('π','4','',1,1,1,'','','lb')+')');
exp_set[13] = new Array('y=2cos(2x−'+cFrac_102('π','4','',1,1,1,'','','lb')+')','y=2cos( '+cFrac_102('x','2','',1,1,1,'','','lb')+'−'+cFrac_102('π','4','',1,1,1,'','','lb')+')','y=2cos2(x−'+cFrac_102('π','4','',1,1,1,'','','lb')+')','y=2cos'+cFrac_102('1','2','',1,1,1,'','','lb')+'(x−'+cFrac_102('π','4','',1,1,1,'','','lb')+')');
exp_set[14] = new Array('y=−2cos2x+1','y=2cos2x+1','y=−2cos'+cFrac_102('x','2','',1,1,1,'','','lb')+'+1','y=2cos'+cFrac_102('x','2','',1,1,1,'','','lb')+'+1');
exp_set[15] = new Array('y=cos(2x+'+cFrac_102('π','4','',1,1,1,'','','lb')+' )','y=cos(2x+'+cFrac_102('π','2','',1,1,1,'','','lb')+' )','y=cos(2x−'+cFrac_102('π','4','',1,1,1,'','','lb')+' )','y=cos(2x−'+cFrac_102('π','2','',1,1,1,'','','lb')+' )');
exp_set[16] = new Array('y=cos(3x+'+cFrac_102('π','2','',1,1,1,'','','lb')+' )','y=cos(3x−'+cFrac_102('π','2','',1,1,1,'','','lb')+' )','y=cos( '+cFrac_102('x','3','',1,1,1,'','','lb')+'+'+cFrac_102('π','2','',1,1,1,'','','lb')+' )','y=cos( '+cFrac_102('x','3','',1,1,1,'','','lb')+'−'+cFrac_102('π','2','',1,1,1,'','','lb')+' )');
msg_set = new Array();
msg_set[0] = new Array();
msg_set[0][0] = new Array(1,1,1,0,0);
msg_set[0][1] = '赤で示したy=cosxのグラフをy軸方向(縦)に2倍に引き延ばしたものだから,y=2cosxになります.';
msg_set[1] = new Array();
msg_set[1][0] = new Array(1,1,1,0,0);
msg_set[1][1] = '赤で示したy=cosxのグラフをy軸方向(縦)に−1倍に引き延ばしたものだから,y=−cosxになります.';
msg_set[2] = new Array();
msg_set[2][0] = new Array(1,1,1,0,0);
msg_set[2][1] = '赤で示したy=cosxのグラフをx軸方向(横)に'+cFrac_102('1','2','',1,1,1,'','10','r')+'倍にしたものだから,y=cos2xになります.
(x軸方向(横)に'+cFrac_102('1','2','',1,1,1,'','10')+'倍にするときに,y=cos2xになり,y=cos'+cFrac_102('x','2','',1,1,1,'','10')+'になるのではないことに注意)';
msg_set[3] = new Array();
msg_set[3][0] = new Array(1,1,1,0,0);
msg_set[3][1] = '赤で示したy=cosxのグラフをx軸方向(横)に'+cFrac_102('π','2','',1,1,1,'','10','r')+'だけ平行移動したものだから,y=cos(x−'+cFrac_102('π','2','',1,1,1,'','10','r')+')になります.
※x軸方向(横)に'+cFrac_102('π','2','',1,1,1,'','10')+'だけ平行移動するときに,y=cos(x−'+cFrac_102('π','2','',1,1,1,'','10')+')になり,y=cos(x+'+cFrac_102('π','2','',1,1,1,'','10')+')になるのではないことに注意
※問題のグラフはy=sinxのグラフであると考えることもできますが,選択肢の中で選ぶとy=cos(x−'+cFrac_102('π','2','',1,1,1,'','10')+')になります.';
msg_set[4] = new Array();
msg_set[4][0] = new Array(1,1,1,0,0);
msg_set[4][1] = '赤で示したy=cosxのグラフをx軸方向(横)に−'+cFrac_102('π','2','',1,1,1,'','10','r')+'だけ平行移動したものだから,y=cos(x+'+cFrac_102('π','2','',1,1,1,'','10','r')+')になります.
※x軸方向(横)に−'+cFrac_102('π','2','',1,1,1,'','10')+'だけ平行移動するときに,y=cos(x+'+cFrac_102('π','2','',1,1,1,'','10')+')になり,y=cos(x−'+cFrac_102('π','2','',1,1,1,'','10')+')になるのではないことに注意
※問題のグラフはy=−sinxのグラフであると考えることもできますが,選択肢の中で選ぶとy=cos(x+'+cFrac_102('π','2','',1,1,1,'','10')+')になります.';
msg_set[5] = new Array();
msg_set[5][0] = new Array(1,1,1,0,0);
msg_set[5][1] = '赤で示したy=cosxのグラフをy軸方向(縦)に1だけ平行移動したものだから,y=cosx+1になります.';
msg_set[6] = new Array();
msg_set[6][0] = new Array(1,1,1,0,0);
msg_set[6][1] = '赤で示したy=cosxのグラフをy軸方向(縦)に−1だけ平行移動したものだから,y=cosx−1になります.';
msg_set[7] = new Array();
msg_set[7][0] = new Array(1,1,0.5,0,0);
msg_set[7][1] = '赤で示したy=cos'+cFrac_102('x','2','',1,1,1,'','10','r')+'のグラフをy軸方向(縦)に−2倍したものだから,y=−2cos'+cFrac_102('x','2','',1,1,1,'','10','r')+'になります.';
msg_set[8] = new Array();
msg_set[8][0] = new Array(1,0.5,1,0,0);
msg_set[8][1] = '赤で示したy='+cFrac_102('1','2','',1,1,1,'','10','r')+'cosxのグラフをx軸方向(横)に'+cFrac_102('π','2','',1,1,1,'','10','r')+'だけ平行移動したものだから,y='+cFrac_102('1','2','',1,1,1,'','10','r')+'cos(x−'+cFrac_102('π','2','',1,1,1,'','10','r')+')になります.
※x軸方向(横)に'+cFrac_102('π','2','',1,1,1,'','10')+'だけ平行移動するときに,
y='+cFrac_102('1','2','',1,1,1,'','10')+'cos(x−'+cFrac_102('π','2','',1,1,1,'','10')+')になり,y='+cFrac_102('1','2','',1,1,1,'','10')+'cos(x+'+cFrac_102('π','2','',1,1,1,'','10')+')になるのではないことに注意';
msg_set[9] = new Array();
msg_set[9][0] = new Array(1,-0.5,1,0,0);
msg_set[9][1] = '赤で示したy=−'+cFrac_102('1','2','',1,1,1,'','10','r')+'cosxのグラフをy軸方向(縦)に1だけ平行移動したものだから,y=−'+cFrac_102('1','2','',1,1,1,'','10','r')+'cosx+1になります.';
msg_set[10] = new Array();
msg_set[10][0] = new Array(1,1,2,0,0);
msg_set[10][1] = '赤で示したy=cos2xのグラフをx軸方向(横)に'+cFrac_102('π','2','',1,1,1,'','10','r')+'だけ平行移動したものだから,y=cos2(x−'+cFrac_102('π','2','',1,1,1,'','10','r')+')になります.
※なお,この問題では横に−'+cFrac_102('π','2','',1,1,1,'','10')+'だけ平行移動したグラフy=cos2(x+'+cFrac_102('π','2','',1,1,1,'','10')+')やy=−cos2xと考えることもできますが,これらは選択肢の中にはありません.';
msg_set[11] = new Array();
msg_set[11][0] = new Array(1,1,0.5,0,0);
msg_set[11][1] = '赤で示したy=cos'+cFrac_102('x','2','',1,1,1,'','10','r')+'のグラフをy軸方向(縦)に−1だけ平行移動したものだから,y=cos'+cFrac_102('x','2','',1,1,1,'','10','r')+'−1になります.';
msg_set[12] = new Array();
msg_set[12][0] = new Array(1,1,1,-0.25,0);
msg_set[12][1] = '赤で示したy=cos(x+'+cFrac_102('π','4','',1,1,1,'','10','r')+')のグラフをy軸方向(縦)に1だけ平行移動したものだから,y=cos(x+'+cFrac_102('π','4','',1,1,1,'','10','r')+')+1になります.
※この問題は,ややむずかしい';
msg_set[13] = new Array();
msg_set[13][0] = new Array(1,2,2,0,0);
msg_set[13][1] = '赤で示したy=2cos2xのグラフをx軸方向(横)に'+cFrac_102('π','4','',1,1,1,'','10','r')+'だけ平行移動したものだから,y=2cos2(x−'+cFrac_102('π','4','',1,1,1,'','10','r')+')になります.
※なお,このグラフはy=2sin2xと考えることもできますが,この関数は選択肢の中にはありません.';
msg_set[14] = new Array();
msg_set[14][0] = new Array(1,-2,2,0,0);
msg_set[14][1] = '赤で示したy=−2cos2xのグラフをy軸方向(縦)に1だけ平行移動したものだから,y=−2cos2x+1になります.';
msg_set[15] = new Array();
msg_set[15][0] = new Array(1,1,2,0,0);
msg_set[15][1] = '赤で示したy=cos2xのグラフをx軸方向(横)に'+cFrac_102('π','4','',1,1,1,'','10','r')+'だけ平行移動すると,y=cos2(x−'+cFrac_102('π','4','',1,1,1,'','10','r')+')=cos(2x−'+cFrac_102('π','2','',1,1,1,'','10','r')+')になります.
※x軸方向(横)の移動を考えるときはxに代入する式を( )でくくって考えます.';
msg_set[16] = new Array();
msg_set[16][0] = new Array(1,1,3,0,0);
msg_set[16][1] = '赤で示したy=cos3xのグラフをx軸方向(横)に−'+cFrac_102('π','6','',1,1,1,'','10','r')+'だけ平行移動すると,y=cos3(x+'+cFrac_102('π','6','',1,1,1,'','10','r')+')=cos(3x+'+cFrac_102('π','2','',1,1,1,'','10','r')+')になります.
※x軸方向(横)の移動を考えるときはxに代入する式を( )でくくって考えます.
なお,この関数はy=−sin3xと同じです.';
function draw_line2(go_flag1)
{if(go_flag1 > 0)
{if(qnum < quest_set.length -1)
qnum++;
if(qnum >= quest_set.length)
return;
}
else if(go_flag1 < 0)
{if(qnum > 0)
qnum--;
}
for(var nnn = 0; nnn <= 380; nnn++)
{document.getElementById('ydot['+nnn+']').style.visibility = 'hidden';
var mx = (nnn - my_x_offset) / grid;
if(quest_set[qnum][0] == 0)
var my = (quest_set[qnum][1] * Math.cos(quest_set[qnum][2] * (mx - quest_set[qnum][3] * 3.141592)) + quest_set[qnum][4]);
else if(quest_set[qnum][0] == 1)
var my = (quest_set[qnum][1] * Math.cos(quest_set[qnum][2] * (mx - quest_set[qnum][3] * 3.141592)) + quest_set[qnum][4]);
document.getElementById('ydot['+nnn+']').style.left = Math.floor(mx2px(mx));
document.getElementById('ydot['+nnn+']').style.top = Math.floor(my2py(my));
if(quest_set[qnum][0] == 0)
document.ten[nnn].height = Math.max(1 , Math.abs((quest_set[qnum][1] * quest_set[qnum][2]* Math.cos(quest_set[qnum][2] * (mx - quest_set[qnum][3] * 3.141592)))));
else if(quest_set[qnum][0] == 1)
document.ten[nnn].height = Math.max(1 , Math.abs((quest_set[qnum][1] * quest_set[qnum][2]* Math.sin(quest_set[qnum][2] * (mx - quest_set[qnum][3] * 3.141592)))));
document.ten[nnn].width = 1;
document.getElementById('ydot['+nnn+']').style.visibility = 'visible';
}
disp_fun();
document.getElementById('h_button').style.visibility = 'hidden';
document.getElementById('kr_pos').innerHTML = '';
document.getElementById('msg_pos').innerHTML = '';
document.getElementById('counter1').innerHTML = '[第'+(qnum+1)+'問 / 全'+quest_set.length+'問]';
for(var nnn = 0; nnn <= 380; nnn++)
document.getElementById('ydot_r['+nnn+']').style.visibility = 'hidden';
}
function draw_line_r()
{
for(nnn = 0; nnn <= 380; nnn++)
{document.getElementById('ydot_r['+nnn+']').style.visibility = 'hidden';
var mx = (nnn - my_x_offset) / grid;
if(msg_set[qnum][0][0] == 0)
var my = (msg_set[qnum][0][1] * Math.sin(msg_set[qnum][0][2] * (mx - msg_set[qnum][0][3] * 3.141592)) + msg_set[qnum][0][4]);
else if(msg_set[qnum][0][0] == 1)
var my = (msg_set[qnum][0][1] * Math.cos(msg_set[qnum][0][2] * (mx - msg_set[qnum][0][3] * 3.141592)) + msg_set[qnum][0][4]);
document.getElementById('ydot_r['+nnn+']').style.left = Math.floor(mx2px(mx));
document.getElementById('ydot_r['+nnn+']').style.top = Math.floor(my2py(my));
if(msg_set[qnum][0][0] == 0)
document.ten_r[nnn].height = Math.max(1 , Math.abs((msg_set[qnum][0][1] * msg_set[qnum][0][2]* Math.cos(msg_set[qnum][0][2] * (mx - msg_set[qnum][0][3] * 3.141592)))));
else if(msg_set[qnum][0][0] == 1)
document.ten_r[nnn].height = Math.max(1 , Math.abs((msg_set[qnum][0][1] * msg_set[qnum][0][2]* Math.sin(msg_set[qnum][0][2] * (mx - msg_set[qnum][0][3] * 3.141592)))));
document.ten_r[nnn].width = 1;
document.getElementById('ydot_r['+nnn+']').style.visibility = 'visible';
}
}
function disp_fun()
{var str_fun = '';
for(var local_kk = 0; local_kk < exp_set[qnum].length; local_kk++)
{str_fun += ''+exp_set[qnum][local_kk]+'';
if(local_kk % 2 == 1)
str_fun += '
';
}
document.getElementById('fun_pos').innerHTML = str_fun;
}
ox_set = new Array('ox0','ox1','ox2','ox3','ox4','ox5','ox6','ox7','ox8','ox9','ox10','ox11','ox12','ox13','ox14','ox15','ox16');
sumi = new Array(0,0,0,0,0, 0,0,0,0,0, 0,0,0,0,0, 0,0);
function saiten(num)
{if(num == ans_set[qnum])
{document.getElementById('kr_pos').innerHTML = '○';
document.getElementById(ox_set[qnum]).innerHTML = '○';
sumi[qnum] = 1;
if(check_end() == 1)
document.getElementById('msg_pos').innerHTML = '