Q.2のヒント
さて,問題は次の通りでした。
Q.2 「1/10にする」
MR00に0〜99999の任意の整数が入っています。この状態から,MR00の内容を1/10にするプログラムを書いてください。例えば,最初の値が11なら,1.1になるようにしてください。ただし,普通に書くと,MR00 ÷ 10 = Min00 で6ステップかかりますので,工夫して5ステップに収めてください。なお,他のメモリの内容は不定とします。(FX-502P/602P/603Pで動作確認済み)
とりあえず失敗例を挙げてみましょう。
- 1. 掛け算を使う
- MR00 × .1 = Min00 ... 6ステップ ×
- 2. %を使う
- MR00 × 10 % Min00 ... 6ステップ ×
- 3. 対数を使う
- MR00 log - 1 = 10^x Min00 ... 7ステップ ×
- 4. 統計機能を使う
- MR00 Min08 10 Min09 x~(平均) Min00 ... 7ステップ ×
というわけで,上記の例はいずれも5ステップで目的のプログラムを作ることはできませんでした。しかし,実は上の失敗例の中に正解へのヒントが含まれています。上の4つの中から見込みがありそうな方法を選んで,何か細工できないか考えてみてください。(少なくとも4つのうち1つは見込みがないことが直ちにわかるはずです。)
答えを確かめたい方は,メールでどうぞ。(^^)
[ HomePage | FX-602Pのページ ]
PED00725@nifty.ne.jp, ey5k-myhr@asahi-net.or.jp
Last modified 2001/02/27