游戏开发论坛

 找回密码
 立即注册
搜索
查看: 11045|回复: 28

[讨论] 求答案!

[复制链接]

1

主题

4

帖子

13

积分

新手上路

Rank: 1

积分
13
发表于 2011-4-25 14:42:00 | 显示全部楼层 |阅读模式
假定玩家对怪物的每次攻击伤害为1,每次攻击的命中几率是75%,怪物的生命值为10,描述如何利用EXCEL模拟1000次玩家战斗,得出每次杀死怪物所需攻击次数,并且求出按照这1000次试验的结果,估算平均需要多少次攻击才能杀死怪物。
本人略懂VBA,求各位前辈详解,小的不甚感激!!拜谢! [em19]

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
发表于 2011-4-25 15:15:00 | 显示全部楼层

Re:求答案!

难点在于“利用EXCEL模拟”。

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
发表于 2011-4-25 17:03:00 | 显示全部楼层

Re: Re:求答案!

121919950: Re:求答案!

打开excel
输入10/0.75
按回车

利用EXCEL“模拟” 和 利用EXCEL“计算” 是 两回事。

0

主题

38

帖子

124

积分

注册会员

Rank: 2

积分
124
发表于 2011-4-26 01:03:00 | 显示全部楼层

Re:求答案!

答案确实是:10/(0.75*1)

vba嘛:写个宏就行了....一个rand();判定如果rand()>0.75,返回0,小于就返回1...每次的结果累加满10跳出循环,外面的这个大循环次数1000...

懂VBA的话这个应该不成问题...太晚了,睡了,,不然写出来给你...

1

主题

110

帖子

110

积分

注册会员

Rank: 2

积分
110
发表于 2011-4-26 09:22:00 | 显示全部楼层

Re:求答案!

。。。样本空间远远大于数值浮动空间,还有什么好模拟的?

模拟结果就是正确答案,也就是楼上几位的10/0.75

11

主题

162

帖子

164

积分

注册会员

Rank: 2

积分
164
发表于 2011-4-26 13:41:00 | 显示全部楼层

Re:求答案!

楼主如果是要求答案,那就是10/0.75。
如果是要求用Excel模拟的方法就是5楼的方法。

27

主题

678

帖子

709

积分

高级会员

Rank: 4

积分
709
发表于 2011-5-3 21:04:00 | 显示全部楼层

Re:求答案!

你的题目信息很不完全,你要的1000次战斗要包含什么结果?如果只是模拟1000次的75%命中的话,一个随机函数就搞定的事情,如果你要计算结果,那么久是LS说的那个公式计算了
当然你要模拟,玩家消耗、各种类型打击判定、刷怪机制等等,你给的信息就太少了

42

主题

574

帖子

0

积分

禁止发言

积分
0
发表于 2011-5-4 15:19:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

2

主题

8

帖子

8

积分

新手上路

Rank: 1

积分
8
QQ
发表于 2011-5-12 01:59:00 | 显示全部楼层

Re:求答案!

正确答案不就是10/0.75吗? 9楼用的随即函数不是一样每次F9重新计算  最终结果就就在10/0.75上下浮动。  自己没事建个没意义的Excel累人!。

15

主题

207

帖子

283

积分

中级会员

Rank: 3Rank: 3

积分
283
发表于 2011-5-16 10:29:00 | 显示全部楼层

Re:求答案!

这个问题的本意明显是 考察excel能力的

说excel模拟无用的人,如果把玩家的攻击伤害不再是1,而是1-3之间的随机整数值(也就是1/3概率分别取到1,2,3),你们能算出平均需要的次数吗?

遇到这种问题时,最简单的办法就是模拟,理论计算,大部分人都算不出来的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-8-24 18:59

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表