weixin_44282239 2018-12-26 15:20 采纳率: 0%
浏览 1229

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

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

  • 写回答

2条回答 默认 最新

  • 大大泡泡糖1996 2018-12-26 08:25
    关注
    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之间

    评论

报告相同问题?