设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2439|回复: 6
打印 上一主题 下一主题

[已经解决] 数组的一个问题

[复制链接]

Lv2.观梦者

梦石
0
星屑
575
在线时间
1752 小时
注册时间
2008-11-7
帖子
1431
跳转到指定楼层
1
发表于 2015-9-4 15:40:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 z2z4 于 2015-9-4 17:05 编辑

就是这个属性数组

for i in 1..8

  i 在循环 8次的时候  这个 a 的属性 如何 让他 随机数值
比如 [1,2,3,5,6,7,4,5]  这8个数值 如何 让他随机 我弄了半天都不行

   for a in rand(5)  这样写 好像不行  有高人 可以指点吗

    params = [a] * i

  end
end


难不成 只有这样写?

     e = rand(20)   f = rand(30)
      
     a = [e,f,3,4,5,6,7,8].shuffle
RPG魔塔:http://rpg.blue/thread-254429-1-1.html
魔塔2:http://rpg.blue/thread-303601-1-1.html
魔塔3: 制作中...MV

Lv3.寻梦者

梦石
0
星屑
1244
在线时间
898 小时
注册时间
2014-12-4
帖子
379
2
发表于 2015-9-4 16:05:22 | 只看该作者
本帖最后由 翻滚牛宝宝 于 2015-9-4 16:38 编辑

这样就可以了……
RUBY 代码复制
  1. a=[1,2,3,4,5,6,7,8].shuffle
  2. for i in 1..8
  3.   b=a[i]
  4. p b
  5. end

shuffle是打乱数组内顺序 你把数组顺序打乱了 再按顺序读取就是随机了
你要是想要8个数的话 a.shuffle 就是了

点评

没看懂你写的什么鬼……  发表于 2015-9-4 17:06
e = rand(20) a = [e,2,3,4,5,6,7,8].shuffle 难不成 要这样写 才可以?  发表于 2015-9-4 17:05
a = [1,2,3,4,5,6,7,8].shuffle 我如何 在这个里面 增大数字 不知道怎么用变量加  发表于 2015-9-4 16:50
a.shuffle 这个可以是可以 数字的范围太小了  发表于 2015-9-4 16:48
这个 不是装备上的属性 格式 你这样写 肯定会出错的 属性有8位数字的  发表于 2015-9-4 16:40
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21656
在线时间
9416 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

3
发表于 2015-9-4 16:17:06 | 只看该作者
直接rand呗
  1. for i in 1..8
  2.     a = rand(8) + 1
  3.     p a
  4. end
复制代码

点评

没用 8个数值 全是一致的 没法 截图  发表于 2015-9-4 16:20
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1244
在线时间
898 小时
注册时间
2014-12-4
帖子
379
4
发表于 2015-9-4 16:55:03 | 只看该作者
翻滚牛宝宝 发表于 2015-9-4 16:05
这样就可以了……a=[1,2,3,4,5,6,7,8].shuffle
for i in 1..8
  b=a

你搜一下数组 就知道怎么用了

点评

我自己 已经想出另外一个 方法了 搞定  发表于 2015-9-4 17:22
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1244
在线时间
898 小时
注册时间
2014-12-4
帖子
379
5
发表于 2015-9-4 17:28:37 | 只看该作者
不用e f 直接rand(20 ) rand(30)
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

无限の剣制

梦石
0
星屑
10074
在线时间
5020 小时
注册时间
2013-2-28
帖子
5030

开拓者贵宾

6
发表于 2015-9-4 17:37:13 | 只看该作者
本帖最后由 VIPArcher 于 2015-9-4 17:38 编辑


http://tieba.github.io/common/howtoask.html
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
48
在线时间
784 小时
注册时间
2013-1-4
帖子
1102
7
发表于 2015-9-4 18:43:06 | 只看该作者
本帖最后由 墨凌羽 于 2015-9-4 12:48 编辑
喵呜喵5 发表于 2015-9-4 10:17
直接rand呗


@楼主 3楼错哪里了来来来我们谈谈
一下是将3楼代码运行1000次后的输出结果。我对生成的1~8的每个数字出现的次数做了统计,结果如下
统计:
1出现次数:7933
2出现次数:8010
3出现次数:8070
4出现次数:8010
5出现次数:8041
6出现次数:7939
7出现次数:7813
8出现次数:8184

可以看出每个数字出现的次数很均匀。完全符合随机的要求
虽然说8个数字为同一个的概率只有(1/8)^8这么小 但偏偏被你撞上也不能怪谁。俗话说点背不能怪社会不是?就这样认为3楼脚本有问题是不是太过不厚道?

竟然说我家喵呜喵5的脚本有问题 分分钟打脸!

测试结果文件: test.rar (288.15 KB, 下载次数: 37) 【将后缀改成txt再打开】

测试代码
RUBY 代码复制
  1. File.open("test.txt","w") do |f|
  2.   table = []
  3.   #随机1000*8次
  4.   1000.times do |x|
  5.     list = []
  6.     for i in 1..8
  7.       list.push(rand(8) + 1)
  8.     end
  9.     f.write("第#{x+1}次:#{list}\n")
  10.     table.push(list)
  11.   end
  12.   #统计各个数字出现次数
  13.   count = [0,0,0,0,0,0,0,0,0]
  14.   table.each do |i|
  15.     i.each do |n|
  16.       case n
  17.       when 1
  18.         count[1] += 1
  19.       when 2
  20.         count[2] += 1
  21.       when 3
  22.         count[3] += 1
  23.       when 4
  24.         count[4] += 1
  25.       when 5
  26.         count[5] += 1
  27.       when 6
  28.         count[6] += 1
  29.       when 7
  30.         count[7] += 1
  31.       when 8
  32.         count[8] += 1
  33.       end
  34.     end
  35.     count[0] += 8
  36.   end
  37.   p count[0],count[1]/count[0]
  38.   f.write("统计:\n")
  39.   f.write("1出现次数:#{count[1]}\n")
  40.   f.write("2出现次数:#{count[2]}\n")
  41.   f.write("3出现次数:#{count[3]}\n")
  42.   f.write("4出现次数:#{count[4]}\n")
  43.   f.write("5出现次数:#{count[5]}\n")
  44.   f.write("6出现次数:#{count[6]}\n")
  45.   f.write("7出现次数:#{count[7]}\n")
  46.   f.write("8出现次数:#{count[8]}\n")
  47. end

点评

你够了,他要的是shuffle  发表于 2015-9-4 23:08
RM-GUI延期。。。最近被黑心老板压迫T_T
二次元少女的shitake,长着长脸,身高165,蓝色卷双马尾,FCUP,瞳色黑色,病气和御宅属性,是天才少女。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-20 12:27

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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