栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java基础练习——双色球系统

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java基础练习——双色球系统

双色球共6个红球,和1个蓝球,根据比较用户输入双色球与系统生成双色球的匹配度来反馈奖励。

一、需求:

1.储存用户输入双色球。

2.能够检查用户输入是否合法。红球号码1~33,蓝球号码1~16。

3.系统能够自动生成双色球。

4.比较反馈匹配度。

二、主要思路

1.双色球用二维数组保存。其中索引[0][i]的数组保存红球的数据(i<=5);索引[1][0]的数组保存篮球的数据。

2.储存用户输入、储存系统输入的代码相似,不同之处在于用户使用scanner,系统使用random。

3.检查用户输入用无限循环,只有当满足要求时才跳出。

三、详细代码如下

注:定义变量名时最好打上注释,以免遗忘

​
package com.itheima.test5;

import java.util.Random;
import java.util.Scanner;

public class TwoColor {
    public static void main(String[] args) {
//        1.用户输入双色球号码
        Scanner sc = new Scanner(System.in);
//        生成6个红球
        int[] arrRed = new int[6];
        for (int i = 0; i < arrRed.length; i++) {
            System.out.println("输入" + "第" + (i + 1) + "个红球的号码");
            int numberRed=0;
            while (true) {
                 numberRed = sc.nextInt();//用户输入红球号码 1-33
                if(numberRed<1||numberRed>33){//检验输入是否合法
                    System.out.println("不合法,重新输入第"+(i + 1) + "个红球的号码(1~33)");
                }
                else{
                    break;
                }
            }
            arrRed[i] = numberRed;
        }
        System.out.println("输入蓝球的号码");
        int blue1 =0;
        while (true) {
            blue1 = sc.nextInt();//用户输入输入1-16蓝球
            if(blue1<1||blue1>16){//检验输入是否合法
                System.out.println("不合法,重新输入蓝球的号码(1~16)");
            }
            else{
                break;
            }
        }
        int[] blue = {blue1};
//        储存双色球号码
        int[][] arrBal = {arrRed, blue};
//        遍历用户输入的双色球号
        System.out.println("用户输入的双色球号为:");
        for (int i = 0; i < arrBal.length; i++) {
            for (int i1 = 0; i1 < arrBal[i].length; i1++) {
                System.out.print(arrBal[i][i1] + " ");
            }
        }
        System.out.println();//换行
//        3.系统生成的双色球号
//       int[][] createBall ={ {1,1,1,1,1,1}, {1} };//验证
        int[][] createBall = crateColorBall();//随机生成
        System.out.println("系统生成的双色球号为:");
        for (int i = 0; i < createBall.length; i++) {//遍历
            for (int i1 = 0; i1 < createBall[i].length; i1++) {
                System.out.print(createBall[i][i1] + " ");
            }
        }
//        4.比较用户输入双色球和系统生成的双色球匹配率
//        比较蓝色球
        int blueNumber = 0;
        if (createBall[1][0] == arrBal[1][0]) {
            blueNumber = 1;
        }
//       比较红色球
        int redBall = 0;//创建一个变量记录红色相同次数
        for (int i = 0; i < createBall[0].length; i++) {
            if (createBall[0][i] == arrBal[0][i]) {
                redBall++;
            }
        }
//       5. 输出颜色匹配结果
        if (redBall == 6 && blueNumber == 1) {//6+1
            System.out.println("恭喜你中了1000万");
        } else if (redBall == 6 && blueNumber == 0) {//6+0
            System.out.println("恭喜你中了500万");
        } else if (redBall == 5 && blueNumber == 1) {//5+1
            System.out.println("恭喜你中了3000元");
        } else if ((redBall == 5 && blueNumber == 0) || (redBall == 4 && blueNumber == 1)) {//5+0 || 4+1
            System.out.println("恭喜你中了200元");
        } else if ((redBall == 4 && blueNumber == 0) || (redBall == 3 && blueNumber == 1)) {//4+0 || 3+1
            System.out.println("恭喜你中了10元");
        } else if ((redBall == 2 || redBall == 1 || redBall == 0) && blueNumber == 1) {//1蓝
            System.out.println("恭喜你中了5元");
        } else {
            System.out.println();
            System.out.println("很遗憾,您没有中奖");
        }
    }


    //    2.创建一个生成随机双色球号码的方法
    public static int[][] crateColorBall() {
        Random r = new Random();
        int[] arrRed = new int[6];//创建红球数组
        for (int i = 0; i < arrRed.length; i++) {
            int numberRed = r.nextInt(33) + 1;//随机一个红球号码 1-33
            arrRed[i] = numberRed;
        }
        int[] blue = {r.nextInt(16) + 1};//随机一个1-16号码的蓝球数组
//        储存随机双色球号码
        int[][] arrBal = {arrRed, blue};
        return arrBal;//返回
    }
}

​

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/821603.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号