짧지만 아주 좋은 연습문제일 것 같은데요...
저는 윈도우가 아니라~~ 화면 제어코드를 제거해서, 아래처럼 약간 수정했습니다.
#include
#include
#include
#define HOW_MANY 3
void main()
{
int num = 0;
while (1) {
printf("참가자의 수를 정하시오(%d 이상) : ", HOW_MANY);
scanf("%d",&num);
if ( num >= HOW_MANY )
break;
}
srand( (unsigned)time(NULL) );
for ( int i = 0; i < HOW_MANY; i++ ) {
int rand_num = rand() % num + 1;
printf("당첨번호 : %d\n",rand_num);
}
}
- 입력값을 제한하고, 틀린 입력이 들어오면 다시 입력받게 합니다.
- 3과 같은 값을 매직넘버라고 하는데, 이런 것은 #define 으로 하는 것이 좋습니다.
프로그램이 이제 시작입니다.
N 까지 자연수 중에서 중복되지 않도록 M 개를 랜덤하게 고르는 방법만 찾으면 되는데,
N 을 45, M 을 6 으로 하면 로또생성기가 되네요~~
계속 가 봅시다~~
RE: 이벤트 프로그램 제작 초기