我只是想开始说我在过去的3个小时里一直在搜索这个(还有一些其他的)网站而无济于事,我已经阅读了每篇关于我的主题的文章,不适用或者我不太明白发生了什么。获取随机数生成器以在选择完成后删除选择? JAVA
我有2个问题。
我似乎无法得到随机数生成器放弃一旦做出选择。
我的第二个问题是每个比赛只能有一个六分的轮次,而我似乎无法弄清楚如何将它限制在一个具有6分轮次的特定约束条件下。
该计划旨在模拟挑选跳伞比赛的跳跃。有三个独立的比赛,分别是(A,AA,AAA)(难度水平,某些动作没有出现A或 AA,AAA是全包括的),用户可以从中挑选以及 个人比赛是否是6或10轮(A将 总是6轮)。一旦用户选择了比赛并且轮次数为 ,则该程序应该输出每个回合完成的个人动作 以及 回合的分数(对于所有6轮或10轮的比赛)。这里是 我的第一个问题在于:
一旦移动被选中,它不能被 用于其余的比赛。我不能为我的生活找出如何做到这一点。
移动的,有两个分开的 类别得分中,编号的移动(1-22在我 程序)和字母移动(23以上),在编号是值得 2点和字母是值得1.每轮都是5分或6分
我这个问题是因为那里有一个6点的轮,它只能由3个编号的动作组成,其他 组合是可以接受的;并补充,只能有 是一个六点轮比赛的全部。*
for(int i=0; i < round; i++)
{
System.out.printf("\nRound %d:\n", i+1);
point = 0;
while(point < 5)
{
pickedRandom=false;
formation = myRandom.nextInt(38) + 1;
while(formation == 31)
{
formation = myRandom.nextInt(38) + 1;
}
if(point == 4 && pickedRandom && formation < 23)
{
while(formation < 23)
formation = myRandom.nextInt(38) + 1;
}
if(formation < 23)
{
point+=2;
}
else
{
pickedRandom=true;
point++;
}
formationRound.set(formation, true);
if(formation > 22)
System.out.printf(" %s %s ",randomLetter(formation), formationName(formation));
else
System.out.printf(" %d %s", formation, formationName(formation));
}
System.out.println();
System.out.printf(" %s \n", point);
}
}
一段文字讲故事 - 没问题 - 不知道你的代码出了什么问题请参阅[请添加一个最小的,完整的和可验证的例子](https://stackoverflow.com/help/mcve) 和https://ericlippert.com/2014/03/05/how-to-debug-small-programs/ –
欢迎来到SO。对于某人来说,这是一个很长的描述。你是否通过调试器运行你的代码?这是第一件要做的事情。 – OldProgrammer
假设您使用相关的代码段而不是整个塞纳里奥以最简单的描述发布您的问题。 –