2016-12-06 13 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);의 결과는 어떤 변수에도 할당되지 않습니다. 또한 "aNumber"가 아니라 2 개의 값을 반환하므로 함수의 이름을 생각해 보겠습니다. – 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' 문입니다. 편집을 참조하십시오. –