Tracks
/
Tcl
Tcl
/
Exercises
/
Grade School
Grade School

Grade School

Medium

Instructions

Given students' names along with the grade they are in, create a roster for the school.

In the end, you should be able to:

  • Add a student's name to the roster for a grade:
    • "Add Jim to grade 2."
    • "OK."
  • Get a list of all students enrolled in a grade:
    • "Which students are in grade 2?"
    • "We've only got Jim right now."
  • Get a sorted list of all students in all grades. Grades should be sorted as 1, 2, 3, etc., and students within a grade should be sorted alphabetically by name.
    • "Who is enrolled in school right now?"
    • "Let me think. We have Anna, Barb, and Charlie in grade 1, Alex, Peter, and Zoe in grade 2, and Jim in grade 5. So the answer is: Anna, Barb, Charlie, Alex, Peter, Zoe, and Jim."

Note that all our students only have one name (it's a small town, what do you want?), and each student cannot be added more than once to a grade or the roster. If a test attempts to add the same student more than once, your implementation should indicate that this is incorrect.


Source

A pairing session with Phil Battos at gSchool
Edit via GitHub The link opens in a new window or tab
Tcl Exercism

Ready to start Grade School?

Sign up to Exercism to learn and master Tcl with 124 exercises, and real human mentoring, all for free.