投资pk游戏
时间:2021-08-05 来源:博通范文网 本文已影响 人
投资 pk 活动策划 活动主标题:终极对垒 活动副标题:投资 pk 百万元大奖等你抢!
活动目的:为了提升平台投资总额
活动时间:11.19—11.25 活动平台:官网
微信 wap 站
九斗鱼 APP 活动内容:
活动期间统计并展示每日投资总额排行前三的用户,展示内容包括:排名、用户名(只展示前两位和后两位,隐藏中间 7 位)、当天投资总额、预计奖励;统计并展示自活动第一日 0点 0 分 0 秒开始至当前时间投资总额排行前十的用户,展示内容包括:排名、用户名(只展示前两位和后两位,隐藏中间 7 位)、累计投资总金额、预计奖励。
奖项设置:
1.每日排行榜前三名奖励:
第一名:科沃斯地宝魔镜 ECO CR120 扫地机器人 999 元; 第二名:Kindle 电子书阅读器(入门版)699 元; 第三名:璐瑶 ZD7L-LY521A 足浴盆 399 元 2.活动期间累计排行榜前十名奖励:
第一名:苹果 6s(64g)6088 元 第二名:索尼 ILCE-6000L 3799 元 第三名:小米九号平衡车 1999 元 第四名到第十名:小米空气净化器 899 元
成本核算(活动时间为 7 天):
活动奖品费用:
32858
活动规则:
1.活动时间:活动期间内九斗鱼平台新老用户均可参与本次活动 2.仅限投资平台九省心、耀盛信贷(包含鱼小贷、鱼小房)、耀盛保理(包含鱼小保)三种项目参与活动,使用体验金投资不参与本次活动,购买 债权转让的项目不参与本次活动 3.每日投资排行榜计算时间为当日 0 点 0 分 0 秒至当日 23 点 59 分 59 秒,最终排名将在第二日 0 点 10 分公布;累计投资排行榜计算时间为 11 月 19 日 0 点 0 分 0 秒至 11 月 25 日 23点 59 分 59 秒,最终排名将在 11 月 26 日 0 点 10 分公布; 4.若多名用户出现投资总额相同的情况,则按照系统记录的完成该投资总额的时间先后顺序进行排名; 5.活动结束 15 个工作日内九斗鱼客服会联系中奖用户确定奖金发放事宜; 6.奖品以账户加币形式发送; 7.本次活动最终解释权归九斗鱼平台所有。
课程设计(大作业)报告
课程名称:算法设计与分析设计题目:姓名挑战游戏院 系:班 级:设 计 者:学 号:指导教师:设计时间:
目 录
1、课程设计目的 ............................................................................................................................1
2、课程设计题目分析 ....................................................................................................................1
3、课程设计要求 ............................................................................................................................1
4、总体设计、算法描述 ................................................................................................................1
4.1主方法分析........................................................................................................................1 4.2总体分析 ...........................................................................................................................2 4.4游戏细节设计....................................................................................................................3
4.4.1攻击招式统计........................................................................................................3 4.4.2治疗方法................................................................................................................3 4.4.3不明原因................................................................................................................3
5、实验总结 ....................................................................................................................................3
6、参考文献 .....................................................................................................................................4 附录 ..................................................................................................................................................4 运行结果:.....................................................................................................................................11
1、课程设计目的
课程设计是巩固所学理论知识、提高算法设计、分析能力的重要实践环节。算法设计与分析,主要目的是为解决某一问题而提出多种不同的解决方案,并且针对具体问题做细致的时间和空间复杂度分析,选取效率高的算法解决问题,从而达到优化的目的。
通过课程设计的训练,使我们能够巩固所学的算法分析基础理论知识,体会程序设计的全过程,培养我们处理数据的能力,提高我们分析问题、收集资料、解决问题的能力,最终培养理论联系实际,利用各种算法解决实际问题的应用能力。同时可以检测我们对这门课程的掌握情况,有助于查缺补漏。
2、课程设计题目分析
这次课程设计以JAVA语言为基础结合其图形应用界面来设计一个姓名挑战游戏,设计出的游戏有图形化界面,且界面简洁适用;在游戏界面中,输入两个姓名分别作为挑战者和被挑战者,随机产生属性值(战力指数,攻击力,防御力),当HP大于0时,两个名字进行对战,进行多轮攻击挑战后,用hp值决定双方输赢,hp值为0的一方战败,另一方则获胜,达到休闲益智的目的。
3、课程设计要求
程序设计以Java完成,配有图形界面。从分析题目的需求入手,按设计抽象数据类型、构思算法、通过类的设计实现抽象数据类型、编制上机程序代码并调试的步骤完成题目,最终写出完整的分析报告。最后提交作业包括:课程设计报告;完整程序,应该具有可显示界面;PPT及算法说明。
4、总体设计、算法描述
设计思路:为实现游戏的基本功能,必须首先定义一个工具面板,将各模块加入到工具面板中。
程序中用到的包如下:import java.awt.*;import java.awt.event.*; 程序中的类有:
cla Game extends Frame implements ActionListener,cla NPCC,cla text。
4.1主方法分析
public cla text /*建立一个公共类text */
1 { public static void main(String ars[]) {
new Game("姓名挑战游戏"); } } 此部分为主方法部分,在本游戏中主函数主要起连接和导入的作用,对相应的方法进行说明、调用。 4.2总体分析
在Game框架中添加组件(Label,TextField,Button,Panel,TextArea,Menu)并布局管理器,使用的是BorderLayout管理器。 通过 ActionListener定义一个actionPerformed()方法。
创建一个shuxing()函数,随机产生HP,gongji,fangyu的初始值,对挑战者与被挑战者的属性进行随机处理映射到相应的攻击和反应,不断更新二者的属性值并获取。直到一方hp为0,挑战结束并输出挑战结果及双方最后属性值。
4.3使用到的方法
actionPerformed()方法:在事件分派awt线程中被调用; Thread.Start()方法:创建一个线程,使用Thread类创建线程; add():添加组件到框架中; damage(int gongji):嵌套调用; setBounds(x,y,width,height); x:组件在容器X轴上的起点 y:组件在容器Y轴上的起点; width:组件的宽度 height:组件的高度; shuxing():设置属性值; super():调用父类(Frame)构造函数,s为传入的参数,也就是调用了父类 public ; Frame(String s){ ...}构造函数get():读取数据;
2 set():设置属性; Random():随机数字产生方法; 游戏细节设计
4.4游戏细节设计
4.4.1攻击招式统计
1、不小心踩到香蕉皮,摔了一跤
2、中了情花剧毒
3、背部受到九阴白骨爪的伤害
4、手臂被射了一箭,中了七日贱骨头剧毒
5、过马路不小心撞到车了
6、身上被撒了痒痒粉,全身奇痒无比 4.4.2治疗方法
1、吃了一株断肠草,生命增加100
2、请求李时珍医治,生命增加300
3、擦了华佗送的999牌皮炎平,生命增加800
4.4.3不明原因
可能是皮炎平药效失效了,奇痒发作
5、实验总结
算法分析是一门面向设计,且理论性很强的科目。基于对本门课程的学习,将算法思想灵活运用到设计中来,解决实际问题。我们组设计的是:姓名挑战游戏,由于个人能力有限,编写的代码有一些问题,经过小组讨论,作了一定的改进,这说明我们在编程方面存在很多不足,有待于在以后的学习中不断提高和改进。通过用JAVA编写程序,掌握设计的算法和基本思想,加强了我调试程序的能力,培养了分析、解决问题的能力,提高自己的认识。
在老师的耐心指导和帮助下,我完成了这次课程设计,虽然要改进的地方还
3 有很多,对算法分析中的思想和原理理解的不够透彻,未能有效地与本次设计结合达到创新的目的。但也获得了小小的收获,我锻炼了实际动手能力,拓展了课外知识,积极运用图书馆、网络资源为设计服务。熟悉并灵活运用Editplus软件来编译程序,同时也培养了细心、耐心、虚心的学习态度,并积极与老师、同学进行沟通交流,增加了小组间的凝聚力。本着对自己负责的态度,认真对待本次设计。希望在以后的学习中,我能更好地将理论知识与实践相结合,学会学以致用,学有所用,完善自我,提高自身综合能力。
6、参考文献
[1]《算法设计与分析》王晓东,清华大学出版社。 [2]《java编程》张丹丹,人民邮电出版社。
附录
import java.awt.*; import java.awt.event.*; cla Game extends Frame implements ActionListener { Label l1,l2,label0,label1,label2,label3,label4,label5,label6,label7; TextField text1,text2,text3,text4,text5,text6; Button button,button1,button2; Panel p1,p2,p3,p4; TextArea area; Menu menu; MenuBar menubar; MenuItem item1,item2; int HP,gongji,fangyv; int count1=0,count2=0,count3=0,count4=0; Thread thread1; Game(String s) {
super(s);
thread1=new Thread();
label0=new Label("初始血量在2000-3000之间随机产生!");
l1=new Label("姓名1",Label.CENTER);
l2=new Label("姓名2",Label.CENTER);
label1=new Label("姓名1",Label.CENTER);
label2=new Label("姓名2",Label.CENTER);
label3=new Label("属性1",Label.CENTER);
label4=new Label("属性2",Label.CENTER);
label5=new Label("PK状态",Label.CENTER);
label6=new Label("得到治疗的次数:"+count1+"
受到攻击的次数:"+count2);
label7=new Label("得到治疗的次数:"+count3+"
受到攻击的次数:"+count4);
p1=new Panel();
p2=new Panel();
p3=new Panel();
p4=new Panel();
area=new TextArea(10,30);
text1=new TextField(5);
text2=new TextField(5);
text3=new TextField(34);
text4=new TextField(34);
text5=new TextField(27);
text6=new TextField(27);
button=new Button("确定");
button1=new Button("重新输入");
button2=new Button("退出");
thread1.start();
add(p1,BorderLayout.NORTH);
add(p2,BorderLayout.CENTER);
p1.add(label0);
p2.add(label1);
p2.add(text1);
p2.add(button);
p2.add(label2);
p2.add(text2);
p2.add(label3);
p2.add(text3);
p2.add(label4);
p2.add(text4);
p2.add(label5);
p2.add(p3);
p2.add(label6);
p2.add(p4);
p2.add(label7);
p2.add(area);
p2.add(button1);
p2.add(button2);
p3.add(l1); p3.add(text5); p4.add(l2); p4.add(text6); l1.setLocation(0, 0); text5.setLocation(20,0); area.setEditable(false); text3.setEditable(false); text4.setEditable(false); text5.setEditable(false); text6.setEditable(false); button.setBackground(Color.LIGHT_GRAY); button1.setBackground(Color.LIGHT_GRAY); button2.setBackground(Color.LIGHT_GRAY); label0.setBackground(Color.orange); label3.setBackground(Color.cyan); label4.setBackground(Color.cyan); label5.setBackground(Color.cyan); button.addActionListener(this); button1.addActionListener(this); button2.addActionListener(this); menu=new Menu("菜单"); item1=new MenuItem("打开"); item2=new MenuItem("退出"); p2.setBackground(Color.green); p1.setBackground(Color.blue); menubar=new MenuBar(); menu.add(item1); menu.addSeparator(); menu.add(item2); menubar.add(menu); setMenuBar(menubar); item2.addActionListener(this); area.setBackground(Color.yellow); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) {
System.exit(0); } }); setBounds(500,100,285,590); setResizable(false);//设置窗口不可调整大小 setVisible(true);
validate(); } public void actionPerformed(ActionEvent e) {
if(e.getSource()==item2 ||e.getSource()==button2)
System.exit(0);
else if(e.getSource()==button)
{
String name1=text1.getText();
String name2=text2.getText();
NPCC npc1=new NPCC(name1);
NPCC npc2=new NPCC(name2);
npc1.shuxing();
npc2.shuxing();
l1.setText(name1);
l2.setText(name2);
int h1,h2;
h1=npc1.HP;
h2=npc2.HP;
text3.setText(name1+"的属性: 战力指数:"+npc1.HP+" 攻击:"+npc1.gongji+" 防御:"+npc1.fangyv);
text4.setText(name2+"的属性: 战力指数:"+npc2.HP+" 攻击:"+npc2.gongji+" 防御:"+npc2.fangyv);
int i=0;
while(npc1.HP>0 && npc2.HP>0)
{
if (i%2==0)
{
String s1=npc1.damage(npc2.gongji);
if(npc1.HPP!=0)
{
count1++;
}
else
{
count2++;
}
label6.setText("得到治疗的次数:"+count1+"
受到攻击的次数:"+count2);
String s=s1;
npc1.HP=npc1.HP+npc1.HPP+npc1.fangyv-npc1.hurt;
if(npc1.HP>h1)
{
area.append(name1+s+\\"\\\\n\\");
text5.setText(name1+s);
try
{
thread1.sleep(1000);
}
catch(InterruptedException ee){}
npc1.HP=h1;
s1="血量已达最大值!!";
}
if(npc1.HP
{
npc1.HP=0;
}
text3.setText(name1+":战力指数:"+npc1.HP+" 攻击:"+npc1.gongji+" 防御:"+npc1.fangyv);
text5.setText(name1+s1);
area.append(name1+s1+\\"\\\\n\\");
area.append(name1+"剩余生命值:"+npc1.HP+\\"\\\\n\\");
}
else
{
String s2=npc2.damage(npc1.gongji);
if(npc2.HPP!=0)
{
count3++;
}
else
{
count4++;
}
label7.setText("得到治疗的次数:"+count3+"
受到攻击的次数:"+count4);
String s=s2;
npc2.HP=npc2.HP+npc2.HPP+npc2.fangyv-npc2.hurt;
if(npc2.HP>h2)
{
text6.setText(name2+s);
area.append(name2+s+\\"\\\\n\\");
try
{
thread1.sleep(1000);
}
catch(InterruptedException ee){}
npc2.HP=h2;
s2="血量已达最大值!!";
}
if(npc2.HP
{
npc2.HP=0;
}
text4.setText(name2+":战力指数:"+npc2.HP+" 攻击:"+npc2.gongji+" 防御:"+npc2.fangyv);
text6.setText(name2+s2);
area.append(name2+s2+\\"\\\\n\\");
area.append(name2+"剩余生命值:"+npc2.HP+\\"\\\\n\\");
}
try
{
thread1.sleep(1000);
}
catch(InterruptedException ee){}
i++;
}
if(npc1.HP
{
text5.setText("哎呀妈呀,我太虚弱了!认输啦\\\\n");
text6.setText("嘎嘎嘎,我太厉害啦!"+name1+",翘翘了。。。\\\\n");
area.append(name1+"被"+name2+"打败了\\\\n");
}
else if(npc2.HP
{
text5.setText("嘎嘎嘎,我太厉害啦!"+name2+",翘翘啦。。。\\\\n");
text6.setText("哎呀妈呀,我太虚弱了!认输啦\\\\n\\\\n");
area.append(name2+" 被"+name1+" 打败了\\\\n");
}
}
else if(e.getSource()==button1)
{
text1.setText(null);
text2.setText(null);
text3.setText(null);
text4.setText(null);
text5.setText(null);
text6.setText(null);
area.setText(null);
label6.setText("得到治疗的次数:"+0+"
受到攻击的次数:"+0);
label7.setText("得到治疗的次数:"+0+"
受到攻击的次数:"+0);
l1.setText("姓名1");
l2.setText("姓名2");
} } } cla NPCC { String name,s; int HP,gongji,fangyv; int HPP=0; int hurt=0; NPCC(String name) {
this.name=name; } public void shuxing() {
HP=(int)(Math.random()*1000)+2000;
gongji=(int)(Math.random()*150)+80;
fangyv=(int)(Math.random()*30)+50; } public String damage(int gongji) {
int a=(int)(Math.random()*10);
switch(a)
{
case 1:
s="不小心踩到香蕉皮,摔了一跤";
hurt=gongji;
HPP=0;
break;
case 2:
s="中了情花剧毒";
hurt=gongji*2;
HPP=0;
break;
case 3:
s="吃了一株断肠草,生命增加100";
HPP=HPP+100;
hurt=0;
break;
case 4:
s="背部受到九阴白骨爪的伤害";
hurt=gongji*3;
HPP=0;
break;
case 5:
s="请求李时珍医治,生命增加300";
HPP=HPP+300;
hurt=0;
break;
case 6:
s="手臂被射了一箭,中了七日贱骨头剧毒";
hurt=gongji*4;
HPP=0;
break;
case 7:
s="过马路不小心撞到车了";
hurt=gongji*5;
HPP=0;
break;
case 8:
s="身上被撒了痒痒粉,全身奇痒无比";
hurt=gongji*6;
HPP=0;
break;
case 9:
s="擦了华佗送的999牌皮炎平,生命增加800";
HPP=HPP+800;
hurt=0;
break;
default:
s="可能是皮炎平药效失效了,奇痒发作";
break;
}
return s; } } public cla text { public static void main(String ars[]) {
new Game("姓名挑战游戏"); } } 运行结果:
十分连贯的文章,很喜欢啊!
作者的水准的确很高。