忍者ブログ

いろいろサンプル

JAVASCRIPTで作成した算数のゲーム(ドリル・クイズ)の解答やソース、プログラムで必要なことを書いていきます。 SPIや小・中学の勉強になるe-ラーニングのプログラムになることを目指しています。

成績表がでるようになりました。


×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

ただいまコメントを受けつけておりません。

成績表がでるようになりました。


なんとかできました。
間違っていたのは
配列に要素を追加する際にpushを使用していたのですが
その時に””を使用していたのが悪かったみたいです。
配列aaaaに
変数myA1(数字の10が入っている)を追加したい場合に
aaaa.push("myA1")にしていましたが
これだと文字としてmyA1として入ってしまい、数字の10は入ってくれていませんでした。
これを
aaaa.push(myA1)とすると
数字の10が配列aaaaに入ってくれました。

配列の要素をしてする場合に
間違って
aaaa(i)としてましたが正しくは
aaaa[i]としないといけないようです。

レイアウトはテーブルになってしまっています。
10問正解したら成績表が出て
そのまま続けていくと
10問ごとに成績表が更新されるようになっています。

サンプルはこちら
小数の掛け算
足し算

今は2つのファイルだけ成績表が出ます。

下記は小数の掛け算のソースです。
-----------------------------------------
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<script src="jq/jquery-1.10.2.min.js"></script>
<title>小数の掛け算</title>
<meta name="keywords" content="ゲーム,小数,かけざん,問題,クイズ">
<meta name="description" content="小数の掛け算(ドリル・クイズ)などができるHPです。JAVASCRIPTで作製しています。">

</head>
<script type="text/javascript"><!--
    myHit = 0;
    myNowCnt = 0;    // 問題を出すテーブルカウンタ
    myLastCnt = 10;    // 問題の数
    var myy1,myy2,myra,myrb;
    var qqaa=new Array();
    var qqbb=new Array();
    var qqcc=new Array();
    var qqdd=new Array();
    var aaaa=new Array();   
function mySet(){
    myra = Math.floor(Math.random()*999)+1;
    myrb = Math.floor(Math.random()*9)+1;
    myy1 = myra / 100;
    myy2 = myrb / 10;
    document.myForm.myFormQ1.value = myy1; // 数値
    document.myForm.myFormQ2.value = myy2; // 数値
       document.myForm.myFormA1.value = ""; // 数値
}

// 入力した答えが正解か不正解かを判定する関数 (答えを入力して、[OK]ボタンを押した時の処理)
function myCheck(){
     myA1 = eval(document.myForm.myFormA1.value); // 入力された数値 を取得
     ayy1 = (myra*myrb)/1000;
     if ( ayy1 == myA1){ // 答えと入力した値は等しいか(正解か)?
        myHit++;
        qqcc.push("○");
        document.ytr001.mes01.value = ("あたり! (^_^)");
     }else{
        document.ytr001.mes01.value = ("はずれ ! こたえは"+ayy1+"です !");
        qqcc.push("×");
     }
             qqaa.push(myy1);
            qqbb.push(myy2);
            aaaa.push(myA1);
            qqdd.push(ayy1);
    mySet(); // 次の問題をセット
     if (myNowCnt==myLastCnt-1){    // 問題終わった?
            myScore = myHit*10;    // 得点計算
            document.ytr002.mes02.value =("問題終了です。"+myLastCnt+"問中"+myHit+"問正解。点数は"+myScore+"点です。");
            myNowCnt=0;   
            myHit=0;   
            var hantei ="";
            var seitou = document.getElementById('kaitou');
            hantei +="<table border=1><tr><td colspan=2>問題</td><td>あなたの答え</td><td>判定</td><td>正答</td></tr>"
            for (i = 0; i < 10; i = i +1){
                hantei += "<tr><td>";
                hantei += qqaa[i];
                hantei += "</td><td>x";
                hantei += qqbb[i];
                hantei += "</td><td>";
                hantei += aaaa[i];
                hantei += "</td><td>";
                hantei += qqcc[i];
                hantei += "</td><td>";
                hantei += qqdd[i];
                hantei += "</td></tr>";               
            }
            hantei +="</table>"
            seitou.innerHTML = hantei;
            qqaa=[];
            qqbb=[];
            qqcc=[];
            qqdd=[];
            aaaa=[];
           
        }else{    // 次の問題へ
            myNowCnt++;
            document.ytr002.mes02.value =(+myNowCnt+"問中"+myHit+"問正解。");   
            myQues();   
        }
}
// -->
</script>
<body>
<!-- 小数の掛け算の問題フォームを設置 -->

<h1>小数の掛け算</h1>

<form name="myForm">
さて、もんだいです。2つの小数をかけた答えを入力してください。
<br><br>
<table>
<tr>
    <td>
    </td>
    <td>
        <input type="text" size="4" name="myFormQ1">
    </td>
</tr>
<tr>
    <td>   
        ×
    </td>
    <td>
        <input type="text" size="4" name="myFormQ2">
    </td>
</tr>
<tr>
    <td colspan=2>
        <hr>
    </td>
</tr>
<tr>
    <td>
    </td>
    <td>
        <input type="text" size="4" name="myFormA1">
    </td>
</tr>
</table>
<br>
<input type="button" value="OK" onclick="myCheck()">
</form>

<form name="ytr001">
<input type="text" size="100" style="border-style:none;background-color:#FFFFFF;" name="mes01">
</form>
<form name="ytr002">
<input type="text" size="100" style="border-style:none;background-color:#FFFFFF;" name="mes02">
</form>
<script type="text/javascript">

<!--
mySet(); // 初回の問題をフォームへセット
// --></script>
<div id="ttese">
ここに
</div>


<div id="kaitou">
ここに
</div>
<br>
<a href="http://tasarotoste.zouri.jp/">TOPへ</a>
<br>


<br><br>
</body>
</html>
PR

コメント

TWITTER

忍者カウンター

広告

ブログ内検索

フリーエリア

フィードメーター - いろいろサンプル ページランク表示用ブログパーツ E-Pagerank にほんブログ村 ゲームブログ 学習ゲームへ
にほんブログ村 学びランキング ブログ王ランキングに参加中! PVランキング ページランク表示用ブログパーツ E-PageRank