スマホアプリ

Human Resource Machine攻略のヒント(YEAR1〜14)

読了時間: 約442
Human Resource Machine

先日、私はプログラミングパズルゲームアプリ「Human Resource Machine」を購入しました。
早速プレイしてみたところこれが面白くてですね。
とりあえず、一気にYEAR14までをクリアしましたよ!

プログラミングパズルアプリHuman Resource Machineが面白い!

普段、プログラミングをしている私でも、プログラムの最適化をしようとするとかなり苦戦しました…。
これはプログラミングに触れたことが無い方にとっては相当難しいのではないですかね?

そこで、今回の記事では…。
Human Resource MachineのYEAR1からYEAR14までの攻略ヒントをまとめておきます。
おそらく、課題自体はクリアできるけど、サイズ目標とステップ目標がクリアできないという方がいるでしょう。
そんな方のために、具体的にどうすれば良いのかについての考え方を提示します。
ぜひ参考にしながら、目標達成を目指してみてくださいね。

Human Resource Machineとは?

Human Resource Machineというのは、簡単に言うとプログラミングパズルゲームアプリです。
指定された命令(inbox/outbox/add/sub/jumpなど)を使ってプログラムを作成・実行して、各ステージごとに出される課題をクリアしていくというもの。
ちなみに、有料アプリで値段は600円。

それぞれの課題には、サイズ目標とステップ目標というものが設定されています。
サイズ目標は、指定された行数以内でプログラムを組むと達成。
ステップ目標は、指定されたステップ数以内でクリアすると達成となります。
これらの目標は必須ではないですが、できれば達成できるようにすると理想的ですね。

最初の頃は、それほど難しくはありませんが…。
ステージが進むにつれて、使える命令が増えていき課題の難易度も上がっていきます。
サイズ目標とステップ目標をクリアしようとすると、その難易度はかなりのものになりますよ。
まさに論理的思考力が試されます。

Human Resource Machineのダウンロード

Human Resource Machineは、以下のリンク先からダウンロードできます。
どうやら、現時点ではiOSだと600円、Google Playだと540円のようですね。

Human Resource Machine

Human Resource Machine

Experimental Gameplay Group¥600posted withアプリーチ

Human Resource Machine攻略方法のヒント

それでは、本題に入ります。
以下から、Human Resource Machineの各ステージの課題に対する攻略方法のヒントをまとめていきます。
既にサイズ目標やステップ目標もクリアしているところは読み飛ばしてもらって構いませんよ。

YEAR 1

これは特に問題無いと思います。
inboxでパネルを持ち上げ、outboxで右側に運ぶ。
これを3回繰り返せば良いです。

YEAR 2

YEAR 1の応用版です。
jumpを使ってループを作りましょう。
3行でクリアできるというのはすぐできると思います。

問題はステップ目標です。
実は、3行のプログラムではステップ数が若干多くなります。
ここはあえて、3行以上のプログラムで組んでみましょう。

YEAR 3

この課題では、inboxは使いません。
単純に、copyfromの使い方を学ぶための課題です。

Bは4、Uは0、Gは3の位置にありますよね?
それぞれの位置毎に対してcopyfromをしてから、outboxで運びます。

YEAR 4

2つ毎に逆順にしていく課題。
最初に持ち上げたパネルは、一旦レジスタ(画面中央)に保存しておく必要があります。
そして、次のパネルを持ち上げたら、それを直接outboxしてしまいます。
その後、さきほど保存していたパネルを改めてoutboxします。
この流れをループにすれば良いですね。

YEAR 5(コーヒーブレイク)

これは休憩ステージなので課題がありません。

YEAR 6

ここからaddが追加されましたね。
早速、このaddを使う課題です。

まず、1つ目のパネルをレジスタに保存。
そして、2つ目のパネルを持っている状態でaddします。
後はそれをoutboxで運ぶ。
この流れをループ化すればOKです。

YEAR 7

この課題から、jump if zeroが追加されます。
jump if zeroは、手元のデータが0ではない時に次の行を実行するというのがミソです。
つまり、jump if zeroの次の行にoutboxを持ってくれば…。

YEAR 8

ここから、数学的な考え方が必要になってきます。
与えられた数字を3倍にするには…。
まず、レジスタに数字を保存しますよね。
そして、足し算をしていきますが、何回同じ数字を足すと3倍になりますか?
それが分かれば問題ないですね。

YEAR 9

今度は、YEAR 7の逆(?)バージョンです。
課題自体をクリアするのは簡単だと思います。

問題になるのはステップ目標ですかね?
ヒントとしては、最初の行に必ずinboxを使うとは限らない。
思い切って、jumpしてみましょう!

YEAR 10

数字を8倍にするという課題です。
最も単純なのは、addを何回も使うことですが…。
この課題では、addは3回で済みます。

手元の数字がaだとすると…。
一度addすると2倍になりますよね?
それをレジスタに保存して、もう一度addすると4倍になります。
これをもう一回やれば8倍です。
出た答えはoutboxすればOK。

a + a = 2a
2a + 2a = 4a
4a + 4a = 8a

YEAR 11

この課題はsubの練習ですね。
2つの数字の(B-A)と(A-B)を計算するというもの。

この2つの数字は、まずレジスタに保存します。
そして、subをするのですが…。
手元の数字からレジスタの数字を引くことに注意です。
それさえ分かれば、後は問題の意図通りにプログラムを組めば行けるでしょう。

YEAR 12

ちょっとした数学的考え方が必要になる課題です。
数字の40倍を作るというもの。

最初は、数字の8倍を作ります。
そして、後はそれを何度か足していけば求められますよね。

a + a = 2a
2a + 2a = 4a
4a + 4a = 8a
8a + 8a + 8a + 8a + 8a = 40a

YEAR 13

数字の比較をする課題。
同じ数字かどうかを判定します。

数字が同じ場合、それらの数字の差は0になります。
この時に、数字をoutboxすれば良いのですが…。
素直に解こうとすると、おそらく目標が達成できないと思います。
まずは最初にjumpしてみましょう。
されば道は開かれん。

YEAR 14

数字の大小比較の課題。

数字の差が正か負かで場合分けすれば良いですね。
クリアすること自体は、それほど難しくはないと思います。
問題は、サイズ目標とステップ目標です。

ここでのポイントは、一度subした数字をaddすると元の数字に戻るということ。
これを使うと、レジスタに数字を保存する処理が一部省けます。
後は、jumpの先をどこにするのが良いかですね…。

まとめ

今回の記事では、プログラミングパズルゲームアプリ「Human Resource Machine」のYEAR 1〜14までの攻略方法のヒントについてまとめてみました。
いかがでしょうか?
参考になったでしょうか?

ここまでの課題で、個人的に悩んだのはYEAR13と14ですね。
クリア自体はできるのですが、サイズとステップの目標達成が大変でしたよ。
でも、試行錯誤をした結果、なんとか無事に達成できました!
諦めなければ、あなたもきっとできるはずです!

引き続き、ステージの攻略を進めていきます。
最後の方の課題は難しそうですが…。
気合を入れて解いていこうと思います。

Human Resource Machine

Human Resource Machine

Experimental Gameplay Group¥600posted withアプリーチ

書いた人: 鈴木俊吾(すずしん)
フリーランスのライター・ブロガー・プログラマ。
私の詳しいプロフィールについては、プロフィールページを参照してください。
Twitter: @suzushin7

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です