728x90
For, while, random관련내용을 배우고 수행한 예제이다.
홀짝게임 (첫번째 코딩)
//홀짝 게임
//컴퓨터가 주사위를 2번 굴린다.
//플레이어는 숫자를 미리 볼 수 있다. 총합이 홀수인지, 짝수인지 출력한다.(Easy)
//플레이어는 숫자를 미리 볼 수 없다. 플레이어가 홀,짝을 맞춰야한다.(Normal)
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <unistd.h> // 윈도우에서는 <windows.h>이다.
int main(){
int dice,dice2;
int randomNumber1,randomNumber2,randomNumber3,randomNumber4;
int diceSum,diceSum2;
char mode;
srand(time(NULL));
randomNumber1 = (rand()%6)+1;
randomNumber2 = (rand()%6)+1;
diceSum = randomNumber1+randomNumber2;
while(1){
printf("Easy모드와 Normal모드를 선택해주세요.[Easy = E, Normal = N]\n");
printf("게임 나가기 Exit 는 X를 입력해주세요.\n");
mode = getchar();
//easy
if(mode == 'E' || mode == 'e'){
printf("[Easy]주사위 두개의 숫자는 %d, %d \n",randomNumber1,randomNumber2);
printf("두수의 합은 %d 이며",diceSum);
dice = diceSum % 2;
if(dice == 1){
printf("홀수입니다.\n\n");
}else{
printf("짝수입니다.\n\n");
}
}else if(mode == 'N' || mode == 'n'){//hard
int number = 0;
while(number == 0){
printf("\n[Normal]주사위를 굴렸습니다. 홀짝을 맞추세요_숫자를 입력하세요(홀:1,짝:0)\n");
randomNumber3 = (rand()%6)+1;
randomNumber4 = (rand()%6)+1;
diceSum2 = randomNumber3 + randomNumber4;
scanf("%d",&dice2); // 사용자 입력
if(dice2 == (diceSum2%2)){
printf("정답입니다.\n");
printf("방금 다시 굴린 주사위의 합은 %d 입니다.\n\n",diceSum2);
number += 1;
}else{
printf("오답입니다.\n\n");
printf("방금 다시 굴린 주사위의 합은 %d 입니다.\n\n",diceSum2);
}
}
//while문
}else if(mode == 'X' || mode == 'x'){
printf("게임을 종료합니다.\n\n");
return 0;
}
}
}
728x90
'프로그래밍 > C,C++' 카테고리의 다른 글
[오류_C/C++] clang: error: linker command failed with exit code 1 (use -v to see invocation) 에러 (0) | 2023.06.05 |
---|---|
[C/C++]while, for, switch, rand 알아보기 (0) | 2023.06.04 |
[오류_C/C++] Mac에서 sleep함수 사용하는 방법 feat 버퍼링 (0) | 2023.06.04 |
[오류_C/C++] MAC에서 system("cls")를 사용하고싶다면? (0) | 2023.06.02 |
예제) 크리티컬 확률과 몬스터 사냥하기 feat 줄 정렬 (0) | 2023.06.02 |