▲▲JavaScriptに詳しい人見てください▲▲
いつもお世話になります。
恐れ入りますがお力添えお願い致します。
フォーム(名前は f とする)を使用して、
10問の足し算問題を画面に表示して計算練習できるようにする。
問題は1~10の自然数同士の足し算とする。
各問題ごとに,問題を表示するテキストボックス(名前は p1 ~ p10 とする)
解答を入力するためのテキストボックス(名前は a1 ~ a10 とする)
○×をつけるためのテキストボックス(名前は c1 ~ c10 とする)を用意する。
答え合わせをするためのボタンと
正答数,誤答数を表示するテキストボックス(名前は ok, ng とする)を用意する。
プログラム内部では,正解を保存するための配列(変数名は sol とする)を用意し
乱数を用いて 第1問 ~ 第10問 を生成するとともに
それらの正解を sol[1] ~ sol[10] に保存する。
ユーザは,解答欄(a1 ~ a10)に解答を記入し,答え合わせボタンをクリックする。
答え合わせボタンがクリックされると,各問題(iとする)について,解答欄(ai)の内容と
正解(sol[i])の内容を照合して,正誤欄(ci)に○×をつけ,同時に正答数・誤答数をカウントする。
10問全てに○×をつけた後,正答数(ok),誤答数(ng)を表示する。
今回は,問題を作成してフォーム(テキストボックス)に表示するだけとし
答え合わせのためのコードなどは実装しない.したがって
答え合わせボタンのイベントハンドラは記述しなくて良い。
ただし,配列 sol を用意して,そこに正解を保存するところまでは作成すること。
正解を保存する配列は,(今後作成する)答え合わせボタンのイベントハンドラからも参照されるので, 変数 sol は大域変数とすること。
問題の生成には myRandom(n) 関数を用いてもよい。
と言う課題です
雛形は以下のように作りました。
<title>JavaScript Task 8-1, prototype</title>
<script type="text/javascript">
<!--
/* 配列 sol は大域変数としてここで記述しておく方がよい・・? */
/* 関数 myRandom(n) を定義するなら,このあたりでするべき・・・? */
function initialize() {
/* ここで問題を作成して p1 ~ p10 に書きこむ */
/* 各問題の正解を配列 sol に保存する */
}
//-->
</script>
<body onload="initialize();">
<h1>計算練習プログラム (2)</h1>
<form name="f" action="">
<table border="1">
<tr><td>番号</td><td>問題</td><td>解答</td><td>正誤</td></tr>
<tr><td>1</td>
<td><input name="p1" size="9" type="text" readonly></td>
<td><input name="a1" size="3" type="text"></td>
<td><input name="c1" size="3" type="text" readonly></td></tr>
<tr><td>2</td>
<td><input name="p2" size="9" type="text" readonly></td>
<td><input name="a2" size="3" type="text"></td>
<td><input name="c2" size="3" type="text" readonly></td></tr>
<tr><td>3</td>
<td><input name="p3" size="9" type="text" readonly></td>
<td><input name="a3" size="3" type="text"></td>
<td><input name="c3" size="3" type="text" readonly></td></tr>
<tr><td>4</td>
<td><input name="p4" size="9" type="text" readonly></td>
<td><input name="a4" size="3" type="text"></td>
<td><input name="c4" size="3" type="text" readonly></td></tr>
<tr><td>5</td>
<td><input name="p5" size="9" type="text" readonly></td>
<td><input name="a5" size="3" type="text"></td>
<td><input name="c5" size="3" type="text" readonly></td></tr>
<tr><td>6</td>
<td><input name="p6" size="9" type="text" readonly></td>
<td><input name="a6" size="3" type="text"></td>
<td><input name="c6" size="3" type="text" readonly></td></tr>
<tr><td>7</td>
<td><input name="p7" size="9" type="text" readonly></td>
<td><input name="a7" size="3" type="text"></td>
<td><input name="c7" size="3" type="text" readonly></td></tr>
<tr><td>8</td>
<td><input name="p8" size="9" type="text" readonly></td>
<td><input name="a8" size="3" type="text"></td>
<td><input name="c8" size="3" type="text" readonly></td></tr>
<tr><td>9</td>
<td><input name="p9" size="9" type="text" readonly></td>
<td><input name="a9" size="3" type="text"></td>
<td><input name="c9" size="3" type="text" readonly></td></tr>
<tr><td>10</td>
<td><input name="p10" size="9" type="text" readonly></td>
<td><input name="a10" size="3" type="text"></td>
<td><input name="c10" size="3" type="text" readonly></td></tr>
</table>
<input value="答え合わせ" type="button"><br>
正答数:<input name="ok" size="3" type="text" readonly>
誤答数:<input name="ng" size="3" type="text" readonly>
</form>
</body>
function initialize()の中身をどうしたらいいのかが分かりません。
お礼
リンク大変助かりました。ありがとうございました!