-1
私は非常にActionScriptのプログラミングに新しいです。私は最近、関数について学びました。私の割り当ては、ユーザーが範囲を入力し、コンピュータがこの範囲内の乱数を生成する推測ゲームを作成することでした。ユーザーはその番号が何であるかを推測します。関数は値を返さないactionscript guessing game
私の主な問題は、関数guessCorrect()の「関数が値を返さない」というエラーが発生することです。私はなぜこれが起こるか、それを修正する方法を理解していない。また、偶然に他のエラーが発生した場合は、私に知らせてください。あなたの助けが大変ありがとうございます。
- 私はリターンでそれを試してみましたが、同じ結果ここ
を得た私のコードです:
btnGuess.addEventListener(MouseEvent.CLICK, guessNumbers);
//Global Variables
var count = 0;
var myGuess:int;
var Answer:int;
var highNumber:int;
var lowNumber:int;
function guessNumbers(e:MouseEvent):void {
//Set Variables
highNumber = int(txtinHighValue.text)
lowNumber = int(txtinLowValue.text)
Answer = randomWholeNumber(highNumber, lowNumber);
myGuess = int(txtinGuess.text);
lblOutput.text = guessCorrect(myGuess, Answer, count);
}
function randomWholeNumber(highNumber:int,lowNumber:int):int
{
return Math.floor((highNumber - lowNumber + 1) * Math.random() + lowNumber);
}
**function guessCorrect(myGuess:int, Answer:int, count:int):String {
while (myGuess != Answer) {
if (myGuess < Answer) {
lblOutput.text = "Guess to low - try again!"
count ++
}
else if (myGuess > Answer) {
lblOutput.text = "Guess to high - try again!"
count ++
}
else if (myGuess == Answer){
lblOutput.text = "It's a match - you win!"
count ++
}
}
}**
lblGuesses.text = "Guessess: " += count
btnNewGame.addEventListener(MouseEvent.CLICK, guessNumbers); {
count = 0;
highNumber = 0;
lowNumber = 0;
}
'guessCorrect'は' lblOutput.text'に直接影響しますが、代わりに文字列値を返す必要があります。あなたの関数は何も返しません。 –
私はこれを単純なタイプミスとして閉じようとしています。あなたの 'guessCorrect'関数に' return string; 'ステートメントを入れるのを忘れてしまいました。私のアドバイス:少し上手く機能を理解するまでに、いくつかのActionscriptチュートリアルの作業にもっと時間を費やしてください。 – Brian
その機能の欠落したリターンは主な問題でさえありません。 whileループでは、アプリケーションが初めて呼び出されたときに、アプリケーションをブロックしてクラッシュさせてしまいます。 – alebianco