如何在 C++ 中生成隨機浮點數?


在 C 或 C++ 中,我們無法直接建立隨機浮點數。我們可以使用一些技巧來建立隨機浮點數。我們將建立兩個隨機整數值,然後對其進行除法以獲得隨機浮點值。

有時它可能生成一個整數商,因此為了降低該機率,我們將結果乘以一些浮點常量,例如 0.5。

示例

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
main() {
   srand((unsigned int)time(NULL));
   float a = 5.0;
   for (int i=0;i<20;i++)
      cout << (float(rand())/float((RAND_MAX)) * a) << endl;
}

輸出

2.07648
4.3115
1.31092
2.22465
2.17292
1.48381
1.91137
0.56505
2.24326
4.44517
3.1695
2.39067
1.89062
4.35881
4.17524
0.189673
1.87521
1.76916
2.3217
2.20481

更新於: 30-7 月- 2019

3K+ 瀏覽量

開啟你的職業生涯

完成課程獲取認證

開始
廣告