java实现双色球彩票游戏

综合案例开发:模拟双色球彩票游戏

玩法说明:

双色球投注区分为红球号码区和蓝球号码区,红球号码范围为01~33,蓝球号码范围为01~16。双色球每期从33 个红球中开出6个号码(不能重复),从16个蓝球中开出1个号码作为中奖号码,双色球玩法即是竞猜开奖号码的6 个红球号码和1个蓝球号码,顺序不限。 用户输入红球和蓝球号码,程序输出该用户中几等奖。

代码实现:

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

public class SimulatedLottery {

 public static void main(String[] args) {
 //单注最高奖金
 int maxMoney = 500;
 //输入蓝球的号码
 System.out.print("请输入你购买的蓝球号码:");
 Scanner input = new Scanner(System.in);
 int blueBall = input.nextInt();
 //输入红球的数组
 int[] redBall = new int[6];
 System.out.print("请输入你购买的红球号码(不重复):");
 for (int i = 0; i < redBall.length; i++) {
  redBall[i] = input.nextInt();
 }
 //输出输入值
 System.out.println("----------------");
 System.out.print("你购买的红球号码是:");
 for (int i = 0; i < redBall.length; i++) {
  System.out.print(redBall[i]+",");
 }
 System.out.println();
 System.out.println("你购买的蓝球号码是:"+blueBall);
 System.out.println("---正在产生中奖号码---");

 //生成的蓝球号码
 Random numsRandom = new Random();
 int blueBallRandom = numsRandom.nextInt(16)+1;

 //生成红球的号码
 int[] redBallRandom = new int[6];
 int index = redBallRandom.length;
 int inputRandom = 0;
 int k = 0;
 while (index>0) {

  if (exist(redBallRandom, inputRandom)) {
  //在数组中存在,更换一个随机数
  inputRandom = numsRandom.nextInt(33)+1;
  }else {
  //在数组中不存在
  redBallRandom[k] = inputRandom;
  k++;
  index--;
  }
 }

 //输出中奖号码
 System.out.println("蓝球的中奖号码是:"+blueBallRandom);
 System.out.print("红球的中奖号码是:");
 for (int i = 0; i < redBallRandom.length; i++) {
  System.out.print(redBallRandom[i]+",");
 }
 System.out.println();

 //统计和蓝球相等的个数
 int blueCount = 0;
 if (blueBall == blueBallRandom) {
  blueCount = 1;
 }

 //统计和红球相等的个数
 int redCount = 0;
 for (int i = 0; i < redBallRandom.length; i++) {
  if (redBall[i] == redBallRandom[i]) {
  redCount++;
  }
 }

 //判断是否中奖
 if (blueCount == 0 && redCount <= 3) {
  //未中奖
  System.out.println("很遗憾,您未中奖,赌博害人,请勿上头!");
  //中奖
 }else if(blueCount == 1 && redCount < 3) {
  System.out.println("恭喜你,中了六等奖,您的奖金为5元");

 }else if((blueCount == 1 && redCount == 3) || (blueCount == 0 && redCount == 4)) {
  System.out.println("恭喜你,中了五等奖,您的奖金为10元");

 }else if((blueCount == 1 && redCount == 4) && (blueCount == 0 && redCount == 5)) {
  System.out.println("恭喜你,中了四等奖,您的奖金为200元");

 }else if(blueCount == 1 && redCount == 5) {
  System.out.println("恭喜你,中了三等奖,您的奖金为3000元");

 }else if(blueCount == 0 && redCount == 6) {
  System.out.println("恭喜你,中了二等奖,您的奖金为"+(int)(maxMoney*0.3)+"万");

 }else if(blueCount == 1 && redCount == 6 ) {
  System.out.println("恭喜你,中了一等奖,您的奖金为"+maxMoney+"万");
 }

 }

 //判断数组中是否存在某数的方法,存在返回true
 public static boolean exist(int[] redBallRandom, int inputRandom) {
 for (int i = 0; i < redBallRandom.length; i++) {
  if(redBallRandom[i] == inputRandom) {
  return true;
  }
 }
 return false;

 }

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 使用java技术抓取网站上彩票双色球信息详解

