java实现从1~33中选出六个数,要求如果选择的数超出范围或者有重复则重新选择
时间: 2023-06-02 16:06:18 浏览: 68
好的,这个问题可以回答。以下是 Java 代码实现:
```
import java.util.*;
public class Lottery {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int[] chosenNums = new int[6]; // 存储已选择的数
int count = 0; // 记录已选择的数的个数
while (count < 6) {
System.out.println("请选择1~33中的一个数字:");
int choice = scanner.nextInt();
if (choice < 1 || choice > 33 || contains(chosenNums, choice)) { // 如果选择的数超出范围或者已选择过
System.out.println("选择的数字无效,请重新选择。");
} else {
chosenNums[count] = choice; // 将选择的数存储起来
count++;
}
}
System.out.println("你选择的号码是:");
for (int num : chosenNums) {
System.out.print(num + " ");
}
}
// 判断数组中是否包含指定的元素
private static boolean contains(int[] arr, int num) {
for (int i : arr) {
if (i == num) {
return true;
}
}
return false;
}
}
```