当前位置: 首页 > news >正文

Java练习8

一.题目

二.源码

package TestRuMen;import java.util.Random;
import java.util.Scanner;public class Test11
{public static void main(String[] args){// 调用 createNumber 方法生成一组随机的中奖号码int[] arr=createNumber();// 调用 userInputNumber 方法获取用户输入的投注号码int[] userInputArr=userInputNumber();// 初始化红球匹配数量为 0int redCount=0;// 初始化蓝球匹配数量为 0int blueCount=0;// 遍历用户输入的红球号码for (int i = 0; i < userInputArr.length-1; i++){// 获取当前用户输入的红球号码int redNumber=userInputArr[i];// 遍历中奖号码中的红球号码for (int j = 0; j < arr.length-1; j++){// 如果用户输入的红球号码与中奖红球号码匹配if (redNumber==arr[j]){// 红球匹配数量加 1redCount++;// 跳出内层循环,继续检查下一个用户输入的红球号码break;}}}// 获取用户输入的蓝球号码int blueNumber=userInputArr[6];// 如果用户输入的蓝球号码与中奖蓝球号码匹配if (blueNumber==arr[6]){// 蓝球匹配数量加 1blueCount++;}// 根据红球和蓝球的匹配数量判断中奖等级并输出结果if (redCount==6&&blueCount==1){System.out.println("恭喜您中1000万");}else if (redCount==6&&blueCount==0){System.out.println("恭喜您中500万");}else if (redCount==5&&blueCount==1){System.out.println("恭喜您中3000");}else if (redCount==5&&blueCount==0||redCount==4&&blueCount==1){System.out.println("恭喜您中200");}else if (redCount==4&&blueCount==0||redCount==3&&blueCount==1){System.out.println("恭喜您中10");}else if (redCount==2&&blueCount==1||redCount==1&&blueCount==1||redCount==0&&blueCount==1){System.out.println("恭喜您中5");}else{System.out.println("很遗憾,您没有中奖");}}/*** 获取用户输入的双色球投注号码。* @return 包含 6 个红球号码和 1 个蓝球号码的数组*/public static int[] userInputNumber(){// 创建一个长度为 7 的数组,用于存储用户输入的号码int[] arr=new int[7];// 创建 Scanner 对象,用于读取用户输入Scanner sc=new Scanner(System.in);// 循环获取用户输入的 6 个红球号码for (int i = 0; i < 6; ){System.out.println("请输入第"+(i+1)+"个红球号码:");// 读取用户输入的红球号码int redNumber=sc.nextInt();// 检查输入的红球号码是否在 1 到 33 的有效范围内if (redNumber>=1&&redNumber<=33){// 调用 contains 方法检查该红球号码是否已经存在于数组中boolean flag=contains(arr,redNumber);if (!flag){// 如果号码不存在,将其存入数组arr[i]=redNumber;// 索引加 1,继续获取下一个红球号码i++;}else{System.out.println("当前红球号码已存在,请重新输入");}}else{System.out.println("当前红球号码超出范围");// 索引减 1,重新获取该位置的红球号码i--;}}System.out.println("请输入蓝球号码:");// 循环获取用户输入的蓝球号码,直到输入有效为止while(true){// 读取用户输入的蓝球号码int blueNumber = sc.nextInt();// 检查输入的蓝球号码是否在 1 到 16 的有效范围内if (blueNumber >= 1 && blueNumber <= 16){// 如果号码有效,将其存入数组的最后一个位置arr[6] = blueNumber;// 跳出循环break;}else{System.out.println("当前蓝球号码超出范围");}}return arr;}/*** 生成一组随机的双色球中奖号码。* @return 包含 6 个随机红球号码和 1 个随机蓝球号码的数组*/public static int[] createNumber(){// 创建一个长度为 7 的数组,用于存储中奖号码int[] arr=new int[7];// 创建 Random 对象,用于生成随机数Random r=new Random();// 循环生成 6 个不重复的随机红球号码for (int i = 0; i < 6; ){// 生成一个 1 到 33 之间的随机整数作为红球号码int redNumber=r.nextInt(33)+1;// 调用 contains 方法检查该红球号码是否已经存在于数组中boolean flag=contains(arr,redNumber);if (!flag){// 如果号码不存在,将其存入数组arr[i]=redNumber;// 索引加 1,继续生成下一个红球号码i++;}}// 生成一个 1 到 16 之间的随机整数作为蓝球号码int blueNumber=r.nextInt(16)+1;// 将蓝球号码存入数组的最后一个位置arr[6]=blueNumber;return arr;}/*** 检查数组中是否包含指定的数字。* @param arr 要检查的数组* @param number 要查找的数字* @return 如果数组中包含该数字返回 true,否则返回 false*/public static boolean contains(int[] arr,int number){// 遍历数组中的每个元素for (int i = 0; i < arr.length; i++){// 如果当前元素等于要查找的数字if (arr[i]==number){// 返回 true,表示数组中包含该数字return true;}}// 遍历结束后未找到该数字,返回 falsereturn false;}
}

http://www.dtcms.com/a/163300.html

相关文章:

  • 【AlphaFold2】Feature extraction:提取特征,为模型输入做准备|Datapipeline讲解
  • 激光扫描仪的用途及优势
  • Java常用注解通俗解释
  • 【计算机视觉】目标检测:深度解析YOLOv5:下一代实时目标检测框架实战指南
  • UniApp 小程序嵌套 H5 页面显示隐藏监听实践
  • CentOS NFS共享目录
  • 关于3D的一些基础知识
  • Objective-C Block 底层原理深度解析
  • WEBSTORM前端 —— 第2章:CSS —— 第4节:盒子模型
  • phpstudy修改Apache端口号
  • (开源)视频画面增强模型:Ev-DeblurVSR (可以解决视频画面不清晰的问题)
  • C++之类和对象:构造函数,析构函数,拷贝构造,赋值运算符重载
  • 从Transformer原理角度来看,prompt设置输出字数限制会生效的原因
  • 8.idea创建maven项目(使用Log4j日志记录框架+Log4j 介绍)
  • Java后端程序员学习前端之html
  • 关于浏览器对于HTML实体编码,urlencode,Unicode解析
  • gem5-gpu 安装过程碰到的问题记录 关于使用 Ruby + Garnet
  • RabbitMQ 启动报错 “crypto.app“ 的解决方法
  • 余额分账和代付有什么区别?
  • AVL树左旋右旋的实现
  • Error: error:0308010C:digital envelope routines::unsupported 高版本node启动低版本项目运行报错
  • Android启动应用时屏蔽RecyclerView滑动,延时后再允许滑动,Kotlin
  • 【免费下载】1985-2023年全国土地利用数据
  • GD32F407单片机开发入门(十七)内部RTC实时时钟及实战含源码
  • 请简述一下什么是 Kotlin?它有哪些特性?
  • React Native 太慢:kotlin-gradle-plugin-2.0.21-gradle76.jar 下载太慢
  • git学习之git常用命令
  • MATLAB函数调用全解析:从入门到精通
  • 【最新 MCP 战神手册 08】工具使用详解:实现 AI 行动
  • Spring MVC 进阶 - 拦截器、异常处理、数据校验