Tag: 随机

如何在C中生成一个随机数?

有一个函数可以在C中生成一个随机数吗? 或者我将不得不使用第三方库?

我如何从数组中随机select?

我想知道是否有更干净的方法来做到这一点。 基本上,我想从一个可变长度的数组中随机select一个元素。 通常情况下,我会这样做: myArray = ["stuff", "widget", "ruby", "goodies", "java", "emerald", "etc" ] item = myArray[rand(myarray.length)] 是否有更可读/更简单的replace第二行? 或者,这是最好的办法。 我想你可以做myArray.shuffle.first ,但是我只在几分钟前看过#shuffle ,所以我还没有真正使用它。

如何在Ruby中获得一个随机数字

我如何生成0到n之间的随机数字?

为什么这个使用随机string的代码打印“hello world”?

下面的打印语句将打印“你好世界”。 有谁能解释这个吗? System.out.println(randomString(-229985452) + " " + randomString(-147909649)); 和randomString()看起来像这样: public static String randomString(int i) { Random ran = new Random(i); StringBuilder sb = new StringBuilder(); while (true) { int k = ran.nextInt(27); if (k == 0) break; sb.append((char)('`' + k)); } return sb.toString(); }

你如何创build一个适合于PostgreSQL中的会话ID的随机string?

我想使用PostgreSQL在会话validation中使用一个随机string。 我知道我可以得到一个随机数与SELECT random() ,所以我尝试了SELECT md5(random()) ,但是这是行不通的。 我该怎么做?

随机几乎是随机的?

我做了这个来testingrandint的随机性: >>> from random import randint >>> >>> uniques = [] >>> for i in range(4500): # You can see I was optimistic. … x = randint(500, 5000) … if x in uniques: … raise Exception('We duped %d at iteration number %d' % (x, i)) … uniques.append(x) … Traceback (most recent call last): File "<stdin>", […]

需要可预测的随机生成器

我是一个networking游戏开发者,我遇到了一个随机数的问题。 假设一名玩家有20%的几率用他的剑命中。 这意味着,五分之一的命中应该是至关重要的。 问题是我得到了非常糟糕的现实生活中的结果 – 有时玩家会在5次命中中得到3次暴击,有时候15次都没有。 战斗时间相当短(3-10次),所以获得良好的随机分配很重要。 目前我使用PHP mt_rand() ,但是我们只是把我们的代码移到C ++中,所以我想在我们游戏的新引擎中解决这个问题。 我不知道解决scheme是一些统一的随机生成器,或者也许记住以前的随机状态来强制适当的分配。

从NSArray中获取一个随机对象而不重复

我有一个17个对象的NSArray ,像这样: NSArray *objArray = [[NSArray alloc]initWithObjects: @"1",@"2",@"3",@"4",@"5",@"6" ,@"7",@"8",@"9",@"10",@"11",@"12",@"13",@"14",@"15",@"16",@"17", nil]; 和一个随机数如下的int : int random = arc4random()%17+1; 我想从这个NSArray得到一个随机对象,即使我closures了应用程序(也许通过使用NSUserDefaults ),而不会重复。 如果我已经得到所有的对象,我想为同一个对象生成一个新的随机序列。

不重复的随机数字

作为我的项目的一部分,我需要通过给出一组数字来创build不重复的2或3位数的随机数。 我不想实现一个列表或数组,因为我应该为每个函数调用得到一个随机数。 我试图用Java的SecureRandom类来做到这一点。 我也得到了一些网站的帮助,但是我陷入了困境,我们可以洗牌VALUES并完成它吗? 但我不知道如何做到这一点。 任何人都可以帮我吗? import java.security.SecureRandom; public class RandomNumber { private static final RandomNumber rnd= new RandomNumber(); private static final char[] VALUES = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}; private static final SecureRandom srn= new SecureRandom(); public String createID() { byte[] bytes = new byte[3]; srn.nextBytes(bytes); […]

为什么每次编译和运行时都会得到与rand()相同的结果?

每当我运行这个代码,我得到一个相同的结果。 程序 #include<stdlib.h> int main(int agrc, const char *argv[]) { int i = rand(); printf("%d\n",i); for(i=0;i<10;i++) { printf("%d\n",rand()); } } 结果: 41 18467 6334 26500 19169 15724 11478 29358 26962 24464 5705 我把这个放在了mingw 其实我正在学习Objective-C 请帮帮我。