回答受付が終了しました

ID非公開

2021/4/14 22:07

33回答

一回目から10回目までの繰り返しを作りたいのですが、このようになってしまいます。どこがおかしいのか教えてください。独学なので優しめでお願いします。

画像

回答(3件)

0

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <title>noname</title> </head> <body> <script> var totalExp = 0; var levelupExp = 300; for (var i = 0; i < 10; i++) { var exp = Math.floor(Math.random()*51) + 31; totalExp = totalExp + exp; console.log("勇者は" + (i + 1) + "回目の特訓で" + exp + "の経験値を得た"); if (levelupExp <= totalExp) { console.log("勇者のレベルが上がりました"); levelupExp += 300; } else { console.log("次のレベルまで" + (levelupExp - totalExp) + "の経験値が必要です"); } } </script> </body> </html>

0

ID非公開さん >・・・・どこがおかしいのか・・・・・・・・ ご参考に↓ <!DOCTYPE html> <html> <meta charset='UTF-8'> <body> <script> for(var i =0; i<10; i++) { var totalExp = 0; var levelupExp = 300; var exp = Math.floor(Math.random()*51) + 30; totalExp = totalExp + exp; console.log("勇者は" + (i+1)+"回目の特訓で"+ exp +"の経験値を得た"); if(levelupExp <= totalExp){ console.log("勇者のレベルが上がりました"); levelupExp += 300; } else{ console.log("次のレベルまで" + (levelupExp - totalExp) +"の経験値が必要です"); } } </script> </body> </html>

0

for文では、繰り返したい内容を { } の中に入れないと繰り返してくれないです これでは、経験値云々の処理を1回だけやったあと、「何もしない」という処理を10回やっています なぜならfor文の中括弧の中に何も入っていないからです そのため、結局、経験値云々の処理を1回だけやるというプログラムになっています 繰り返す部分を、for分の中括弧の中へ移動する必要があります

ID非公開

質問者

2021/4/15 21:21

とても分かりやすくありがとうございます。中括弧の中にどのようなプログラムをすればいいですか?