大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
math/rand 中的所有整数函数都生成非负数.
创新互联公司专业为企业提供丰泽网站建设、丰泽做网站、丰泽网站设计、丰泽网站制作等企业网站建设、网页设计与制作、丰泽企业网站模板建站服务,十多年丰泽做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
示例 main.go
执行
同理,需要int64 int32类型的随机数只要修改随机函数
但是需要注意 math/rand 几个函数的取值区间!如Intn的范围[0, n)。[0,20),20会取不到
我自己的需求这样写已足够
#include stdio.h
#include stdlib.h
#include time.h //用到了time函数
int main()
{ int i,number;
srand((unsigned) time(NULL)); //用时间做种,每次产生随机数不一样
for (i=0; i50; i++)
{
number = rand() % 101; //产生0-100的随机数
printf("%d ", number);
}
return 0;
}
const NUM int = 100
for i := 0; i NUM; i += 1 {
rand.Seed(int64(i))
fmt.Printf("%d\t", rand.Int63n(int64(NUM)))
}
其实在循环里面这点时间间隔,纳秒也是跟不上的。
还有,你用sleep的方法肯定是不能接受的!!!
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
for i := 0; i 20; i++ {
r := rand.New(rand.NewSource(time.Now().UnixNano()))
//rand.Seed(time.Now().UnixNano()) //以当前纳秒数作为随机数种子
n := r.Int63()
fmt.Println(n)
}
}
查了下这样可以
不知道他内部怎么实现的 unixnano