谁的Java教学视频比较好?java视频免费下载链接:https://pan.baidu.com/s/117W9HdLwut_LoHQsSAX04Q提取码:73qcjava视频|53.mp4|52_定义输入输出格式.mp4|51_综合练习(二).mp4
用Java编写一个抽奖系统
如何用java技术实现幸运抽奖活动系统
import java.util.Scanner; public class LuckyNumber { /** * 幸运抽奖 */ public static void main(String[] args) { String answer = "y"; // 标识是否继续 String userName = ""; // 用户名 String password = ""; // 密码 int cardNumber = 0; // 卡号 boolean isRegister = false; // 标识是否注册 boolean isLogin = false; // 标识是否登录 int mjava语言实现一个摇号系统,但是可以内部设定中奖名单这个怎么实现?
1、简单控制台程序如下,如需界面需要自己加个。
package zhidao;
import java.util.HashSet;
import java.util.Random;
import java.util.Scanner;
import java.util.Set;
/**
* @author bufei
* @datetime 2020年8月31日15:54:11
*/
public class YaoHao {
public static void main(String[] args) {
String xian = "= = = = = = = = =";
// 起点 终点 奖个数 指定的号码个数
int start = 0, end = 0, prizeNum = 0, defaNum = 0;
System.out.println(xian);
System.out.println("欢迎使用xxx 抽奖系统!");
System.out.println(xian);
Scanner scanner = new Scanner(System.in);
System.out.println("请输入号码范围例如 1 10:");
start = scanner.nextInt();
end = scanner.nextInt();
System.out.println("请输入奖项个数:");
prizeNum = scanner.nextInt();
System.out.println("请输入指定中奖号码个数,不指定请输入0:");
defaNum = scanner.nextInt();
int[] defa = new int[defaNum];
if (defaNum != 0) {
System.out.println("请输入指定的中奖号码,空格隔开:");
for (int i = 0; i < defaNum; i++) {
defa[i] = scanner.nextInt();
}
}
System.out.println(xian);
System.out.println("本次抽奖中奖号码为:");
for (int num : randomDraw(start, end, prizeNum, defa)) {
System.out.print(num+" ");
}
}
/**
* @param start 抽奖范围起点
* @param end 抽奖号码范围终点
* @param prizeNum 中奖号码个数
* @param defa 指定中奖号码
* @return
*/
public static Set
Set
// 未指定中奖号码
if (defa.length == 0) {
//随机抽 prizeNum 个奖
while (set.size() < prizeNum) {
set.add(new Random().nextInt(end - start + 1) + start);
}
return set;
} else {
//指定了中奖号码
//把指定的号码加入进去
for (int num : defa) {
set.add(num);
}
//如果没有全部指定 则继续抽剩余的奖项
while (set.size() < prizeNum - defa.length) {
set.add(new Random().nextInt(end - start + 1) + start);
}
return set;
}
}
}
2、运行效果如图
指定了中奖号码
未指定中奖号码
未指定中奖号码
使用java语言编写一个抽奖系统
packagech07;
importjavax.swing.*;
publicclassTest2{
publicstaticvoidmain(String[]args){
Stringoutput="";
output+="恭喜第"+(1+(int)(Math.random()*100))+"号中了一等奖";
output+="\n恭喜第"+(1+(int)(Math.random()*100))+"号"+(int)(1+(Math.random()*100))+"号"+"中了二等奖";
for(inti=0;i<3;i++){
output+="\n恭喜第"+(1+(int)(Math.random()*100))+"号中了三等奖";
}
JOptionPane.showMessageDialog(null,output);
}
}
程序运行结果截图
中奖的人是随机的!
java抽奖程序
我给你个比较简单的,,但是需要按照你的要求进行稍微的修改。。然后在main方法中去执行就可以了: public class GoodLuck { int custNo; int i=1; String answer; String awardName; public void LuckNo(){ Scanner input=new Scanner(System.in); System.out.println("\n我行我素购物管理系统 > 幸运抽奖\n"); do{ // 需要的话请把随机数调整成你想要的范围(我这个是为了测试方便写的1 (~3的随机数,根据你的需要把下面的3换成你想要的数字就java 制作抽奖小程序
帮你做了一个,不知是否满意呢?
importjava.applet.Applet;
importjava.awt.Button;
importjava.awt.Color;
importjava.awt.Graphics;
importjava.awt.TextField;
importjava.awt.event.ActionEvent;
importjava.util.Random;
importjava.util.Vector;
publicclassLotteryextendsApplet{
privatestaticfinallongserialVersionUID=1L;
intw,h;
Buttonok,out,setup;
String[]msg;
TextField[]gaiLv;
TextField[]jiangPin;
intmx,ml;
intmaxNum;
Randomran;
Vector
Vector
Vector
Vector
booleanlot=false;
booleaniserr=false;
booleanissetup=false;
Stringmesg="输入错误";
StringpriseMsg="继续努力!";
publicvoidinit(){
w=400;
h=220;
mx=20;
ml=40;
ran=newRandom();
this.setSize(w,h);
this.setLayout(null);
ok=newButton("抽奖");
out=newButton("退出");
setup=newButton("确认设置");
msg=newString[4];
msg[0]="一等奖";
msg[1]="二等奖";
msg[2]="三等奖";
msg[3]="幸运奖";
gaiLv=newTextField[4];
jiangPin=newTextField[4];
for(inti=0;i<4;i++){
gaiLv[i]=newTextField("0.0"+(i+1));
this.add(gaiLv[i]);
gaiLv[i].setBounds(mx+ml,75+i*26,60,18);
jiangPin[i]=newTextField();
this.add(jiangPin[i]);
jiangPin[i].setBounds(mx+ml*3,75+i*26,80,18);
}
this.add(ok);
ok.setBounds(260,180,60,28);
ok.addActionListener(newLotButtonAction(this));
this.add(out);
out.setBounds(330,180,60,28);
out.addActionListener(newLotButtonAction(this));
this.add(setup);
setup.setBounds(110,180,80,24);
setup.addActionListener(newLotButtonAction(this));
}
publicvoidpaint(Graphicsg){
g.setColor(Color.white);
g.fillRect(0,0,this.getWidth(),this.getHeight());
g.setColor(newColor(230,255,230));
g.fillRect(0,0,w,30);
g.setColor(Color.BLUE);
g.drawString("JAVA抽奖系统",130,20);
g.setColor(Color.ORANGE);
g.drawRect(10,40,230,170);
g.setColor(Color.BLACK);
g.drawString("设置",mx,60);
g.drawString("概率",mx+ml,60);
g.drawString("奖品",mx+ml*3,60);
for(inti=0;i
g.setColor(newColor(255-(i*30),45,89));
g.drawString(msg[i],20,90+i*26);
}
if(lot==true){
g.setColor(newColor(ran.nextInt(255),ran.nextInt(255),ran.nextInt(255)));
if(priseMsg.length()<=7){
g.drawString(priseMsg,260,100);
}else{
g.drawString(priseMsg.substring(0,5),260,100);
g.drawString(priseMsg.substring(5),260,120);
}
}
if(iserr==true){
g.drawString(mesg,260,100);
}
}
publicvoidgetLucky(){
floatfiru=1;
floatsecu=1;
floatthiu=1;
floatfouu=1;
floatminu=1;
if(gaiLv[0].getText().trim().length()>1){
firu=Float.parseFloat(gaiLv[0].getText());
if(firu<=0||firu>=1){
iserr=true;
return;
}
if(firu
minu=firu;
}
}
if(gaiLv[1].getText().trim().length()>1){
secu=Float.parseFloat(gaiLv[1].getText());
if(secu<=0||secu>=1){
iserr=true;
return;
}
if(secu
minu=secu;
}
}
if(gaiLv[2].getText().trim().length()>1){
thiu=Float.parseFloat(gaiLv[2].getText());
if(thiu<=0||thiu>=1){
iserr=true;
return;
}
if(thiu
minu=thiu;
}
}
if(gaiLv[3].getText().trim().length()>1){
fouu=Float.parseFloat(gaiLv[3].getText());
if(fouu<=0||fouu>=1){
iserr=true;
return;
}
if(fouu
minu=fouu;
}
}
if(minu>=1||minu<=0){
iserr=true;
return;
}
floataNum=1/minu;
maxNum=(int)aNum;
intcount=(int)(firu/minu);
if(firu!=1){
fist=getLotteryVec(maxNum,count);
}else{
fist.removeAllElements();
}
count=(int)(secu/minu);
if(secu!=1){
sec=getLotteryVec(maxNum,count);
}else{
sec.removeAllElements();
}
count=(int)(thiu/minu);
if(thiu!=1){
third=getLotteryVec(maxNum,count);
}else{
third.removeAllElements();
}
count=(int)(fouu/minu);
if(fouu!=1){
lucky=getLotteryVec(maxNum,count);
}else{
lucky.removeAllElements();
}
issetup=true;
iserr=false;
}
protectedVector
Vector
for(inti=0;i
result.add(ran.nextInt(maxNum));
}
returnresult;
}
protectedintgetaNum(){
returnran.nextInt(maxNum);
}
publicintisLucky(intpNum){
for(inti=0;i
if(fist.get(i)==pNum){
return1;
}
}
for(inti=0;i
if(sec.get(i)==pNum){
return2;
}
}
for(inti=0;i
if(third.get(i)==pNum){
return3;
}
}
for(inti=0;i
if(lucky.get(i)==pNum){
return4;
}
}
return-1;
}
publicvoidButtonActionPerformed(ActionEvente){
StringacName=e.getActionCommand();
if(acName.equals("抽奖")){
if(issetup==false){
priseMsg="请先设置参数!";
lot=true;
repaint();
lot=false;
return;
}
lot=true;
priseMsg=getResult(getaNum());
repaint();
//lot=false;
}elseif(acName.equals("退出")){
this.setVisible(false);
this.stop();
this.destroy();
System.exit(0);
}elseif(acName.equals("确认设置")){
lot=false;
getLucky();
repaint();
}
}
publicStringgetResult(intnum){
intresu=isLucky(num);
Stringresult="";
switch(resu){
case-1:
result="继续努力!";
break;
case1:
result="恭喜你!一等奖!\n获得"+jiangPin[0].getText();
break;
case2:
result="恭喜你!二等奖!\n获得"+jiangPin[1].getText();
break;
case3:
result="恭喜你!三等奖!\n获得"+jiangPin[2].getText();
break;
case4:
result="恭喜你!幸运奖!\n获得"+jiangPin[3].getText();
break;
default:
result="继续努力!";
}
returnresult+num;
}
}
classLotButtonActionimplementsjava.awt.event.ActionListener{
Lotterysu;
publicLotButtonAction(Lotterybun){
this.su=bun;
}
@Override
publicvoidactionPerformed(ActionEvente){
su.ButtonActionPerformed(e);
}
}
相关文章
- 详细阅读
-
MATLAB抽样编程详细阅读
matlab 音频采样怎么实现 高手进在进行通讯和DSP等试验过程中,信号源是不可缺少的一个工具,很多设备是使用信号源来模拟检测实际目标,来验证设备的功能及可靠性。通常,对于研制
- 详细阅读
-
怎样用VAB编程,实现按键保存功能详细阅读
excel如何制作一个vba按钮,点一下之后让sheet1里面的部份数据,自动保存到sheet2里面?如果菜单栏没有“开发工具”选项卡,右击上方菜单栏空白处——自定义功能区,选中“开发工具”
-
编程问题求五边形面积详细阅读
编程根据五边形五个顶点的坐标计算五边形面积,请用C++面向程序设计,并且是函数做的五个顶点依次是1,2,3,4,5 三角形123三边12,23,13为a,b,c则s=(a+b+c)/2,面积S=根号下(s(s-a)(s
-
用c语言编程代码详细阅读
求简单C语言程序代码!输入2个正整数m和n,求其最大公约数和最小公倍数#include#includeint main()int m,n,p,q,s,r;printf("请输入两个正整数;m,n\n");scanf("%d,%d",&m,&n);#in
-
JavaSocket如何在广域网传信息详细阅读
基于Socket的通信,如何实现广域网的通信?对于 TCP 来说局域网和广域网不是一样嘛。 只要给个 IP 地址就行了。至于如何连接到那机器,那是路由器管理与配置的问题,跟我们编程没什
-
我的世界minecraft java版计分板计详细阅读
我的世界怎样生成计分板?计分板的指令是/scoreboard,有两个分支,分别是objectives(项目)和players(玩家,队伍),而它们又有许多分支,小编先给大家讲一下objectives。 objectives分为add
-
c++编程问题详细阅读
c语言编程问题#include #include
struct student {int num;char name[20];float score[4];};
void input(struct student a[], int);
void aver(struct student a[], int,s -
用C语言编程实现,任意输入年,输出该详细阅读
c语言设计万年历 输入任意年份,输出该年12个月份 输入任意年份月份,输出该年月日历程序直接输入年份和月份,打印对应日历。一年12个月是固定的,我就不写单独输入年份打印月份了