#16 Continuing story of elementary mathematics-2

 [公開]
icon Naoya Matsuzaki が 2018/07/24 1:36 に投稿 ( icon Naoya Matsuzaki が 2018/08/18 12:47 に編集 <更新履歴> )
  投稿を編集(サインイン)
  ストック
  アンケート回答

  目次

Continuing story of elementary mathematics

ん・・・、これって補数じゃなくてもいいんじゃね?

引き算を足し算にする方法は
  s 2= x + ( 10 − y) ー 10
だった。この式を見ていて思ったのだが、10 を足して、また10 を引いているだけなのだから実は補数なんて使わなくてもいいんじゃない、と。10 じゃなくて、いやおれは7が好きなんだよ、7にしちまえ、ということで10 を7にしてみる。
  s1 = x + ( 7 − y)
  s 2= x + ( 7 − y) ー 7

xの値はn桁(ここでは1桁ね)の最大数の9とすると、こんな感じ。

7 − ys1s2
-2
-1
...
14
15
16

おぉ、s2は確かにx ーyになってるぞ。しめしめ。
では補数を使った場合は?
  s1 = x + ( 10 − y)
  s 2= x + ( 10 − y) ー 10
とすると

yの10の補数s1s2
10
11
...
17
18
1019

補数を使った場合も、俺流の場合でもs2の値は同じだけどもs1は異なる。
補数を使った場合、s1の結果は当然、s2の結果よりも10 だけ大きい。でもnの桁(ここでは1の位)だけ見ればs1もs2も同じ。10 を法とした演算と考えればs2で行っているような10 を引く、ということもする必要がない。
一方、俺流で7を使った場合、s1の値を見てもあまり得られるものは無さそう。

なるほど。わざわざ桁数を気にして補数を使ってるのはこのためなのね。

負数の世界へ

ここまではxの値を9(n桁の最大数の9)として考えていた。なんでかっていうとxを9未満にすると答えがマイナスになってしまう場合があるから。
ということでxを9未満、2とかにしてみよう。
xを2として前回と同じことをしてみる。
  s1 = x + ( 10 − y)
  s 2= x + ( 10 − y) ー 10

yの10の補数s1s2
-7
-6
...
-2
-1
10
11
1012

yが3以上の場合は答え(s2)は負数になる。で、s2が負数だとs1は10 よりも小さくなる。
s2が0以上であればs1を10 を法とした演算とすればよさそうだが、s2が-1ならs1は9。
-1が9で、-2が8ってどう解釈すれば良いのよ。

そもそも誰が負数は”ー”ってつけなきゃいけないって決めたの?

昔、「グラスの底に顔があってもいいじゃないか」って言ったげーじゅつ家がいたけど9はマイナスなんだってことにしてもいいじゃないか。
-1はー1でないといけないという法律は(多分)ないことだし、ここは耐えがたきを耐え忍び難きを忍び9はー1なんだ、ってことにしてしまおう。
s1が10 より小さいならそれは負数だ、と。
9がー1で、8がー2で、7が・・・2がー8で、1がー1。

いや、まて。s1を10 を法とした演算として答えが5だったとしたらこれはプラスなのか、マイナスなのか区別つかんじゃないか。
そもそも、桁数nを1として考えている訳で「9がー1で、8がー2で、7が・・・2がー8で、1がー1」とか言っていたら1から9まで全部マイナスの値になってまうよ。

という訳で次回はマイナスの値にけりをつけて減基数まで考えるぞ!!

 添付ファイル     - [0]


 コメント追加