Binomial random variable X의 distribution C언어 구현
본 자료는 2페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

Binomial random variable X의 distribution C언어 구현에 대한 보고서 자료입니다.

본문내용

선언
printf("n=100, p=0.3일 때 Binomial r.v X의 distribution\n"); //문장 출력
printf("->실험적 방법 결과\n");
for(i=0; i<1000000; i++) //반복문 for문 사용
{
suc=0; //suc변수 초기화
for(j=0; j<100; j++) //반복문, 시행횟수 n=100
{
ra=rand()%10+1; //난수 발생함수
if(ra%3==0) //3의 배수를 받았을 때 성공하는 게임
suc++; //10까지 수 중 3,6,9을 맞추는
} //게임이므로 확률은 0.3
suc_1[suc]++; //배열 suc_1[suc]++
}
for(k=0; k<=100; k++)
printf("p[%d]=%f\t",k,(double)suc_1[k]/1000000); //결과출력
}
2. 식 6.3에 따른 방법
#include //C언어의 입출력 헤더 파일
#include //자료변환 함수
#include //수치 연산 함수
void main() //함수시작
{
printf("\n"); //문장 출력printf("-> 식 6.3을 이용한 결과\n");
int n; //시행횟수 n 변수 선언
double prob; //확률 p 변수 선언
printf("n= "); //n과 p값을 입력받고 출력함
scanf("%d", &n);
printf("Prob= ");
scanf("%lf", &prob);
double p[150]; //크기 150님 배열 선언
int k; //루프 변수 선언
p[0]=pow((1-prob),n); //xy승을 구하는 pow(x,y)함수
printf("p[0]=%lf\t",pow((1-prob), n)); //p[0]초기값 지정한다.
for(k=0; k {
p[k+1]=prob/(1-prob)*(n-k)/(k+1)*p[k]; //식 6.3유도
printf("p[%d]=%lf\t",k+1,p[k+1]); //결과 출력
}
}
3. 결과비교
<실험적(Simulation)인 방법>
<식 6.3에 따른 방법>
→실험적인 방법과 식 6.3에 따른 결과의 분포 형태가 같음을 알 수 있다.
→p[30]일 때 가장 높은 값을 나타내며, 각각의 값은 약간의 오차를 발생한다.
  • 가격1,000
  • 페이지수6페이지
  • 등록일2005.11.24
  • 저작시기2005.11
  • 파일형식한글(hwp)
  • 자료번호#322596
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니