用java编写一个彩票抽奖程序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用java编写一个彩票抽奖程序相关的知识,希望对你有一定的参考价值。

写一个彩票抽奖程序,要求能随机产生并按照升序输出1到30之间的7个数,且其中任意两个数字不能重复。谢谢了
我是初学者,要求不高,只要简单能实现并运行即可,回答一楼:这个是javaSE的一个课后作业题,我没有任何商业目的,并且这个程序商业利益不大吧???我也只是为了交一个作业而已,谢谢了

参考技术A 我写给你,如果是本专业,以后要多多学习。JDK 1.6

import java.awt.GridLayout;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.Iterator;
import java.util.Random;
import java.util.Set;
import java.util.TreeSet;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;

public class LuckyDrawn

private JFrame f = new JFrame("Lucky Drawn");
private JButton btn = new JButton("Drawn");
private JTextField result = new JTextField("Result");
private static final int MIN = 1;
private static final int MAX = 30;
private static final int RESULT_COUNT = 7;

public LuckyDrawn()
f.add(btn);
f.add(result);
result.setEditable(false);

btn.addMouseListener(new MouseListener()

public void mouseClicked(MouseEvent e)

Random rand = new Random();

Set<Integer> set = new TreeSet<Integer>();

while(set.size() < RESULT_COUNT)
set.add(new Integer(rand.nextInt(MAX)+ 1));


StringBuffer sb = new StringBuffer("Lucky numbers are: ");
for (Iterator iter = set.iterator(); iter.hasNext();)
sb.append(((Integer) iter.next()).intValue()).append(", ");


result.setText(sb.substring(0, sb.length() - 2).toString());
f.pack();


public void mouseEntered(MouseEvent e)
public void mouseExited(MouseEvent e)
public void mousePressed(MouseEvent e)
public void mouseReleased(MouseEvent e)
);

f.setLayout(new GridLayout(2, 1));
f.setVisible(true);
f.setLocation(500, 200);
f.pack();
f.validate();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);


public static void main(String[] args)
new LuckyDrawn();


本回答被提问者采纳
参考技术B 一个简单的程序。 参考技术C 呵呵 你悬赏1000都没人给你。
这些东西应该10W人民币吧。

Java 用两个一维数组实现双色球彩票

设计一个程序,模拟双色球的选号过程(6个蓝球+1个红球),
要求:生成的6个红球号码不重复数字大小在(1-33)之间,蓝球大小(1-16)之间。
思路:
1、创建一个int类型的一维数组balls,用来保存33个彩球的编号
2、创建一个boolean类型的一维数组flags,用来保存33个红球的状态,默认全部为false
  (比如:flags[0]=true,意味着编号等于balls[0]的这个彩球已经被取出来了)
3、去在出号之前,先生成一个随机数,随机数的范围在33之间, 根据产生的随机数的值去balls数组里取对应位置的彩球编号:
  (比如:  a.产生的随机数使用index变量保存
                  b.如果index值为5,则先判断编号等于balls[5]的彩球有没有被取出来过
                  c.如果没有被取过,则取出该球,即在控制台输出该球的编号
                  d.如果已经被取过了,则重复步骤a,b,c;     )
4、需要取6次红球(循环次数已知,可以使用for循环实现)
5、蓝球直接生成一个1-16的整数存放于arr[6];
----------------------------------------------------分割线----------------------------------------------------------------------
 1 public class Test4 {
 2              //  双色球彩票
 3 public static void main(String[] args) {
 4 // TODO Auto-generated method stub
 5  
 6 int[] balls = new int[33];
 7             for(int i=0;i<33;i++){
 8             balls[i]=i+1;
 9             }
10             int[] jg=new int[7];   //存放机选号码的数组
11             int j=0;
12             boolean[] flags = new boolean[33];
13             int index;
14             for(int i=0;i<6;i++){
15                 do{
16                     index = (int)(Math.random()*33+1);
17                     if(flags[index]==false){
18                         // System.out.print(balls[index]+"  ");     //红球
19                         jg[j++]=balls[index];
20                         flags[index]=true;
21                         break;
22                   }
23                 }while(flags[index]); 
24                 
25             }
26          jg[6]=(int)(Math.random()*16+1);    // 蓝球
27          
28          System.out.println("机选号码为: ");
29          for(int e:jg){
30             System.out.print(e+" ");
31          }
32    }
33  }


 

以上是关于用java编写一个彩票抽奖程序的主要内容,如果未能解决你的问题,请参考以下文章

java课程设计---个人博客 彩票抽奖程序 201821123098 钟海清

如何设计一个可以电脑随机抽奖程序

Java基础项目(模拟双色球抽奖系统)

Java基础项目(模拟双色球抽奖系统)

JavaCodeTra 36选7 彩票抽奖

求教高手,初学javaweb,有一个关于抽奖后台程序的疑惑