    前言 现在很多web应用,做过web项目的童鞋都知道,web结果由html+js+css组成,html结构都有一定的规范,数据动态交互可以通过js实现. 有些时候,需要抓取某一个你感兴趣的网站信息,一个网站信息肯定是通过某一个url,发送http请求,根据地址定位的,当知道这个地址,可以获取到很多的网络响应,需要认真分析,找到你那一个合适的地址,最后通过这个地址返回一个html给你,我们可以得到这个html,分析结构,解析这个结构获取你要的数据.Html的结构解析往往是复杂繁琐的,我们可以使用j

  • Java实现爬取往期所有双色球开奖结果功能示例

    本文实例讲述了Java实现爬取往期所有双色球开奖结果功能.分享给大家供大家参考,具体如下: 梦想还是要有的,万一实现了呢?我相信经常买双色球的朋友和我都会有一个疑问,就是往期双色球的开奖结果是什么?我钟意的这一注双色球在往期是否开过一等奖,如果开过的话,基本上可以放弃这一注了,因为历史上应该没有出现过两期双色球开奖完全一致的吧?那么往期的开奖结果是什么呢?我自己用Java写了一个简易的类,爬取所有双色球开奖结果,本来想开发安卓版本的,由于UI等需要时间准备,有缘再开发吧. import java

  • java双色球机选法程序解析

