링크드리스트로 구현한 일양난수생성 및 난수분석
본 자료는 미리보기를 지원하지 않습니다.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

목차

C언어 작성한 일양난수 생성기 입니다

I_n = (I_n-1 * a + c) mod m

위의 식을 통해 난수를 생성하게 되는데요

사용자로 부터 seed 값(I_0)과 a, c, m 값을 입력 받고

원하는 갯수만큼의 난수를 생성하던지

아닌면 난수가 나오는 주기를 찾아서 출력하는 동작을 하게 됩니다.

각 난수들을 구조체로 선언해 다음 생성되는 난수를 가리키도록 하였습니다.

레포트 과제에는 난수의 관한 분석이 들어있는데 그 문제는 아래와 같습니다.

1. m의 값이 2^3, 2^4, 2^8, 2^9, 2^10 인 경우에 대해서 다음을 조사하여 보고하시오.
(단, 각각에 대해서 a와 c의 값은 적당히 정하고, 그 값을 보고하시오.) 각 m값에 대해서 위에서 만든 난수발생기가 만들어내는 주기가 얼마인지 보고하시오.

2. 위에서 만든 난수발생기가 생성하는 수들의 평균, 분산, 왜도, 첨도를 조사하여라. (단, 각 m값에 대해서 발생시킬 난수의 개수는 5, 10, 30, 50 으로 하시오.) 각 경우에 대해서 seed를 다르게 주면서, 5번씩 난수를 발생시키고 각각의 평균, 분산, 왜도, 첨도가 어떻게 달라지는지 보고하시오.


압축파일에 소스코드와 한글파일 같이 첨부하였습니다

본문내용

난수생성기 소스코드

#include
#include
#include

typedef struct node{ //링크드리스트 구현을 위한 구조체 변수 선언
int index;
long data;
struct node *next;
}node;

void print_node(node *a){ //발생된 난수 출력
if(a->next!=NULL)
print_node(a->next);
printf("%d : %ld\n", a->index, a->data);
return;
}

void free_node(node *a){ //할당 메모리공간 반환
if(a->next!=NULL)
free_node(a->next);
free(a);
return;
}

키워드

  • 가격1,000
  • 페이지수8페이지
  • 등록일2009.06.04
  • 저작시기2009.5
  • 파일형식압축파일(zip)
  • 자료번호#539447
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니