Menu
Coddy logo textTech

프로젝트 개요

Coddy Ruby 여정의 로직 및 흐름 섹션에 포함된 레슨 — 56개 중 48번째.

당신은 하나의 중첩된 해시(nested hash)를 공유하는 메서드 집합으로 구성된 작은 학생 기록 시스템을 구축하게 될 것입니다. Library Manager와는 다른 형태이며, 이번에는 메뉴 루프 없이 계속해서 확장해 나갈 함수들만으로 구성됩니다.

상태는 단일 최상위 해시에 저장됩니다:

student_records = {}

각 항목은 이름으로 키가 지정되며, 해시 값에는 학생의 나이, 성적 및 수강 과목이 포함됩니다:

{
  "Alice" => { age: 20, grades: [], courses: ["Math", "Physics"] }
}

각 레슨은 이 해시에서 작동하는 하나의 메서드를 추가합니다: add_student, add_grade, average_grade, list_by_course, top_students.

challenge icon

챌린지

초급

파일의 맨 위에 student_records라는 이름의 빈 해시를 초기화하세요. 그런 다음 테스트에서 다음과 같이 확인할 수 있도록 inspect를 사용하여 출력하세요:

{}

이것이 과제의 전부입니다. 이 레슨은 이후에 이어질 모든 과정을 위한 공유 상태를 설정하는 단계입니다.

치트 시트

학생 기록 시스템은 단일 중첩 해시를 공유 상태로 사용합니다:

student_records = {}

각 항목은 학생 이름을 키로 하며 age, grades, courses를 포함하는 해시를 가집니다:

{
  "Alice" => { age: 20, grades: [], courses: ["Math", "Physics"] }
}

inspect를 사용하여 해시의 내용을 출력합니다:

puts student_records.inspect

직접 해보기

# TODO: student_records = {}를 초기화하고 inspect로 출력하기
quiz icon실력 점검

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

로직 및 흐름의 모든 레슨