小學

小學

中等

說明

給定學生的名字以及他們所屬的年級,為學校建立一份名冊。

最後,你應該要能夠:

  • 把學生的名字加入某個年級的名冊:
    • 「把 Jim 加入 2 年級。」
    • 「好的。」
  • 取得某個年級中所有學生的名單:
    • 「2 年級有哪些學生?」
    • 「目前只有 Jim。」
  • 取得所有年級、所有學生排序後的名單。 年級應該依 1、2、3 等順序排序,同一個年級內的學生則應該依名字的字母順序排序。
    • 「現在有誰註冊就讀?」
    • 「讓我想想。 1 年級有 Anna、Barb 和 Charlie,2 年級有 Alex、Peter 和 Zoe,5 年級有 Jim。 所以答案是:Anna、Barb、Charlie、Alex、Peter、Zoe 和 Jim。」

請注意,我們的學生都只有一個名字(這是個小鎮,不然你想怎樣?),而且每個學生在同一份名冊或同一個年級裡都只能加入一次。 如果測試嘗試把同一個學生加入超過一次,你的實作應該指出這是錯誤的。

在 Wren 中排序字串

Wren 仍是一門非常年輕的語言:有些在其他語言裡或許很常見的功能,目前還沒實作。其中一項就是排序字串的能力。

Wren 的 List sort 方法會明確使用<比較。String 並沒有實作<(_)。

這個練習的挑戰之一,就是實作一種排序字串陣列的方法。

參考資料:


出處

與 Phil Battos 在 gSchool 的一次結對練習
透過 GitHub 編輯 連結會在新視窗或分頁中開啟
Wren Exercism

準備好開始 小學 了嗎?

註冊 Exercism,透過 117 個練習 和真人引導來學習並精通 Wren,全部免費。