본문 바로가기

- Programming/- C++

★ 11. 랜덤 함수를 이용한 로또 번호 뽑기 - 1

반응형

랜덤 함수를 이용한 로또 번호 뽑기

 

로또 번호를 뽑아보는 법을 알아보겠습니다!

 

로또 번호에는 규칙이 있죠?

 

1부터 45까지의 숫자가 중복되지 않게 들어가야합니다!

어떻게 해야 하는지 2 가지 방법을 소개해드릴께요!

 

첫번째 방법 입니다.

 

헤더 파일로

 

<iostream>과 <time.h> 두가지를 꼭! 선언 해주셔야 합니다.

 

void main()
{


     srand(time(NULL));

 int lotto[45];
 int i;
 int temp, A, B;

 

 for (i = 0; i < 45; i++) 
 {
      lotto[i] = i + 1;
 }

 

 for (i = 0; i < 100; i++) 
 {
      A = rand() % 45;
      B = rand() % 45;

 temp = lotto[A];
 lotto[A] = lotto[B];
 lotto[B] = temp;

 }

 

 for (i = 0; i < 6; i++) 
 {
      cout << lotto[i] << endl;
 }

 

}

 

- - 설명 - -

 

1. 처음에 lotto[45] 배열 안에 1부터 45까지의 숫자로 초기화시켜줍니다.

2. A와 B에 0부터 45까지의 랜덤한 숫자를 넣고

   lotto 배열의 첨자로 활용해 temp를 이용한 자리 바꾸기를 합니다. (100번)

3. lotto 배열을 순차적으로 6개를 출력해줍니다.

 

하지만 이 방법은 제 생각엔 조금 비효율적이지 않나 싶습니다.

다음 장에서 2번째 방법을 보여드리겠습니다!~

 

반응형