프로젝트: "간단한 가위바위보 게임 만들기”
프로젝트 소개
이제까지 배운 변수, 데이터 타입, 연산자, 조건문, 반복문, 함수를 활용하여 가위바위보 게임을 만들어 봅시다!
이 프로젝트는 Swift Playgrounds에서 실행할 수 있으며, 사용자의 입력을 받아 컴퓨터와 가위바위보를 진행하는 프로그램입니다.
학습 목표
1.
변수와 데이터 타입을 활용하여 사용자 입력을 저장할 수 있다.
2.
*조건문(if-else, switch)**을 사용하여 게임의 승패를 판별할 수 있다.
3.
*반복문(while)**을 사용하여 사용자가 원하는 만큼 게임을 반복할 수 있다.
4.
함수를 사용하여 코드의 재사용성을 높일 수 있다.
프로젝트 개요
기능 목록
1.
사용자가 "가위", "바위", "보" 중 하나를 입력하면 컴퓨터가 무작위 선택을 한다.
2.
조건문을 사용하여 승패를 판별하고 결과를 출력한다.
3.
사용자가 "그만"을 입력할 때까지 반복적으로 게임을 진행한다.
4.
사용자의 입력이 올바르지 않으면 다시 입력하도록 처리한다.
1단계: 컴퓨터가 무작위 선택하는 함수 만들기
가위바위보 게임에서는 컴퓨터가 랜덤하게 "가위", "바위", "보" 중 하나를 선택해야 합니다.
힌트 코드
func getComputerChoice() -> String {
let choices = ["가위", "바위", "보"]
return choices.randomElement()!
}
// 테스트 실행
let computerChoice = getComputerChoice()
print("컴퓨터 선택: \\(computerChoice)")
Swift
복사
2단계: 승패를 판별하는 함수 만들기
사용자와 컴퓨터의 선택을 비교하여 승패를 판별하는 로직을 작성합니다.
힌트 코드
func determineWinner(userChoice: String, computerChoice: String) -> String {
if userChoice == computerChoice {
return "무승부입니다!"
} else if (userChoice == "가위" && computerChoice == "보") ||
(userChoice == "바위" && computerChoice == "가위") ||
(userChoice == "보" && computerChoice == "바위") {
return "축하합니다! 이겼습니다!"
} else {
return "졌습니다. 다시 도전해보세요!"
}
}
// 테스트 실행
let userChoice = "가위"
let computerChoice = getComputerChoice()
let result = determineWinner(userChoice: userChoice, computerChoice: computerChoice)
print("사용자: \(userChoice), 컴퓨터: \(computerChoice)")
print(result)
Swift
복사
3단계: 사용자 입력을 받아 게임을 반복하기
사용자가 "그만"을 입력할 때까지 계속 게임을 진행하는 반복문을 추가합니다.
힌트 코드
var isPlaying = true
while isPlaying {
print("가위, 바위, 보 중 하나를 입력하세요. (그만 입력 시 종료)")
if let userChoice = readLine()?.trimmingCharacters(in: .whitespaces),
["가위", "바위", "보", "그만"].contains(userChoice) {
if userChoice == "그만" {
isPlaying = false
print("게임을 종료합니다.")
break
}
let computerChoice = getComputerChoice()
let result = determineWinner(userChoice: userChoice, computerChoice: computerChoice)
print("사용자: \(userChoice), 컴퓨터: \(computerChoice)")
print(result)
} else {
print("잘못된 입력입니다. 다시 입력하세요.")
}
}
Swift
복사
완성 조건
1.
사용자가 "가위", "바위", "보" 중 하나를 입력하면 컴퓨터가 무작위로 선택해야 합니다.
2.
조건문을 사용하여 승패를 판별하고 결과를 출력해야 합니다.
3.
반복문을 사용하여 사용자가 원할 때까지 게임을 진행할 수 있어야 합니다.
4.
사용자가 "그만"을 입력하면 프로그램이 종료되어야 합니다.
5.
함수(getComputerChoice(), determineWinner())를 활용하여 코드의 재사용성을 높여야 합니다.