从C中的[0,1]中获取随机双数
发布时间:2020-12-16 10:25:15 所属栏目:百科 来源:网络整理
导读:我想生成随机双数x,其中:0 = x = 1: double x = ((double) rand() / (RAND_MAX)); 这是从[0,1]获取随机双数的正确方法吗? 解决方法 是的,因为std :: rand()返回0和RAND_MAX.但是,如果您可以使用C 11,则可以使用std :: uniform_real_distribution. 另外,不
我想生成随机双数x,其中:0< = x< = 1:
double x = ((double) rand() / (RAND_MAX)); 这是从[0,1]获取随机双数的正确方法吗? 解决方法
是的,因为std :: rand()返回0和RAND_MAX.但是,如果您可以使用C 11,则可以使用std :: uniform_real_distribution.
另外,不要忘记初始化随机数生成器,否则每次执行都会得到相同的序列.如果你使用std :: rand,std :: srand(std :: time(0))几乎总是足够的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |