프로젝트 개요
Coddy Swift 여정의 로직 및 흐름 섹션에 포함된 레슨 — 56개 중 49번째.
두 번째 프로젝트는 퀴즈 엔진입니다. 상태는 질문들의 리스트이며, 각각은 (category, text, answer) 형태의 튜플입니다:
var questions: [(String, String, String)] = [
("math", "2 + 2?", "4"),
("geo", "Capital of France?", "paris")
]다음 네 개의 레슨에 걸쳐 기능을 하나씩 추가해 보겠습니다:
- 질문을 추가하고 순서대로 질문하기
- 답변 점수 매기기 (대소문자 구분 없음, 공백 제거)
- 카테고리별로 필터링하기
- 카테고리별 분석을 통해 실행 결과 요약하기
Habit Tracker와 마찬가지로 각 레슨은 독립적이며, 모든 파일의 상단에서 문제 은행을 다시 빌드하게 됩니다.
챌린지
초급시작하려면, 데이터 설정 코드를 작성하세요:
- 질문들(
[(String, String, String)])의 빈 배열을 초기화하세요 - 개수(count)를 출력하세요
- 배열이 비어 있는지 여부를 출력하세요
예상되는 출력 결과는 다음과 같습니다:
0
true치트 시트
퀴즈 엔진은 질문을 (category, text, answer) 형식의 튜플 리스트로 저장합니다:
var questions: [(String, String, String)] = [
("math", "2 + 2?", "4"),
("geo", "Capital of France?", "paris")
]유용한 배열 속성:
questions.count // 요소의 개수
questions.isEmpty // 요소가 없으면 true직접 해보기
// TODO: questions라는 이름의 빈 [(String, String, String)]을 선언하세요,
// 그런 다음 count와 isEmpty를 출력하세요
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.