我想在.CU格式的文件使用drand48獲得隨機數一致,爲什麼我總是給我3.90799e-14這個值curand,推力::隨機
我的代碼是在ran_uniform_test.cu
#include <iostream>
int main(int argc, char** argv)
{
std::cout<<drand48()<<"\n";
return 0;
}
我想在.CU格式的文件使用drand48獲得隨機數一致,爲什麼我總是給我3.90799e-14這個值curand,推力::隨機
我的代碼是在ran_uniform_test.cu
#include <iostream>
int main(int argc, char** argv)
{
std::cout<<drand48()<<"\n";
return 0;
}
你應該調用srand48
(或seed48
,或lcong48
)使用drand48
之前:
的srand48(),seed48()和lcong48()是初始化入口點,其中之一應在調用drand48(),lrand48()或mrand48()之前調用。 (雖然不推薦這樣做,但如果在未事先調用初始化入口點的情況下調用drand48(),lrand48()或mrand48(),則會自動提供常量默認初始值。)erand48(),nrand48()和jrand48()函數不需要首先調用初始化入口點。
使用像這樣:
#include <iostream>
#include <ctime>
#include <cstdlib>
int main(int argc, char *argv[])
{
// A common random seed strategy is to use the current time
srand48(time(NULL));
std::cout << drand48() << std::endl;
std::cout << drand48() << std::endl;
std::cout << drand48() << std::endl;
std::cout << drand48() << std::endl;
return 0;
}
謝謝!學到新東西! – user1536720 2012-07-19 19:37:19
你沒有播種的隨機數 – pyCthon 2012-07-19 18:54:35
如何?你能給我一些提示,我只是在其他代碼中使用它,它工作,但它不這樣工作 – user1536720 2012-07-19 18:56:34