24.06.12 Today I Learned

2024. 6. 13. 09:28

 Command Line Tool로 숫자 야구게임 만들기

 

Lv.1 시도

// main.swift

import Foundation

var game = BaseballGame()
game.start()
BaseballGame.swift

import Foundation

struct BaseballGame {
    func start() {
        let answer = makeAnswer()
        
        print("게임을 시작합니다")
        print("숫자를 입력해주세요")
        
        print(makeAnswer())
        
        let input = readLine()!
        
        let IntAnswer = String(input).map {Int(String($0))!}
        // 입력받은 String타입의 input을 [Int]로 변환
        
        print(IntAnswer)
    }
    
    func makeAnswer() -> [Int] {
        var ans = Array(1...9)
        var randomNumbers : [Int] = []
        
        while randomNumbers.count < 3 {
            let randomIndex = Int.random(in: 0..<ans.count)
            let randomNumber = ans[randomIndex]
            
            if !randomNumbers.contains(randomNumber) {
                randomNumbers.append(randomNumber)
            }
        }
        
        return randomNumbers
    }
}

 

// 출력값 :

// 게임을 시작합니다
// 숫자를 입력해주세요
// [3, 9, 5] < 랜덤숫자

 

BaseballGame.swift 파일을 따로 생성해서 프로젝트를 구성했다.

 

makeAnswer()는 while문을 사용하여 총 3자리의 랜덤한 정수가 들어가도록 만들었다. 내부에 if문으로 이미 입력된 값이 중복되지 않도록 만들었다.

 

map함수를 사용하여 String -> Int 타입으로 저장했다.

'Today I Learned > 2024' 카테고리의 다른 글

24.06.17 Today I Learned  (0) 2024.06.17
24.06.14 Today I Learned  (1) 2024.06.14
24.06.11 Today I Learned  (0) 2024.06.11
24.06.10 Today I Learned  (0) 2024.06.10
24.06.07 Today I Learned  (1) 2024.06.08

BELATED ARTICLES

more