2016-09-18 102 views
0

因此,對於我的JavaScript作業,我必須製作一個遊戲,用戶有5次嘗試猜測1-10之間的數字。我的主要問題是,每次我嘗試運行這個(未完成)時,它只會要求我輸入一次。顯然,我不能把輸入內循環?我也試過這個。有任何想法嗎?循環內輸入

var ans = Math.floor(Math.random() * 10)+1 
    var tries = 6 
    while(tries > 0) 
     { 
     var guess = prompt("") 
     tries-- 
     } 
console.log("Better luck next time") 
+3

無法重現 – Oriol

+5

@Oriol https://xkcd.com/583/ –

+1

我看其他的問題,就像你從來沒有真正使用猜想,看看他們是否得到了正確的答案。但提示實際上是按照廣告的方式工作。請參閱:https://repl.it/DcJo – P1xt

回答

0

似乎也在經歷就好在這裏循環...

JSFiddle

var ans = Math.floor(Math.random() * 10) + 1 
var tries = 6 
while(tries > 0) 
{ 
    var guess = prompt("") 
    tries-- 
} 
console.log("Better luck next time") 
+1

問題在哪裏,你回答 –

+1

沒有 - 我指出原始海報的代碼已經按照他或她的要求工作。操作程序聲明它只需要輸入一次 - 否則小提琴會顯示。如果有問題,則不在OP發佈的代碼中。 – user6790086

+0

這不提供問題的答案。一旦你有足夠的[聲譽](http://stackoverflow.com/help/whats-reputation),你將能夠[評論任何職位](http://stackoverflow.com/help/privileges/comment);相反,[提供不需要提問者澄清的答案](http://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-c​​an- I-DO-代替)。 - [來自評論](/ review/low-quality-posts/13712701) –

0

嘗試與循環

var ans = Math.floor(Math.random() * 10)+1 
 
    
 
    for(var tries=5; tries > 0 ;tries--) 
 
     { 
 
     var guess = prompt("") 
 
     alert("user enter input 5 times"); 
 
     } 
 
console.log("Better luck next time")

+0

在此處查看https://repl.it/DcJo/1 –

+0

這看起來像OP的'while'循環。 「for」不會奇蹟般地解決(不存在的)問題。 – Oriol

+0

@Oriol是的,但可能OP的瀏覽器不支持它 –

-1

你的代碼沒有問題,它工作正常!只是嘗試在另一個瀏覽器中使用它。如果您的瀏覽器有問題,請重置您的瀏覽器。這是您的問題的解決方案代碼。不要擔心您的代碼在我的瀏覽器上運行良好。

<!DOCTYPE HTML> 
<html> 
    <body> 
     <script> 
      var ans = 2//Math.floor(Math.random() * 10)+1 
       var tries = 6 
       while(tries > 0) 
        { 
        var guess = prompt("") 
        if(guess == ans){ 
         console.log("You Win"); 
         break 
        } 
        tries-- 
        if(tries==0){ 
         console.log("Better luck next time")  
        } 
        } 

     </script> 
    </body> 
</html>