로또 번호 생성기 만들기!

이승덱·2021년 7월 21일

CPP

목록 보기
22/70
#include <iostream>

using namespace std;

//로또 번호 생성기

// 1) Swap 함수 만들기

// 2) 정렬 함수 만들기 (작은 숫자가 먼저 오도록)

// 3) 로또 번호 생성

void Swap(int& a, int& b) {

 int temp = a;

 a = b;

 b = temp;

}

void Sort(int numbers[], int count) {

 for(int i=0;i<count;i++)

 for (int j = i+1;j < count;j++) {

 int best = i;

 if (numbers[best] > numbers[j]) {

 best = j;

 }

 if (best != i)

 Swap(numbers[i], numbers[best]);

 }

}

void ChooseLotto(int numbers[]) {

 int count=0;

 bool isdup;

 while (true) {

 int temp = rand() % 45 + 1;

 isdup = false;

 for (int i = 0;i < 6;i++) {

 if (temp == numbers[i]) {

 isdup = true;

 break;

 }

 }

 if (isdup) {

 continue;

 }

 numbers[count] = temp;

 count++;

 if (count == 6)

 break;

 }

}

int main()

{

 int count;

 int numbers[6] = { 0,0,0,0,0,0 };

 count = sizeof(numbers) / sizeof(int);

 srand(time(0)); //랜덤 시드 설정

 ChooseLotto(numbers);

 Sort(numbers, count);

 for (int i = 0;i < count;i++) {

 cout << numbers[i] << "\t";

 }

 return 0;

}
profile
공부 기록용 블로그입니다

0개의 댓글