以1到100为固定区间
生成两个数 尽量不用递归
inspired by @finallygo
$range = range(1,100);
1,
shuffle($range); $first = $range[0]; $second = $range[1];
2,
list($first, $second) = array_rand($range,2); //array_rand return index which starts from 0 $first++; $second++;
php语法不懂, 不过可以先生成两个随机数,两个相减作为第一个数, 相加作为第二个数
楼主应该是系统用php实现吧(以下代码需要在php 5.3以上版本支持)
1 <?php 2 $a = new SplDoublyLinkedList(); 3 for($i=1;$i<=100;$i++) { 4 $a->push($i); 5 } 6 $fetch_size = 2; 7 for($j=0;$j<$fetch_size;$j++) { 8 $index = rand() % count($a); 9 echo 'rand(' . $j . '):' . $a->offsetGet($index) . "\n"; $a->offsetUnset($index); 10 } 11 ?>
Random rnd = new Random(); int a, b; a = rnd.Next(100) + 1; b = rnd.Next(99) + 1; if (a == b) b = 100; Console.WriteLine("{0} {1}", a, b);
Random rnd = new Random(); var arr = Enumerable.Range(1, 100).OrderBy(t => rnd.Next()).Take(2).ToArray(); Console.WriteLine("{0} {1}", arr[0], arr[1]);
var a, b; a = Math.random(); do{ b = Math.random(); } while(b == a)
任意数列都可以叫做“随机数列”,区别只是概率分布不同,既然题主没提分布,我只能假设题主不在乎:$a=1; $b=2;完全满足题主需求。
$a=1; $b=2;
楼上太取巧啦。还是我来个吧
cat /dev/random
http://zh.wikipedia.org/zh-cn//dev/random
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(7)
inspired by @finallygo
1,
2,
php语法不懂, 不过可以先生成两个随机数,两个相减作为第一个数, 相加作为第二个数
楼主应该是系统用php实现吧(以下代码需要在php 5.3以上版本支持)
任意数列都可以叫做“随机数列”,区别只是概率分布不同,既然题主没提分布,我只能假设题主不在乎:
$a=1; $b=2;
完全满足题主需求。
楼上太取巧啦。还是我来个吧
cat /dev/random
http://zh.wikipedia.org/zh-cn//dev/random