3. 가위바위보 게임(1)
페이지 정보
작성자 관리자 댓글 0건 조회 928회 작성일 22-10-03 08:47본문
3. 가위바위보 게임(1)
조건문과 rand함수를 활용한 가위바위보게임을 만들어 보겠습니다.
1. 사용자와 컴퓨터 입력받기
사용자는 scanf()함수로 입력받고, 컴퓨터는 rand()함수로 임의의 수를 선택합니다.
srand(time(NULL)); 명령은 컴퓨터가 임의의 수를 선택할 때 규칙적인 선택을 없애기 위해 사용합니다.
사용자는 입력받고, 컴퓨터는 임의의 수를 선택했다면, 사용자와 컴퓨터의 입력을 출력합니다.
(1) 소스코딩
파일명 main.c
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main(int argc, char *argv[]) {
int you, com;
// 사용자 입력받기
printf("가위(1), 바위(2), 보(3)를 입력하세요 : ");
scanf("%d", &you);
// 컴퓨터 : 가위,바위,보 선택하기
srand(time(NULL));
com = rand() % 3 + 1;
// 출력하기
printf("YOU vs COM \n");
if(you == 1) printf("가위");
else if (you ==2) printf("바위");
else if (you ==3) printf("보");
printf(" vs ");
if(com == 1) printf("가위");
else if (com ==2) printf("바위");
else if (com ==3) printf("보");
printf("\n");
// 게임 판정하기
return 0;
}
(2) 실행하기
가위(1), 바위(2), 보(3)를 입력하세요 : 1
YOU vs COM
가위 vs 보
여러번 실행하여 다르게 입력해봅니다.
2. 가위바위보 게임 판정하기
위 소스를 수정합니다.
아래부분에 조건문을 활용하여 게임의 결과를 판정합니다.
(1) 소스코딩
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main(int argc, char *argv[]) {
int you, com;
// 사용자 입력받기
printf("가위(1), 바위(2), 보(3)를 입력하세요 : ");
scanf("%d", &you);
// 컴퓨터 : 가위,바위,보 선택하기
srand(time(NULL));
com = rand() % 3 + 1;
// 출력하기
printf("YOU vs COM \n");
if(you == 1) printf("가위");
else if (you ==2) printf("바위");
else if (you ==3) printf("보");
printf(" vs ");
if(com == 1) printf("가위");
else if (com ==2) printf("바위");
else if (com ==3) printf("보");
printf("\n");
// 게임 판정하기
/*
경우의 수는 이겼다, 졌다, 비겼다.
3가지 경우이므로 if() 조건문을 통해 조건을 입력한다.
비겼을 때 draw!를 출력하고,
이겼을 때 You WIn !를 출력한다.
졌을 때는 You Lost!를 출력한다.
*/
if(you == com)
printf("draw !\n");
else if(you == 1 && com == 3 || you == 2 && com == 1 || you == 3 || com ==2)
printf("You Win ! \n");
else
printf("You Lost ! \n");
return 0;
}
(2) 실행하기
가위(1), 바위(2), 보(3)를 입력하세요 : 1
YOU vs COM
가위 vs 가위
draw !
댓글목록
등록된 댓글이 없습니다.