2016-12-06 183 views
0

我完全不熟悉JavaScript,可以真正使用一些幫助。我必須在JavaScript中創建一個程序,它隨機生成1到12之間的兩個數字並將它們存儲到文本字段中。這兩個數字是全局變量,併發送到一個函數,該函數將文本字段字符串顯示爲「x次y」(x和y是隨機生成的數字)。它還應該有一個檢查答案按鈕,使用window.alert將輸入的答案與正確的答案進行比較,並根據他們給出的答案顯示一條消息。我沒有做太多的工作,所以我對缺乏代碼表示歉意,但任何幫助對於課堂任務都非常有幫助。謝謝!JavaScript隨機數學乘法生成器

var x, y; 
 

 
    function aNumber(x, y) { 
 
     Math.floor((Math.random() * 12) + 1); 
 
     Math.floor((Math.random() * 12) + 1); 
 
     return x, y; 
 
    } 
 

 

 
    function genQuestion(x, y) { 
 
     document.getElementById('question').value = aNumber(x) + "times" + aNumber(y); 
 
    }
<body> 
 
    <h1>Learning Multiplication</h1> 
 
    <form name="myForm" id="myForm" action="#"> 
 
     <label>What is: </label> 
 
     <input id="question" name="question" type="text" /> 
 
     <br> 
 
     <label>The answer is: </label> 
 
     <input id="answer" name="answer" type="text" /> 
 
     <br> 
 
     <label>Correct answers: </label> 
 
     <input id="total" name="total" type="text" /> 
 
    <br> 
 
<button class = "button" name="button" type="button" value="Check answer" onclick="genQuestion()" /> 
 
    </form> 
 
</body>

+0

提示:你的函數'aNumber的(X,Y)'返回被傳遞到函數的值相同。 Math.floor((Math.random()* 12)+ 1);'的結果不會被分配給任何變量。另外,我會考慮命名該函數,因爲它返回2個值,而不是「aNumber」。 – lxxxvi

回答

1

所有你能生成一個新的按鈕,這對於xy產生新的價值觀的首位。你的函數名稱aFunction是有點沒有意義,應該有一個名字是什麼功能在做什麼,如generateNumbers

該函數爲xy生成兩個新值。

現在它檢查答案並提示一條消息。

var x, y; 
 
    
 
function generateNumbers() { 
 
    function getRandom12() { 
 
     return Math.floor((Math.random() * 12) + 1); 
 
    } 
 
    x = getRandom12(); 
 
    y = getRandom12(); 
 
} 
 

 
function genQuestion() { 
 
    generateNumbers(); 
 
    document.getElementById('question').value = x + " times " + y; 
 
    document.getElementById('answer').value = ''; 
 
    document.getElementById('total').value = ''; 
 
} 
 

 
function checkAnswer() { 
 
    alert(
 
     x * y === +document.getElementById('answer').value ? 
 
     'Great!' : 
 
     'Not Yet!.' 
 
    ); 
 
    document.getElementById('total').value = x * y; 
 
} 
 

 
genQuestion(); // needed for the first time, could be later an event.
<h1>Learning Multiplication</h1> 
 
<form name="myForm" id="myForm" action="#"> 
 
    <label>What is:</label> 
 
    <input id="question" name="question" type="text" /><br> 
 
    <label>The answer is:</label> 
 
    <input id="answer" name="answer" type="text" /><br> 
 
    <label>Correct answers:</label> 
 
    <input id="total" name="total" type="text" /><br> 
 
    <button class="button" name="button" type="button" onclick="genQuestion()" >Generate new Question</button> 
 
    <button class="button" name="button" type="button" onclick="checkAnswer()" >Check answer</button> 
 
</form>

+0

謝謝你的幫助!那麼考慮到這些數字是隨機生成的,我怎麼會讓它檢查答案是正確還是不正確呢?如果他們不是那麼我會假設你可以做出if語句,但這將是很多if語句... – rozak

+0

@rozak,它只是一個if語句。請參閱編輯。 –