第26講 n進数の演算---その2 減法
第1話 引き算の規則
n進数の引き算は、
10進数と同じく、小さい方から大きい方を引いたときには、
負の数になります。
足し算のときと同じで、
配列
int d[10000],e[10000];

を用意しておき、大きい方をdに小さい方をeに代入するようにして、
もし、b[i]の方が大きいときには、
先頭に-を付けることにします。
ですから、これからは大きい方から小さい方を引くという条件下で考えます。
この仮定のものとでは、
2進数の引き算規則は
10-1=1
1-0=0
1-1=0
0-0=0
のみとなります。
3進数なら
10-1=2
等です。

例えば、2進数の引き算
101
(2)-11(2)
を計算してみますと、
p

o
では、もう少し複雑な例を出しましょう。
101101(2)-11011(2)
i
1-1から0です。
u
0から引けないので10-1=1
1つ上の位は0になっています。
ym
すでに1は0になっていますから、
0-0で0となります。
t
1-1から0です。
r
最後は10-1=1
です。
以上で計算終了です。
次は,5進数をやってみましょう。
321404(5)-43021(5)
e
4-1から3です。
en
0から2は引きないので、上から1つ借りてきて
10(5)-2(5)=(1×5+0)-2=3です。
b
1つ貸したので3-0=3です。
vc
1から3は引けないので、上から1つ借りてきて
11
(5)-3(5)=(1×5+1)-3=3です。
x
1つ下に貸してしまったので、
1-4ですがこれも引けないので、
上から1つ借りてきて、
11(5)-4(5)=(1×5+1)-4=2です。
z
最後は1つ貸してしまったので3→2となっています。



それでは、皆さん
次の引き算を実行してください。
① 101011(2)-11101(2)
② 21021(3)-201(3)
③ 430213(5)-34201(5)
④ 6543210(7)-5646634(7)
⑤ 325647(8)-23667(8)


プログラミングにおいては、敵を知ることが必要です。
手で計算して、対戦相手の本質を知って、
初めて攻略できます。





第25講第13話へ 第2話へ

a

eclipse c++ 入門講義第1部へ

eclipse c++ 入門講義第2部へ


魔方陣 数独で学ぶ VBA 入門
数独のシンプルな解き方・簡単な解法の研究
VB講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 C++ 入門 基礎から応用まで第1部
eclipse java 入門
java 入門 サイト 基礎から応用まで
VC++ C言語 C++ 入門 初心者 基礎から応用まで
本サイトトップへ