在1到30之间随机猜测6个数字,由程序抽取中奖号码,并检测是否中奖

在1到30之间随机猜测6个数字,由程序抽取中奖号码,并检测是否中奖;
具体要求:
(1)手动输入6个数字;
(2)随机生成6个数字,作为中奖号码;
(3)根据输入数字和中奖号码相同数字的个数确定中奖等级;
(4)中奖等级确定规则:
6个数字相同:中特等奖;
5个数字相同:中一等奖;
4个数字相同:中二等奖;
3个数字相同:中三等奖;
2个数字相同:中四等奖;
1个数字相同:中五等奖;
0个数字相同:感谢您的参与!

2个回答

package com.jhh.buglocation.views;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

/**
 * 模拟
 * 
 * @author zhangmuyu
 *
 */
public class Test {
    /**
     * 随机六个数作为中将的号码
     * 
     * @return
     */
    public List<Integer> getRandomNum() {
        List<Integer> list = new ArrayList<Integer>();
        int num = 0;
        for (int i = 6; i > 0; i--) {
            num = (int) (1 + Math.random() * (30 - 1 + 1));
            list.add(num);
        }
        return list;
    }

    /**
     * 输入六个数
     * 
     * @return
     */
    public List<Integer> input() {
        Scanner sc = new Scanner(System.in);
        List<Integer> list = new ArrayList<Integer>();
        for (int i = 6; i > 0; i--) {
            System.out.println("请输入第" + (6 - i + 1) + "个数");
            list.add(sc.nextInt());
        }
        sc.close();
        return list;
    }

    /**
     * 判断是否中奖
     */
    public void jduge() {
        List<Integer> input = input();
        List<Integer> random = getRandomNum();
        int count = 0;
        for (Integer inputNum : input) {
            for (Integer randomNum : random) {
                if (inputNum == randomNum)
                    count++;
            }
        }
        System.out.println("本期中将号码为:" + random.toString());
        System.out.println("您购买的号码为:" + input.toString());
        switch (count) {
        case 1:
            System.out.println("恭喜您获得5等奖!");
            break;
        case 2:
            System.out.println("恭喜您获得4等奖!");
            break;
        case 3:
            System.out.println("恭喜您获得3等奖!");
            break;
        case 4:
            System.out.println("恭喜您获得2等奖!");
            break;
        case 5:
            System.out.println("恭喜您获得1等奖!");
            break;
        case 6:
            System.out.println("恭喜您获得特等奖!");
            break;
        case 0:
            System.out.println("感谢您的参与!");
            break;
        }
    }

    public static void main(String[] args) {
        Test test = new Test();
        test.jduge();
    }
}

效果图
输入的数应该也限制在1-30之间

都没有看到你到底要问什么如果你要讲输入的数控制再1-30 sc.nextInt() 再这里判断就可以了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!