    本文实例为大家分享了java双色球机选法程序的具体代码,供大家参考,具体内容如下 一.程序要求 随机产生红色球池1~33,并随机从红色球池中去除6个红球,且不可重复! 随机产生蓝色球池1~16, 并随机从蓝色球池中去除1个蓝球,且不可重复! 二.程序分析 a.先将红球与蓝球球池建立! 我们可以使用for循环来产生,并放到对应数组中. int[]hongQiu=new int[33]; for(int i=0;i<hongQiu.length;i++){ hongQiu[i]=i+1; b.通过R

  • Java实现简单双色球摇奖功能过程解析

    这篇文章主要介绍了Java实现简单双色球摇奖功能过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 双色球:从1-33号球中选取6个红球,且红球不重复 从1-16号球中选取一个篮球 话不多说 上代码~~~ package Javaee; import java.util.Arrays; import java.util.Random; public class DoubleChromosphere { public static void

  • java算法实现预测双色球中奖号码

    双色球选号规则红球是1~33选6个,蓝球1~16选1个. 它有17721088种排列组合, 这个代码实现了如何将一组双色球号码 转换成第n个排列组合数字, 以及如何根据第n个排列组合数字生成一组双色球号码. 分析一下今年的中奖号码所隐含的排列组合序号,也许你会找到规律, 哈哈,或许你能用它算出下一次的中奖号码,赶快试试吧! DoubleColorBall.java import java.util.Arrays; public class DoubleColorBall { /** * 根据双色

  • java实现双色球机选号码生成器

    本文实例为大家分享了java实现双色球机选号码生成器的具体代码,供大家参考,具体内容如下 双色球号码1~32不重复选6个(排序好),1~16中选一个(蓝号) import java.util.Random; import java.util.Arrays; //操作数组的工具类 /** * 双色球号码机选 * * @author Administrator * */ public class Lettery { public static void main(String[] args) { f

  • java实现双色球抽奖算法

    本文实例为大家分享了java实现双色球抽奖的具体代码,供大家参考,具体内容如下 实现双色球先考虑整体思路: 1.随机生成7位数的数组为大奖号码(前6位红球每个数值取值范围为1~33,而且6个数值不能相同,第七位篮球取值范围为1~16) 2.判断购买号码为手动输入还是机选(如为手动输入,将用for循环一次从控制台输入一个依次数赋值到数组:如为机选,实现代码和 1. 中相同) 3.将大奖号码和购买号码的前6位红球分别实现升序排列 4.判断大奖号码和购买号码的号码匹配程度来确定得奖级别或者没有得奖,并

  • Java实现双色球抽奖随机算法示例

    第一次写技术博客,写一下以前写的一个双色球抽奖随机算法. 原理如下: 1首先初始化一个待抽奖的数组nums,数组的长度k 2. 随机一个1-k之间的随机数,得到nums[k],这样得到第一个抽奖号,nums中剔除该号码,k--. 3. 重复步骤2,直到得到全部中奖号码 class myLuck { private int mTarget; List<Integer> mNums = new ArrayList<Integer>(); //摇奖池 ///从多少个数中产生多少个数 //

  • java实现双色球彩票游戏

    综合案例开发:模拟双色球彩票游戏 玩法说明: 双色球投注区分为红球号码区和蓝球号码区,红球号码范围为01-33,蓝球号码范围为01-16.双色球每期从33 个红球中开出6个号码(不能重复),从16个蓝球中开出1个号码作为中奖号码,双色球玩法即是竞猜开奖号码的6 个红球号码和1个蓝球号码,顺序不限. 用户输入红球和蓝球号码,程序输出该用户中几等奖. 代码实现: import java.util.Random; import java.util.Scanner; public class Simul

  • Java实战入门之双色球彩票小游戏

    一.项目需求 二.项目思路 1.菜单制作 2.中奖号码生成 getNumber (随机数 Math.random) 3.购买号码和中奖号码比对 生成中奖等级 package com.test.mxl; import java.util.Scanner; public class Test { public static void main(String[] args) { int[] balls = new int[7]; int count = 0; boolean isBuy = false

  • java实现五子棋小游戏

    java实现五子棋小游戏 package Gomoku; import java.awt.Toolkit; import javax.swing.JFrame; public class GomokuFrame extends JFrame { //定义一个操作面板 OperatorPane op=null; public GomokuFrame() { //设置名称 this.setTitle("五子棋"); //设置窗口大小 this.setSize(510,510); //设置窗

  • Java版坦克大战游戏源码示例

    整理文档,搜刮出一个Java版坦克大战游戏的代码,稍微整理精简一下做下分享. package tankwar; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.io.File; import java.io.FileInputStream; imp

  • Java编写掷骰子游戏

    废话不多说了,直接奔主题. **多线程&&观察者模式 题目要求:<掷骰子>窗体小游戏,在该游戏中,玩家初始拥有1000的金钱,每次输入押大还是押小,以及下注金额,随机3个骰子的点数,如果3个骰子的总点数小于等于9,则开小,否则开大,然后判断玩家是否押对,如果未押对则扣除下注金额,如果押对则奖励和玩家下注金额相同的金钱. 分析:这个题目要求灵活运用多线程的相关知识,达到点击开始按钮时,有3个线程启动,分别控制3颗骰子的转动,在3颗骰子全部转完以后,回到主线程计算游戏结果. //个

  • Java编程经典小游戏设计-打砖块小游戏源码

    [程序中使用的数据结构和符号说明] HitBrick类 GreenBallThread控制小球路线 xUp,yUp,bouncing定义变量存储16位数值形式 x,y小球坐标 xDx,yDy坐标增量 MAX_X,MAX_Y坐标最大值 renew初始化 label标签 Rx,Ry横板坐标 Brick[]砖块 ball小球 HitBrick()定义小球横板及砖块位置坐标 keyPressd(keyEent)定义小球启动键(按空格键启动) keyReleased(keyEvent)接收键盘事件侦听器接

  • Java Chaos Game噪声游戏实例代码

    [简介] 最近一直在读<深奥的简洁>,里面有一章介绍了几种使用噪声产生分形图的方法,感觉很有意思,于是尝试使用计算机模拟了一下,效果还不错(噪声法比传统迭代法在编程上好实现一些,后来发现这类算法还不少,搜索chaosgame可以找到更多). [Sierpinski三角形的噪声产生法] 在这些噪声游戏中,Sierpinski(谢尔宾斯基)三角形的生成规则可谓是最简单的: 1.在平面上选取三个点,标记为1.2.3,作为大三角形的顶点. 2.选择其中一点,作为"当前点"(比如选择

  • Java实现的剪刀石头布游戏示例

    本文实例讲述了Java实现的剪刀石头布游戏.分享给大家供大家参考,具体如下: ChoiceAnswer.java public class ChoiceAnswer { String texts[] = { "石头", "剪刀", "布" }; int value; // [1]石头\t[2]剪刀\t[3]布 String getText() { return texts[value - 1]; } ChoiceAnswer(int value)

  • java实现的2048游戏完整实例

    本文实例讲述了java实现的2048游戏.分享给大家供大家参考,具体如下: 先来看看运行效果: 具体代码如下: package awtDemo; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.io.*; import java.util.*; @SuppressWarnings("serial") public class Game2048 extends JApplet{ @

  • java实现Flappy Bird游戏源代码

    本文实例为大家分享了java实现Flappy Bird游戏的具体代码,供大家参考,具体内容如下 /* 2017/7/23 */ import java.awt.Graphics; //import java.util.Timer; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseListener; import java.awt.event.Mo

随机推荐