Project1

标题: 产生不重复随即数代码 [打印本页]

作者: awyb3110    时间: 2012-2-15 14:52
标题: 产生不重复随即数代码
本帖最后由 精灵使者 于 2012-2-17 19:53 编辑
  1. # 可以是数字  也可是数组y = ["hhh","ggg","jjj"]  or y = [*2..4]  #2到4的随即数
  2.    # he 表示输出相连的字符串。。。
  3.   def 无重复随即数(x = 3 ,y = 10,he = false)
  4.        h = []            #记录数字
  5.       if y.class == Fixnum
  6.         while h.size != x
  7.           h << rand(y)
  8.           h.uniq!
  9.         end  
  10.        else
  11.           while h.size != x
  12.              h << y[rand(y.size)]
  13.              h.uniq!
  14.           end  
  15.         end
  16.         if he
  17.             w = ""
  18.             for i in 0 ... h.size
  19.              w += h[i].to_s
  20.            end
  21.             return w
  22.           else
  23.             return h
  24.           end
  25.          
  26.   end
复制代码

作者: orzfly    时间: 2012-2-15 16:07
本帖最后由 orzfly 于 2012-2-15 16:10 编辑
  1. def orz(x=3,y=10,he=false)
  2.   sand=y.is_a?(Fixnum) ? (1..y).to_a : y
  3.   out=sand.sort_by{rand}[1..x]
  4.   he ? out.join "" : out
  5. end
复制代码
@忧雪の伤




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1