具体题目:写一个彩票程序:30选7。然后从键盘输入7个数,然后随机(1~30之间)生成7个随机数,注意不能重复,对比7个数是否与随机数有相同的。最后显示“中了几个号”。同时,如果中了7个号,显示一等奖;如果中了6个号,显示二等奖;如果中了5个号,显示三等奖。要求:选用合适的容器和算法。(说明:键盘输入可以使用Scanner类)

import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;
public class Testb {/*构造一个方法getLuck*/public static HashSet<Integer> getLuck() {HashSet<Integer> s = new HashSet<Integer>();while (s.size() < 7) {/*生成7个数字 并放入HashSet的s当中*/int n = (int) (Math.random() * 30 + 1);s.add(n);}return s;}public static void main(String[] args) {HashSet<Integer> s = new HashSet<Integer>();s = getLuck();int x;int bingo = 0;/*输入数字*/System.out.println("请输入7个数字,请勿重复");Scanner sc = new Scanner(System.in);for (int i = 0; i < 7; i++) {x = sc.nextInt();/*contains方法判断输入的数字是否在s当中,num用来统计具体有多少个数字在里面*/if (s.contains(x)) {bingo++;}}/*根据条件进行判断中奖的情况*/System.out.println("中了"+bingo+"个号码");if (bingo == 7) {System.out.println("一等奖");} else if (bingo == 6) {System.out.println("二等奖");} else if (bingo == 5) {System.out.println("三等奖");} else {System.out.println("没有中奖");}}}

对于本题的理解:根据题目要求,首先是要生成7个随机数,然后再从键盘输入进去7个数字,让这两者进行比较,再根据有多少个相同的结果再判断中奖情况。那么在主函数输入7个数字之前。先定义一个方法getLuck(),在里面定义好一个HashSet类的s,用来存放随机生成的数字,然后再返回。在主函数当中,就用Scanner类从键盘输入进去7个数字,由于我们在上面的方法getLcuk()当中,设置的是HashSet类型的s,那么可以利用contains方法,将键盘输入的数字与随机生成的数字进行比较,contains方法可以判断里面的元素,用if语句判断,如果有出现的话会返回true,所以利用bingo进行累计,看看有多个号码中了。最后就根据条件,看看有多少个号码中了,对应中了几等奖。

总结:
1.HashSet的add方法用来存放它的对象
2.hashset.contains(x)方法用来判断是否有包括在hashset当中是否包含了x元素

写一个彩票程序:30选7。相关推荐

  1. 彩票中奖java程序 随机30选7_写一个彩票程序:30选7

    1. 写一个彩票程序:30选7.随机(1~30之间)生成7个随机数,注意不能重复.然后从键盘输入7个数,对比7个数是否与随机数有相同的.最后显示"中了几个号".同时,如果中了7个号 ...

  2. JAVA实验四:写一个彩票的模拟程序

    题目 写一个彩票的模拟程序:30选7.随机(1~30之间)生成7个随机数,注意不能重复.然后从键盘输入7个数,对比7个数是否与随机数有相同的.最后显示"中了几个号".同时,如果中了 ...

  3. 学了C语言,如何利用CURL写一个下载程序?—用nmake编译CURL并安装

    在这一系列的前一篇文章学了C语言,如何为下载狂人写一个磁盘剩余容量监控程序?中,我们为下载狂人写了一个程序来监视磁盘的剩余容量,防止下载的东西撑爆了硬盘.可是,这两天,他又抱怨他的下载程序不好用,让我 ...

  4. 控制台编写JAVA程序教程_写一个java程序的步骤是什么?写java程序技巧

    写Java程序是要按照步骤来的,这样才能写好一个java程序,那么接下来,我们就来给大家讲解一下写一个java程序的步骤是什么? (1)创建Java项目:"FileàNewàProjectà ...

  5. linux如何写一个daemon程序

    linux如何写一个daemon程序 http://www.netzmafia.de/skripten/unix/linux-daemon-howto.html 不过现在linux直接提供了api实现 ...

  6. [WinForm]写一个小程序把指定目录的程序添加到开机自动启动(无法绕过360检查)

    网友阿东提示了这样一个需求:写一个小程序把指定目录的程序添加到开机自动启动,跳过360 我就到百度上搜了一下:C# 将程序添加到启动项 (写入注册表),及从启动项中删除 - 赤狐(zcm123) - ...

  7. 从0开始写一个小程序

    项目简介 从0开始写一个小程序,本来想写一个新闻类的程序,后来发现调用的聚合数据api每天只能访问100次,就换成豆瓣的了,直接用豆瓣的接口又访问不了,在网上查了一下,要把豆瓣的地址换成"h ...

  8. 用python写一个小程序,解决买水果的问题?

    问题: 商店总共有三种水果,香蕉/苹果/葡萄,单价分别为3.5/5.0/3.0元/500克. 写一个小程序实现: 1.输出一个菜单:打印每种水果的价格: 2.寻问客户欲购买水果? 3.客户想购买的克数 ...

  9. python实现抽奖软件(一)_详解用python写一个抽奖程序

    第一次使用python写程序,确实比C/C++之类方便许多.既然这个抽奖的数据不大,对效率要求并不高,所以采用python写,更加简洁.清晰.方便. 1.用到的模块 生成随机数的模块random 用来 ...

  10. python抽奖游戏_利用Python写一个抽奖程序,解密游戏内抽奖的秘密

    原标题:利用Python写一个抽奖程序,解密游戏内抽奖的秘密 前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 极客 ...

最新文章

  1. 复兴or幻象?VR的2021三重门
  2. 网络高可用性之流量镜像和端口流量控制
  3. Balder 3D开发系列之--创建天空盒
  4. python super理解(二)
  5. 大咖说:React Native 全埋点实现原理(内附赠书)
  6. python算法详解张玲玲电子版_算法之路该如何学习?
  7. 如何在 ASP.NET Core 中实现全局异常拦截
  8. FPGA设计中遇到的奇葩问题之“芯片也要看出身”
  9. 民航飞行学院计算机学院院长,中国民航飞行学院计算机学院领导及老师到访四川华迪开展教研活动...
  10. http 和 https 区别
  11. 2020 年百度之星·程序设计大赛 - 复赛 1001Battle for Wosneth
  12. 计算机技术基础的心得体会,计算机技术基础学习心得体会5篇范文.docx
  13. 物流前沿理论与方法1
  14. 智慧城市系列之智能交通系统(ITS)
  15. linux环境使用c语言获取当前目录下有哪些文件,并打印它们的名字
  16. 微信分享网页时自定义标题描述和图片
  17. Ubuntu 20.04 多GPU,涡轮GPU 风扇转速手动调节
  18. android 左右分栏联动布局,自定义页面分栏布局
  19. WPS格式文件转图片格式如何进行操作
  20. 树莓派上编写串口助手软件

热门文章

  1. 如何保证kafka消息的可靠性传递?
  2. ASP .Net Core系统部署到 CentOS7 64 具体方案
  3. CentOS7 Debian 8 安装VMware-tools
  4. zookeeper进行leader选举
  5. Face++ AI换脸
  6. zookeeper 分布式锁_详细讲解!从秒杀聊到ZooKeeper分布式锁
  7. python 生成器_彻底理解 Python 生成器
  8. rename 命令批量修改后缀
  9. Keil5 解决编译通过显示红叉
  10. DPDK 21.08 hygon (海光) CPU 环境构建