package zonghe_test; import java.util.Random; import java.util.Scanner; public class 双色球彩票 { public static void main(String[] args) { //红球是1~33,蓝球是1~16 //生成中将号码 System.out.println("--------------"); int[] arr = creatNumber(); //把真正中将号码弄出来,对照是否代码逻辑正确 for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } System.out.println("---------------------"); // for (int i = 0; i < arr.length; i++) { // System.out.println(arr[i]); //用户输入中将号码 int[] userneed_num = userneed(); //判断红球与篮球用户输入的数据与实际中将数据相同的个数 int red_count =0; int blue_count = 0; for (int i = 0; i < arr.length-1; i++) { int red_num =userneed_num[i]; for (int j = 0; j < arr.length; j++) { if(red_num ==arr[j]){ red_count++; break; } } } //判断篮球 int blue_num =userneed_num[arr.length -1]; if(blue_num == arr[arr.length -1]){ blue_count++; } System.out.println(red_count); System.out.println(blue_count); //进行判断是几等奖 if(red_count == 6&& blue_count ==1){ System.out.println("一千万"); }else if(red_count == 6&& blue_count ==0){ System.out.println("500万"); }else if(red_count == 5&& blue_count ==1){ System.out.println("3000"); }else if((red_count == 5&& blue_count ==0)||(red_count == 4&&blue_count ==1)){ System.out.println("200"); }else if((red_count == 4&& blue_count ==0)||(red_count == 3&&blue_count ==1)){ System.out.println("10"); }else if((red_count == 2&& blue_count ==1)||(red_count == 1&&blue_count ==1)||(red_count == 0&&blue_count ==1)){ System.out.println("5"); } } public static int[] userneed(){ //创建一个数组获取用户输入元素 int[] arr =new int[7]; //开始输入红球 Scanner sc= new Scanner(System.in); for (int i = 0; i < arr.length-1; ) { System.out.println("请输入第"+(i+1)+"个红色球"); int red_num =sc.nextInt(); boolean flag =contain(arr,red_num); if(red_num>=1&&red_num<=33){ if(!flag){ arr[i] =red_num; i++; } }else{ System.out.println("输入号码有错误,请重新输入"); } } //开始篮球 System.out.println("请输入蓝球号码"); int blue_num =sc.nextInt(); if(blue_num>=1&&blue_num<=16){ arr[arr.length-1] =blue_num; } return arr; } public static int[] creatNumber(){ //创建一个数组收纳数据 int[] arr =new int[7]; //随机红球 Random r =new Random(); for (int i = 0; i < arr.length; ) { int red_num=r.nextInt(33)+1; //判断红球数字是否已经在数组内 boolean contain =contain(arr,red_num); if(!contain){ //if没有存在,就将其赋值之后在++,如果直接在for循环商++有问题 arr[i] = red_num; i++; } } //随机一个蓝球 int blue_num =r.nextInt(16)+1; arr[arr.length -1] =blue_num; return arr; } public static boolean contain(int[] arr,int num){ for (int i = 0; i < arr.length; i++) { if(num ==arr[i]){ return true; } } return false; } }
双色球彩票java版
最新推荐文章于 2024-10-17 19:11:48 发布