0

我必须创建一个彩票模拟器,显示 1 到 47 之间的六个不同的随机数字。应该有三种不同的方法,其中一种专门用于打印数字。我不知道如何让它打印多个数字。注意:我对编程很陌生,所以如果你能在你的答案中解释一切是如何工作的,那将会有所帮助。

这就是我到目前为止所得到的:

import java.util.*;

/**
* @author El
*/
public class Simulator {

/**
 * @param args
 */

public static final int NUM_OF_BALLS = 6;
public static final int MAX_VALUE_IN_BUCKET = 47;
public static final int SEED = 1;

public Random  numberGenerator = new Random ( SEED );   

public static void main(String[] args) {
printWinners();     
}

private static void printWinners(){

}

}
4

2 回答 2

0

作为一个新程序员,将这个问题分解为几个步骤可能会有所帮助:

  1. 创建一个列表,最好是一个整数数组,以保存能够保存所有 6 位数字的彩票号码。您应该能够发现如何做到这一点。

  2. 生成一个介于 1 到 47 之间的随机数。如何执行此操作可以通过谷歌搜索或查看Java 中的 Math 类很容易找到。

  3. 检查此号码是否在您的列表中,并采取相应措施(如果它已经在列表中,请重复步骤 1)。如果不在列表中,则添加列表并对其进行排序(提示:Arrays.sort(myArray))

  4. 从步骤 0 开始重复,直到您的阵列已满。在编程中,重复通常是通过循环来实现的。在这种情况下,for 循环将是一个不错的选择,因为您提前知道需要多少次迭代(无论有多少彩票号码)。

于 2013-07-09T21:49:46.630 回答
0

有很多方法可以打印出多个数字,这似乎是您的问题。我假设您要将它们打印到命令行,因此您需要使用 System.out.print(number) ,您只需将数字替换为数字。要获得更多控制格式,您希望它看起来如何使用System.out.printf(format,args,...) 您想要打印出六个数字,因此您的格式可能看起来像这样 "%d %d %d %d %d %d%n" 其中 %d 表示您是给它一个整数。%n 告诉它打印一个新行。System.out.printf 函数的特殊之处在于它可以在第一个参数之后接受任意数量的参数,因此您最终会得到如下代码行: System.out.printf("%d %d %d %d %d %d%n",number1,number2,number3,number4,number5,number6);

于 2013-07-09T21:48:16.690 回答