赞
踩
用C++实现java的math.random()函数. 看算法课算法老师一直调java的math.random()函数,我就自己写了一个C++对应版.
- #include <iostream>
- #include <random>
- #include <cstdlib>
- #include <time.h>
- double math_random(){
- // srand(0);
- return (double)(rand()%10000+1)/10000; //用的时候在for循环里加上 srand(time(NULL)*j); 这里精确度是取10000
- }
- int main() {
- int testtimes=100000;
- int a[10];
- for (int i = 0; i < 10; ++i) {
- a[i]=0;
- }
- double b;
- for (int j = 0; j < testtimes; ++j) {
- srand(time(NULL)*j);//确保真正的随机,如果只加时间函数不行
- b= math_random();
- if (b>0&&b<0.1){
- a[0]++;
- }
- if (b>0.1&&b<0.2){
- a[1]++;
- }
- if (b>0.2&&b<0.3){
- a[2]++;
- }
- if (b>0.3&&b<0.4){
- a[3]++;
- }
- if (b>0.4&&
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。