Kurzusok
/
Factor
Factor
/
Feladatok
/
Általános iskola
Általános iskola

Általános iskola

Közepes

Utasítások

Adottak a tanulók nevei és az évfolyam, amelybe járnak; készíts névsort az iskolához.

A végére ezeket kell tudnod:

  • Hozzáadni egy tanuló nevét egy évfolyam névsorához:
    • „Add hozzá Jim-et a 2. évfolyamhoz.”
    • „Rendben.”
  • Lekérdezni egy évfolyam összes beiratkozott tanulójának listáját:
    • „Kik járnak a 2. évfolyamba?”
    • „Egyelőre csak Jim van.”
  • Lekérdezni az összes évfolyam összes tanulójának rendezett listáját. Az évfolyamokat 1, 2, 3 stb. szerint kell rendezni, az egyes évfolyamokon belül pedig a tanulókat név szerint ábécésorrendben.
    • „Ki van most beiratkozva az iskolába?”
    • „Hadd gondoljam meg. Az 1. évfolyamban Anna, Barb és Charlie van, a 2. évfolyamban Alex, Peter és Zoe, az 5. évfolyamban pedig Jim. Tehát a válasz: Anna, Barb, Charlie, Alex, Peter, Zoe és Jim.”

Vegyük figyelembe, hogy minden tanulónknak csak egy neve van (kisváros, mit vártál?), és egy tanulót sem lehet egynél többször hozzáadni egy évfolyamhoz vagy a névsorhoz. Ha egy teszt ugyanazt a tanulót próbálja többször hozzáadni, a megvalósításodnak jeleznie kell, hogy ez hibás.

Szavak

Definiálj egy school tuple-t a névsor tárolására (az, hogy hogyan tárolod benne a tanulókat, rajtad áll), majd valósítsd meg az alábbi szavakat.

  • <school> ( -- school ) — egy üres iskola létrehozása.
  • add-student ( school name grade -- ? ) — a name-et hozzáadja a grade-hez. Sikeres hozzáadás esetén t-t ad vissza, f-et pedig akkor, ha a name-et már hozzáadták (ehhez vagy bármely más grade-hez); ilyenkor a névsor változatlan marad.
  • roster ( school -- names ) — az összes tanuló, évfolyam szerint, majd név szerint ábécésorrendben rendezve.
  • grade ( school n -- names ) — az n évfolyam tanulói, név szerint ábécésorrendben rendezve.

Forrás

Egy páros programozási foglalkozás Phil Battos-szal a gSchool-ban
Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
Factor Exercism

Készen állsz elkezdeni a(z) Általános iskola feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Factor nyelvet 47 fogalom163 feladat segítségével, valódi emberi mentorálással, mindez ingyen.