説明お願いします
Posted: 2011年6月27日(月) 21:15
以下のプログラムを参考にして自分でプログラムを作りたいんですが
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
double f(double x){
returnx;
}
main(){
int m; 発生した乱数の総数
int n; 発生した乱数の個数
int k; 積分図形に落ちた回数
double a; 積分区間の始点
double b; 積分区間の終点
double c; 矩形の高さ
double x; 乱数発生したx
double y; 乱数発生したy
double s; 積分の近似値
printf("");scanf("%d",&m);
printf("");scanf("%lf",&a);
printf("");scanf("%lf",&b);
printf("");scanf("%lf",&c);
k=n=0;
srand((unsigned)time(NULL));
while(++n<m){
x=a+(b-a)*(double)rand()/RAND_MAX;
y=c*(double)rand()/RAND_MAX;
if(y<f(x))_k++;
}
s=(double)k/n*c*(b-a);
printf("s=%f\n",s);
return 0;
}
s=(double)k/n*c*(b-a);
この部分がどういたってこうなったのかがわかりません
説明をお願いします
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
double f(double x){
returnx;
}
main(){
int m; 発生した乱数の総数
int n; 発生した乱数の個数
int k; 積分図形に落ちた回数
double a; 積分区間の始点
double b; 積分区間の終点
double c; 矩形の高さ
double x; 乱数発生したx
double y; 乱数発生したy
double s; 積分の近似値
printf("");scanf("%d",&m);
printf("");scanf("%lf",&a);
printf("");scanf("%lf",&b);
printf("");scanf("%lf",&c);
k=n=0;
srand((unsigned)time(NULL));
while(++n<m){
x=a+(b-a)*(double)rand()/RAND_MAX;
y=c*(double)rand()/RAND_MAX;
if(y<f(x))_k++;
}
s=(double)k/n*c*(b-a);
printf("s=%f\n",s);
return 0;
}
s=(double)k/n*c*(b-a);
この部分がどういたってこうなったのかがわかりません
説明をお願いします