본문 바로가기

C/C++/예제

[C 예제] 간단한 주사위 게임.

반응형

C 예제.

C언어 간단한 주사위 게임!!

 

주사위 게임 규칙

- 사용자는 자본금 1000원을 가지고 시작.

- 한번 게임에 100원을 배팅하며, 1~6사이의 숫자 1개를 선택.

- 주사위의 숫자가 사용자가 배팅한 숫자와 일치하면 600원을 적립. (배팅금액 포함 600원)

- 자본금이 0원이 되면 게임은 자동 종료.

- 주사위 결과는 랜덤함수를 사용한다.

 

#include  
#include 

int main() { int n = 0; int money = 1000; int dice = 0; printf("게임을 시작 합니다.\n"); while(1){ printf("주사위를 배팅하세요(종료하려면 -1을 입력하세요) : "); scanf("%d", &n); if(n == -1){ printf("게임을 종료 합니다. 최종 금액 : %d\n", money); break; } srand(time(NULL)); dice = rand() % 6 + 1; if(dice == n) money += 500; else money -= 100; printf("주사위 결과 : %d, 배팅숫자 : %d, 현재금액 : %d\n", dice, n, money); if(money == 0){ printf("배팅금액이 모두 소진되 게임이 종료 됩니다.\n"); break; } } return 0; }

 

 

결과 화면.

 

( 운도 드릅게 없지...5가 한번만 나오냐... )

 

 

rand 함수를 이용해 난수를 발생 시켜 해당 난수를 6으로 나누고 +1을 해 1~6이라는 값을 렌덤으로 나오게 해서 쉽게 완료.

여기서 나름 포인트 라고 할만한 점은 srand(time(NULL) 이 부분인데,

srand 를 이용하지 않고 rand 만을 사용하면 어느순간 난수가 똑같은 패턴으로만 나온다는걸 알수가 있습니다.

rand 가 해당 시간에 따라 난수를 발생 시키기 때문인데,

그래서 일정 패턴이 없는 완전한 난수의 발생을 위해서 srand 를 이용해 줘야합니다.

 

srand 에 대한 더 자세한 설명은 다음에..

반응형