【发布时间】:2011-10-24 23:52:10
【问题描述】:
我正在尝试使用随机生成器设置一个简单的加法序列。该数字必须是一个整数。 这是我要完成的一个示例:
(4, 10, 16, 22, 28, ?) :用户必须输入序列中的下一个数字。 (它是 34,因为每个数字相隔 6 个数字。)
生成器为用户提供随机数,但相邻的 2 个数字的距离必须与接下来的两个数字的距离值相同。例如:10-4 = 6、16-10 = 6、22-16 = 6。
private static void simpleAdditionSequence() {
int num1, num2, num3, num4, num5, numUser;
Random generator = new Random();
num1 = generator.nextInt(2147483647);
System.out.println(num1);
}
我遇到的问题是弄清楚如何创建 num2.如果我只使用另一个生成器,它可能小于 num1,并且它的距离需要与其余数字具有相同的值。
(注意 - 我使用了 2147483647,所以我可以生成随机整数。
【问题讨论】:
-
根据经验,关于 SO 的问题不会在标题中标记为“[已解决]”,但您应该接受最佳答案。
-
@MJ93: 两个小问题...在 Java 中编写 Integer.MAX_VALUE 比编写 "2147483647"。然后,如果您真的坚持使用 nextInt(Integer.MAX_VALUE) 来选择您的步骤,那么您将希望实际使用 long 来解决您的问题,因为使用 的解决方案当步长很大时 int 会中断(使用 int 你会很快“结束”并处理负值)。
-
谢谢,我知道我不必使用任何整数值,我可以将其设置为一个限制,例如:100。但很高兴知道。