我正在开发蛇和梯子游戏。我无法在游戏开始前确定哪个玩家首先进入骰子掷骰。
非常感谢任何帮助。
这就是我的尝试:
i
答案 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