간단한 게임 만들기
위 아래 게임 만들기
성범이가 악당 로봇에게 붙들려 있다. 성범이가 있는 방 번호를 알아내야 한다. 악당 로봇이 민수에게 결투를 제안했다. 기회는 단 3번.. 민수는 성범이를 구해낼 수 있을까?
- 1 ~ 10 까지 숫자를 입력하면 로봇이 힌트를 준다.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void){
int minsu, room, game = 3;
srand((int unsigned)time(0));
room = (rand() % 10) + 1;
printf("악당: 성범이가 있는 방의 번호를 알아내라.\n");
while(game){
printf("%d번의 기회가 있다.\n1 ~ 10 까지의 숫자를 입력해라.\n", game);
scanf("%d", &minsu);
if (minsu < room){
printf("악당 : 입력한 번호가 방번호 보다 작구나.\n");
game--;
} else if (minsu > room){
printf("악당 : 너의 숫자는 나보다 크구나.\n");
game--;
} else {
printf("악당 : 맞췄구나 풀어주도록 하지.\n");
break;
}
}
if (game == 0) printf("민수가 졌습니다. 민수는 울고 있습니다.\n");
else printf("민수가 이겼습니다. 성범이는 민수에게 뽀뽀를 해주었습니다.\n");
return 0;
}
실행 결과
악당: 성범이가 있는 방의 번호를 알아내라.
3번의 기회가 있다.
1 ~ 10 까지의 숫자를 입력해라.
5
악당 : 입력한 번호가 방번호 보다 작구나.
2번의 기회가 있다.
1 ~ 10 까지의 숫자를 입력해라.
6
악당 : 입력한 번호가 방번호 보다 작구나.
1번의 기회가 있다.
1 ~ 10 까지의 숫자를 입력해라.
8
악당 : 입력한 번호가 방번호 보다 작구나.
민수가 졌습니다. 민수는 울고 있습니다.
빨간 주사위, 파란 주사위 두개를 던져 그 합이 9보다 커야 한다.
기회는 5번 뿐이다.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define OVER_SUM 9
int main(void){
int red, blue, sum, game = 5;
while(game){
srand((unsigned int)time(0));
printf("%d 번의 기회가 있습니다. 랜덤 숫자를 생성하려면 Enter를 입력하세요", game);
getchar( );
red = (rand() % 6) + 1;
blue = (rand() % 6) + 1;
sum = red + blue;
printf("합계: %d, 빨간 주사위: %d, 파란 주사위: %d\n",sum,red,blue);
if (sum <= OVER_SUM){
printf(" %d 보다 커야 합니다.\n", OVER_SUM);
} else {
printf(" %d 보다 큽니다.\n게임 종료..\n", OVER_SUM);
break;
}
game--;
}
return 0;
}
실행 결과
5 번의 기회가 있습니다. 랜덤 숫자를 생성하려면 Enter를 입력하세요
합계: 7, 빨간 주사위: 5, 파란 주사위: 2
9 보다 커야 합니다.
4 번의 기회가 있습니다. 랜덤 숫자를 생성하려면 Enter를 입력하세요
합계: 5, 빨간 주사위: 1, 파란 주사위: 4
9 보다 커야 합니다.
3 번의 기회가 있습니다. 랜덤 숫자를 생성하려면 Enter를 입력하세요
합계: 10, 빨간 주사위: 4, 파란 주사위: 6
9 보다 큽니다.
게임 종료..
3의 배수 피하기
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void) {
int red = 0, sum = 0, game = 1;
while (game) {
printf("주사위를 던지려면 Enter를 입력하세요.");
getchar( );
srand((unsigned int)time(0));
red = rand() % 6 + 1;
sum += red;
printf("sum = %d, red = %d\n", sum, red);
if (sum > 19) {
printf("함정을 피해 무사히 통과했습니다.\n");
break;
}
if (sum % 5 == 0 || sum % 7 == 0){
printf("함정을 만나 게임이 종료 됩니다.\n");
game--;
break;
}
}
return 0;
}
실행 결과
실행 결과:
주사위를 던지려면 Enter를 입력하세요.
sum = 2, red = 2
주사위를 던지려면 Enter를 입력하세요.
sum = 5, red = 3
함정을 만나 게임이 종료 됩니다.
---
실행 결과:
주사위를 던지려면 Enter를 입력하세요.
sum = 1, red = 1
주사위를 던지려면 Enter를 입력하세요.
sum = 2, red = 1
주사위를 던지려면 Enter를 입력하세요.
sum = 4, red = 2
주사위를 던지려면 Enter를 입력하세요.
sum = 6, red = 2
주사위를 던지려면 Enter를 입력하세요.
sum = 9, red = 3
주사위를 던지려면 Enter를 입력하세요.
sum = 13, red = 4
주사위를 던지려면 Enter를 입력하세요.
sum = 18, red = 5
주사위를 던지려면 Enter를 입력하세요.
sum = 23, red = 5
함정을 피해 무사히 통과했습니다.