2021/09/18

ヒューマン・リソース・マシーン 入社1年目−運び屋さん

1)課題

コマンドを組み合わせ、左のコンベアにあるパネルを右のコンベアに運んでください。

[INBOX]は、左コンベアからパネルを1つ手に取ります。

[OUTBOX]は、手元のパネルを右のコンベアに運びます。

2)解説

この課題では, ヒューマン・リソース・マシーンの遊び方を学びます. ヒューマン・リソース・マシーンでは, 左のコンベアからパネルを取り出します. コマンドを組み合わせてパネルを加工し,右のコンベアに運びます. 右のコンベアに運んだパネルが課題を満たせば, クリアーとなります. 

この課題では, パネルを加工せずに, そのまま右のコンベアに運ぶだけです. INBOXコマンドとOUTBOXコマンドの組み合わせを2つ並べて実行してみます. 三角形のボタンに「プログラムが完成したらここを押して実行」と表示してあります. このボタンを押すとプログラムを実行します. ここでは, 実行ボタンの右にある「ステップ実行」ボタンを使います. 

「ステップ実行」を使うと, コマンドを一つ実行してプログラムを停止し, 次に「ステップ実行」ボタンを押すまで待ってくれます. ステップ実行を使うことで, コマンドの動作を詳しく調べられます. 「ステップ実行」使って, INBOXコマンドとOUTBOXコマンドの動作を確認してみましょう.

「ステップ実行」を開始しました. 緑色の三角が次に実行するコマンドを示しています.

INBOXコマンドを実行しました. 左側のコンベアからパネルを1枚取り, 頭上に掲げています.

OUTBOXコマンドを実行しました. 持っていたパネルを右のコンベアに置きました.

再び, INBOXコマンドを実行しました. 2と書いたパネルを取り出しました.

続けて, OUTBOXコマンドを実行しました. 持っていたパネルを右のコンベアに置きました. 

この時点で実行するコマンドが無くなったのですが, 続けてステップ実行をしてみました. 実行するコマンドが無くなったので, プログラムは停止します. プログラムが停止した時に, 右のコンベアのパネルが課題を満たしていないので上司が怒っています. 

上司の要求に応えるためには, INBOXとOUTBOXの組み合わせがもう一つ必要です. このプログラムを実行すると, 課題をクリアーできます. 

3)補足:INBOXとOUTBOXの細々としたこと

ここまでできれば, 次の課題に進んでも良いのですが, もう少しINBOXとOUTBOXを調べてみます.

プログラムを開始する前, 左のコンベアに4, 7, 8と書かれたパネルが乗っています. INBOXコマンドを連続して実行したらどうなるかを調べてみます.

INBOXコマンドを続けて2回, 実行してみました. 7と書いたパネルを持っていますが, 4と書いたパネルが見当たりません. 1回目のINBOXコマンドを実行すると4と書いたパネルを持ちますが, 2回目のINBOXを実行すると, 左のコンベアからパネルをとるために, その時に持っていたパネルを捨ててしまいます. 

同じようにして, OUTBOXコマンドを続けて2回, 実行してみました. OUTBOXコマンドを実行すると, 持っているパネルを右のコンベアに置きます. 持っていたパネルをコンベアに置いたので, OUTBOX実行後には何もパネルを持っていません. パネルを持たずにOUTBOXコマンドを実行すると, 『「空のデータ」だよ!』と上司に怒られてしまいます. 

4)まとめ

  1. この課題では, ヒューマン・リソース・マシーンの遊び方を学びました.
  2. INBOXコマンドとOUTBOXコマンドの働きを学びました.
  3. ステップ実行を使うことでプログラムの動きをコマンドごとに確認できます.
  4. INBOXコマンドを実行する時, パネルを持っていれば, そのパネルは捨ててしまいます.
  5. パネルを持たずにOUTBOXコマンドを実行すると上司に怒られます.

0 件のコメント:

コメントを投稿

ヒューマン・リソース・マシーン 入社41年目−並べ替えよ

目次 1)課題 0を終端とした文字列がいくつか流れてきます。各文字列に対してソート(並べ替え)を行い、小さい順(昇順)に右側へ運んでください。 2)状況の確認 この問題では, 予めコードが入っています. このコードを実行して, 何をするコードなのか確かめます.  左のコンベアから...