Java(掷骰子决定谁先进入蛇和梯子游戏)

时间:2016-05-19 03:43:38

标签: java

我正在开发蛇和梯子游戏。我无法在游戏开始前确定哪个玩家首先进入骰子掷骰。

非常感谢任何帮助。

这就是我的尝试:

i

3 个答案:

答案 0 :(得分:1)

生成随机数时,您将离开1。

+1

您可以创建一个ArrayList来保存所有卷,然后创建一个临时的arraylist来保存卷。对临时列表进行排序以获取最大值,然后在原始列表中查找最大值的索引。

如果您还将玩家存储在数组或列表中,则可以使用刚刚找到的索引来确定哪个玩家具有最大值

result = rand.nextInt(2) //will return 0 or 1

答案 1 :(得分:0)

如果你最多有4个玩家,那么n值将是2< = n< = 4。

List<Integer> decideDiceRollingOrder(int n)
{
     ArrayList<Integer> playingOrder=null;
     if(n<=1 || n>4)
        {
         System.out.println("Please check the players count");
          playingOrder=Collection.emptyList(); // for not throwing the null pointer Exception
       }
     else
        {
           Random rand = new Random();
           playingOrder=new ArrayList<Integer>();
           for(i=1;i<=n;i++)
             {
               playingOrder(i,rand.nextInt(n);// n number of players  
             }  

             //Sort the ArrayList for deciding the order 
         }

   return  playingOrder//sorted list;      

}//method

我希望这能为您提供有关解决方案的主要想法。

答案 2 :(得分:-1)

我会这样做:

from twilio.rest import TwilioRestClient

    account_sid = " authorization sid copied correctly from the site " # Your Account SID from www.twilio.com/console
    auth_token  = "  authorization token copied correctly from the site "  # Your Auth Token from www.twilio.com/console

    client = TwilioRestClient(account_sid, auth_token)

    message = client.messages.create(body="Hey this is a Test SMS",
        to="+919551771607",    # Replace with your phone number
        from_="+14066234282") # Replace with your Twilio number

    print(message.sid)

这些方面的东西。行:import java.lang.Math; int diceRoll = (int) ((6*Math.random())+1); if(diceRoll <= 3){ player1 goes first; } else{ player2 goes first; } 会给你一个0-5的数字,而6*Math.random()会使它成为1-6的骰子,如果你正在寻找它。

编辑添加:忘了将它转换为int。此外,如果您希望数字从0到n,只需将Math.random()前面的数字更改为n + 1(例如:您想要0到100 ... 101 * Math.random)。如果你给if / else一个范围而不是一个等于...

,则不需要转换为int