小学校

小学校

初級

説明

生徒の名前とその学年をもとに、学校の名簿を作成します。

最終的には、次のことができるようになります。

  • ある学年の名簿に生徒の名前を追加する
    • 「Jimを2年生に追加してください。」
    • 「OK。」
  • ある学年に在籍するすべての生徒の配列を取得する
    • 「2年生にはどんな生徒がいますか?」
    • 「今のところ、Jimだけです。」
  • すべての学年のすべての生徒を並べ替えた配列を取得する。学年は1、2、3…の順に並べ替え、同じ学年の生徒は名前のアルファベット順に並べ替えます。
    • 「今、学校に在籍しているのは誰ですか?」
    • 「そうですね。1年生にAnna、Barb、Charlie、2年生にAlex、Peter、Zoe、5年生にJimがいます。つまり、答えはAnna、Barb、Charlie、Alex、Peter、Zoe、Jimです。」

なお、生徒の名前はみんな1つだけです。(小さな町ですから、仕方ないですよね?)

さらに挑戦したい人へ

テストが通って、コードもきれいになりましたか? よければ、次のようなことにも挑戦してみてください。

  • 可変のデータ構造を持つ言語で取り組んでいて、書いた実装が外部のコードから学校の内部データベースを直接書き換えられるようになっているなら、それを防ぐ方法を考えてみてください。追加のテストを自由に書いてもかまいません。

その後、提出した解答へのコメントで感想を共有してください。この実験でコードは良くなりましたか? 悪くなりましたか? 何か学べたことはありましたか?


出典

gSchoolでのPhil Battosとのペアプログラミングセッション
GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
Delphi Pascal Exercism

小学校を始める準備はできましたか?

Exercismに登録すれば、76個の演習、そして本物の人間によるメンタリングとともに、Delphi Pascalを学んでマスターできます。すべて無料です。