직접 로또추첨기를 작성하고 실제로 나오는 번호대로 구매해보시는 시간을 가져보세요^^
크나큰 행운을 가져다 줄 수 있습니다.
물론 단번에 코드를 본다면 좋기야 하겠지만 장기적으로 봤을때
혼자풀어보기 -> 힌트 -> 코드보기 순으로 공부하시는게 실력 향상에 큰 도움이 됩니다!
힌트를 보고 천천히 생각을 거쳐서 문제를 풀어보시고
답안을 확인해보세요
코드힌트
더보기
당첨된 번호를 저장
로또는 1이상 45이하의 수로 구성
랜덤으로 수를 만들어내는 랜덤함수 rand()를 이용해야합니다
rand() % 특정수
0 ~ 특정수 로 랜덤난수를 만들어냅니다.
여기서
(rand() % 특정수) +1을 입력하면
1 ~ 특정수로 랜덤난수를 만들어냅니다 참고해서 로또추첨번호를 생성시킵니다.
중복번호라면 break;하는 if문을 작성하고
중복번호가 없다면 추첨된 번호를 출력하는 프로그램을 작성해보세요!
기본 틀입니다.
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int prize[6]; //당첨된 번호를 저장
int get_num, i, count=0;
srand(time(NULL));
printf("이번주 로또 추첨 번호\n");
while(count != 6){
get_num = //rand를 활용하여 45이하의 정수를 만들어냄
for( i= 0 ; i <count; i++){
if( ) //중복 번호라면
break;
}
if( ){ //중복번호가 없다면
prize[count++] = get_num;
printf("%d " , get_num); //추첨된 번호 출력
}
}
printf("\n축하합니다.");
}
정답코드
더보기
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int prize[6]; //당첨된 번호를 저장
int get_num, i, count=0;
srand(time(NULL));
printf("이번주 로또 추첨 번호\n");
while(count != 6){
get_num = (rand() % 45 ) + 1;
for( i= 0 ; i <count; i++){
if(prize[i] == get_num) //중복 번호라면
break;
}
if( i == count){ //중복번호가 없다면
prize[count++] = get_num;
printf("%d " , get_num); //추첨된 번호 출력
}
}
printf("\n축하합니다.");
}
더 많은 C언어 글이 궁금하다면?
https://chuinggun.tistory.com/category/C%EC%96%B8%EC%96%B4
'C언어' 카테고리의 다른 글
[C언어] 연결리스트를 연산하는 프로그램을 작성하세요 (0) | 2022.12.03 |
---|---|
[C언어] 버블정렬, 거품정렬의 오름차순, 내림차순 프로그램을 작성하시오 (0) | 2022.12.02 |
[C언어] 변수 두 개를 나누고 값을 반환하는 division(int a, int b)함수를 작성하시오 (0) | 2022.12.01 |
[C언어] 변수 두 개를 곱하고 값을 반환하는 multiply(int a, int b)함수를 작성하시오 (0) | 2022.12.01 |
[C언어] 실수를 입력받고 음수인 경우 내림을 실행하고 양수인 경우 올림을 실행하는 함수 round(double a)를 작성하고 테스트하시오 (0) | 2022.12.01 |
댓글