Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

วิธีสร้าง Random Float ใน C++


ใน C หรือ C++ เราไม่สามารถสร้าง Random Float โดยตรงได้ เราสามารถสร้าง Random Float โดยใช้เทคนิคบางอย่าง เราจะสร้างค่าจำนวนเต็มสุ่มสองค่า แล้วหารกันเพื่อได้ค่า Float แบบสุ่ม

บางครั้งอาจได้ผลลัพธ์เป็นจำนวนเต็ม ดังนั้นเพื่อลดความน่าจะเป็นของกรณีนั้น เราคูณผลลัพธ์ด้วยค่าคงที่จุดทศนิยมบางอย่าง เช่น 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