1)課題
右側の数字は、カーペット上の番号を表しています。各入力データに対し、その座標(X, Y)を右側に運んで下さい。
例えば左側の数字が6の場合、右に運び出してほしいのは2と1になります。
2)考え方
問題文では, 数字が6の場合, 座標はX=2, Y=1と書いてあります. XとYの求め方は次のようになります.
- Xは数字6を4で割った余り
- Yは数字6を4で割った商
入社26年目で割り算をしました. その結果を使えば良さそうです.
3)実装
入社26年目で作成したプログラムをコピーし貼り付けます.
ここからコードを修正していきます. 割る数Bは, カーペット15番の4となります. また, カーペット9番の「ZERO」はカーペット14番になります.
修正しました. カーペット1番にあったBをカーペット15番に付け替えました. またカーペット9番の「ZERO」をカーペット14番に移動しています. 当然, COPYFROMコマンドなどのアドレスも変更しています.
また, コピー元のコードでは, 左のコンベアから2枚目のパネルを取り出し, カーペットに配置していましたが, これに関するコードは取り除いています.
左のコンベアから12を取り出し, 割り算をしました. 上司に怒られていますが, 割り算はできており, 「Q」と「A」のパネルを右のコンベアに運べば課題をクリアーできます.
カーペットのラベルを問題の位置を反映し, 「A」を「X」に, 「Q」を「Y」に付け替えました. 割り算終了後に, 「X」と「Y」のパネルを右のコンベアに運んでいます.
課題をクリアーできました.
0 件のコメント:
コメントを投稿