

初めまして、質問なんですが  
サイコロを振り、出た目を２ｘ＋５して結果が１００以下の場合もう一度２ｘ＋５をし、  
結果が１００を超えたらその結果と何回計算したかを出力しろ

という問題なんですがランダムな数字を生成することはできました。  
しかしその先で躓いてしまい、中々うまくいきません。  
どなたかアドバイスを下さい。  
よろしくお願いします。

とりあえず書いてみたソースです。

[code]

    <html>
      <head>
        <meta charset="UTF-8">
      </head>
      <body>
        <script>
        function GetRandomNumber() {
           var randnum = Math.floor( Math.random() * 9 );
           document.getElementById("sample").innerHTML = randnum;
        }
        // -->
        var a = 0;
        var count = 0;
        var y = randnum;
    
        while(randnum < 100) {
          if(randnum > 100) {
            document.write(a+count+"回目です");
          }
          a += 2 * (y) + 5
          ++count;
        }
        </script>
        <p>
           <input type="button" value="サイコロ" onclick="GetRandomNumber();">
        </p>
        <p>
           出た目： <span id="sample">***</span>
        </p>
      </body>
    </html>
    
[/code]


CC BY-SA 3.0
2015-07-03T07:42:10.937
11988
2015-07-03T08:53:30.193
2015-07-03T08:18:45.203
3516
10383
question
javascript
Javascript超初心者です


`document.write` は、ページを構成する時に使いますので、  
ボタンを押した時を起点に動作するようにする必要があります。  
例えば以下のような感じにします。

[code]

    <html>
      <head>
        <meta charset="UTF-8">
        <title>Sample</title>
        <script>
        function Dice() {
           return Math.floor(Math.random() * 6 ) + 1;
        }
    
        function DoIt() {
            var x = Dice();
            var count = 0;
            do {
                x = 2*x + 5;
                ++count;
            }while(x <= 100);
            document.getElementById("result").innerHTML = 
                x + "になるまで" + count + "回計算しました。";
        }
        </script>
      </head>
      <body>
        <p>
           <button type="button" onclick="DoIt()">実行</button>
        </p>
        <p>
           結果： <span id="result"></span>
        </p>
      </body>
    </html>
    
[/code]


CC BY-SA 3.0
2015-07-03T08:53:30.193
11995
2015-07-03T08:53:30.193
5044
11988
answer