- 170 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 19:14:41 ]
- >>162 合ってるかどうか自信は無い
#include<stdio.h> #include<stdlib.h> #include<math.h> double uniformed_rand(void) { return (double)rand()/(RAND_MAX+1); } int main(void) { double theta, phi; double r=5.0, x, y, z; int i; for(i=0;i<100;i++) { phi=asin(uniformed_rand()*2-1); theta=uniformed_rand()*2*M_PI; x=r*cos(theta)*cos(phi); y=r*sin(theta)*cos(phi); z=r*sin(phi); printf("x=%f y=%f z=%f\n", x, y, z); } return 0; }
|

|