欲しい機能を考えよう

まずこの席替えアプリに搭載する機能を考えます!

目的は「先生にバレずに自分たちの希望通りの席にすること」です。
キーとなるのは”先生にバレない”と”自分たちで席を決める”ことです。
それぞれにわけて考えていきます。

ヤラセ部分

先生にバレずに席を決めるためには、事前に席を決め順番通りに名前を入力しておく必要があります。
そのため、先生のいないところで入力したのち、コンソールをクリアしてもう一度偽の席数と名前を入力する必要があります。

ヤラセ入力 8~16行
名前をZの向きになるように順に入力していきます。この部分は先生に見られてはいけないのでコンソールをクリアします。

カモフラージュ 18~25行
このままだとまっさらなコンソールからいきなり席順が出てくるため、席数や名前などの個人情報流出を疑わなければいけません。そのため、カモフラージュとして全く関係のない変数に席数や名前を入力していきます。

万が一に備えて

備えあれば憂いなし 8,27~33
もしこのアプリを先生が気に入り、遊びだしたらどうなるでしょうか。
ヤラセ機能がバレて一瞬で席を戻されるはずです。せっかく気になる子の隣に座れたのに、それはとても残念なことです。
念には念を、ヤラセモードは秘密のキーを入力したとき起動するようにしました。7行目のように最初の画面で"sbba"という文字列が入力されたときのみ起動します(ちなみに"sbba"は初代ポケモンでミュウを手に入れる裏技のコマンドの一部)。
指示通りEnterキーを押された場合や、"sbba"以外の文字列が入力された場合は普通の席替えアプリとなります。これで先生にバレる確率はぐっと下がりました!

席の割り振り

席を割り振り表示させる 41~50行
縦をxが、横にyが代入されたとします。この場合横並びのy個の席が縦にx行ある。と考えます。そのため縦の席数でwhile文を回します。
リスト名[x:y]~リスト内のx番目からy番目の情報を抽出する~
上記の機能を使用し変数namesにy人分の名前を代入し表示させます。
これをx回繰り返すことにより席順を表示しています。