Menu
CoddyTech

질문하기

Coddy Swift 여정의 로직과 흐름 섹션에 포함된 레슨. 56개 중 50번째.

첫 번째 기능: 모든 질문을 순서대로 묻고 각 답이 맞았는지 출력합니다.

질문 목록은 이 레슨을 위해 하드코딩되어 있으며, 플레이어의 답은 stdin에서 한 줄씩 순서대로 입력됩니다.

let questions: [(String, String, String)] = [
    ("math", "2 + 2?", "4"),
    ("geo", "Capital of France?", "Paris")
]
for (_, text, answer) in questions {
    print(text)
    let given = readLine()!
    print(given == answer ? "correct" : "wrong")
}

위에서 아래로 읽으세요. 질문을 출력하고, 한 줄을 읽은 다음, 비교합니다. 다음 단원에서는 대소문자나 불필요한 공백 때문에 실패하지 않도록 엄격한 비교를 완화합니다.

challenge icon

챌린지

쉬움

이전 단계의 코드 대신 이 questions 문제 모음으로 프로그램을 시작하세요:

let questions: [(String, String, String)] = [
    ("math", "2 + 2?", "4"),
    ("geo", "Capital of France?", "Paris"),
    ("science", "Color of grass?", "green")
]

표준 입력에서 세 줄(플레이어의 답을 순서대로) 읽으세요. 각 질문에 대해 다음을 출력하세요:

  1. 질문 텍스트를 한 줄에 단독으로 출력
  2. 입력한 답이 저장된 답과 정확히 같으면 correct, 그렇지 않으면 wrong

세 질문을 모두 마친 후 정답 개수를 포함하여 Score: <n>/3을 출력하세요.

입력이 4 / Paris / red이면 출력은 다음과 같습니다:

2 + 2?
correct
Capital of France?
correct
Color of grass?
wrong
Score: 2/3

직접 해보기

let questions: [(String, String, String)] = [
    ("math", "2 + 2?", "4"),
    ("geo", "Capital of France?", "Paris"),
    ("science", "Color of grass?", "green")
]

// TODO: 각 질문의 텍스트를 출력하고, 답을 입력받은 뒤, 정답/오답을 출력한다;
// 그런 다음 'Score: <n>/3'을 출력한다
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

로직과 흐름의 모든 레슨

직접 연습해 보세요: Swift 플레이그라운드