数学A新課程の記数法についての質問です。

参考書に書いている意味はわかるのですが、問題を解くテクニックは使えるけれど本質が理解できていないという状態です。

位取り記数法は「ある基準の数nを設けて、一つの位につきn-1に達すれば次の位に上がる」という理解でいいでしょうか。

また、これを踏まえて10進法で表された数を2進法や3進法で表す方法と、逆に2進数や3進数で表された数を10進数で表す方法の考え方を教えていただけますか。
前者は変換したい数で割っていき、余りを並べる、後者は変換したい数の累乗を位にかけていく、という「解き方」はわかるのですが、どうしてそうなるのかわかりません。

難しく考えすぎているのかもしれませんが、お願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

つぎの事を理解すると本質が分かると思います。



進法を変換する場合、

(1)変換したい数で割っていき、余りを並べる
(2)変換したい数の累乗を位にかけていく

という2つの方法のどちらでも行うことができます。ただ、私たちは10進法になれているため、10進法から他の進法へ変換するときは(1)、逆の時は(2)の方がやりやすいというだけです。

例えば、10進法の12を2進法に変換する場合、

(1)であれば、
12 / 2 = 6 ---余り0
6 / 2 = 3 ---余り0
3 / 2 = 1 ---余り1
1 / 2 = 0 ---余り1
だから 1100

(2)であれば
12(つまり各桁の数が2進法表記で1, 10)を2進法表記での1010進法に変換することになるので
1 x (1010)^1 + 10 x (1010)^0
= 1 x 1010 + 10 x 1
= 1010 + 10
= 1100

となり(2)は分かりにくいでしょう。

また、 2進法の1100を10進法に変換する場合
(1)であれば
1100 / 1010 = 1 --- 余り10(10進法で2)
1 / 1010 = 0 --- 余り1(10進法で1)
だから12

(2)であれば
1x2^3 + 1x2^2 + 0x2^1 + 0x2^0
= 1x8 + 1x4
= 8 + 4
= 12

となり今度は(1)の方が分かりにくいでしょう。

従って、一般的に

10進法→10進法以外の場合と
10進法以外→10進法の場合

で方法を使い分けているわけです。
    • good
    • 0
この回答へのお礼

お礼が大変遅くなりました。

変換したい数で割っていくということは、その変換したい数を「ひとかたまり」で見ていけばいいわけですね。
そして直す時はその逆演算をすればいいと。
とてもわかりやすく、大変助かりました。

ありがとうございました。

お礼日時:2015/04/15 14:43

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qn進数→10進数  10進数→n進数 の変換ってできる?

10進数を2進数にするやりかたはわかるんですが、
2進数→10はイマイチわからないです。
その他10進数→12進数とか、その逆とか、なにか公式とかないんでしょうか?

Aベストアンサー

10進数、2進数に限らず、n-進数(n≧2の自然数)の意味(定義)をしっかり理解すれば、どんな変換でもできるようになるでしょう。
ただし単純な公式ということではなく、幾つかのステップを踏む計算法が作れる、ということになります。

ここから、「3の5乗」を「3^5」のように書くことにして……
例えば2進数から8進数の例を考えて見ましょう。
100101(2)を8進数で表すとどうなるか。
6桁の2進数ですから
100101(2)
= 1×2^5
+ 0×2^4
+ 0×2^3
+ 1×2^2
+ 0×2^1
+ 1×2^0
(左の数字が2進数の各桁の数、真ん中が「2進数」の2、右端が桁を表す数です。この真ん中の数を8にして、全体の量が変わらなければいいわけ。)
=32+4+1=37(←この行は10進数)
= ?×8^n(何桁か分からないのでnとしてみました)
+ ……
+ ?×8^0(?はすべて0~7の整数)
さて、8^2=64 は問題の数37より大きくなってしまうので、n=1です。
= ?×8^1
+ ?×8^0
= 4×8^1(←ここだけだと32、問題の37まで5足りないので、次の行……)
+ 5×8^0
= 45(8)
となります。

10進数、2進数に限らず、n-進数(n≧2の自然数)の意味(定義)をしっかり理解すれば、どんな変換でもできるようになるでしょう。
ただし単純な公式ということではなく、幾つかのステップを踏む計算法が作れる、ということになります。

ここから、「3の5乗」を「3^5」のように書くことにして……
例えば2進数から8進数の例を考えて見ましょう。
100101(2)を8進数で表すとどうなるか。
6桁の2進数ですから
100101(2)
= 1×2^5
+ 0×2^4
+ 0×2^3
+ 1×2^2
+ 0×2^1
+ 1×2^0
(左の数字が2進数の各桁の数、真...続きを読む

Qn進法→m進法への変換

やりなおしのSPI問題に頭を痛めています。10進法→n進法、n進法→10進法、というやり方はそれぞれ理解できますが、以下のような応用になると、うまくできません。どなたか、宜しくお願いします!

例題1
3進法で3桁の数は何個あるか。
(書き出していくとわかるのですが、それ以外に何か公式のようなもので求める方法がありますでしょうか。他の進数になるとたちまち困ります。)

例題2
3進法の112201は5進法でいくらか。
(いったん10進法に直さずに、n進法→m進法への変換をダイレクトに行なえ、効率的でわかりやすい方法はありますでしょうか。)

Aベストアンサー

ヒント
例題1
一応正整数(固定小数点)と仮定します。
3進法の最大数は(222)3=2*3^2+2*3^1+2*3^0 =18+6+1=25
最小は(000)3=0ですから何個か分かりますね?

例題2→3進法→10進法→5進法
(112201)3=4*3^4+8*3^2+1=4*9^2+8*9+1=397
=79*5+2
=(15*5+4)*5+2
=((3*5+0)*5+4)*5+2
=>5進法

>n進法→m進法への変換をダイレクトに行なえ、効率的でわかりやすい方法はありますでしょうか。
一般的には良い方法ありません。
ただし、
2進法-4進法,2進法-8進法,2進法-16進法
3進法-9進法
4進法-16進法
5進法-25進法
のようにn進法と(n^k)進法の間ではダイレクトに変換できます。
ですから、
計算機のソフトや情報処理を扱う技術者の間では
2進法-8進法,2進法-16進法
が良く使われてきたし、
また2進法と10進法の変換を見かけ上で行う2進化10進法やV4のIPアドレス(32ビットの2進数)をドット区切り10進数の4組で表すことが行われたりしているわけです。

これらは一般的にn進法の変換が簡単にいかないために変換しやすい変換だけあつかったり、見かけ上2進数を10進数との関連付ける便法が採用されているわけです。
決して質問者さんだけが任意のn進法を別のm進法に変換するのに困っているわけではないですね。

ヒント
例題1
一応正整数(固定小数点)と仮定します。
3進法の最大数は(222)3=2*3^2+2*3^1+2*3^0 =18+6+1=25
最小は(000)3=0ですから何個か分かりますね?

例題2→3進法→10進法→5進法
(112201)3=4*3^4+8*3^2+1=4*9^2+8*9+1=397
=79*5+2
=(15*5+4)*5+2
=((3*5+0)*5+4)*5+2
=>5進法

>n進法→m進法への変換をダイレクトに行なえ、効率的でわかりやすい方法はありますでしょうか。
一般的には良い方法ありません。
ただし、
2進法-4進法,2進法-8進法,2進法-16進法
3進法-9進法
4進法-16進法
5...続きを読む

Q4桁の自然数nの千の位、百の位、十の位、一の位

4桁の自然数nの千の位、百の位、十の位、一の位の数字を、それぞれa,b,c,dとする
次の条件を満たすnの個数を求めよ
(1)a>b>c>d
何ですが解答は 
10個の整数0、1、2、…、9から異なる4個を取り出して、大きい順にa,b,c,dとおけばよいから
10C4=210(個)
 
とありました
私は10C4は10個の整数から異なる4個を取り出すという意味はわかるんですが

なぜ大きい順にa,b,c,dとおけるのかがよく分からないです

10C4に大きい順にa,b,c,dと並べるという意味まで入っているとはとても思えないです

Aベストアンサー

こんにちは。

たとえば、0から9までの数字が書かれた10個のボールがあるとして、
その中から抽選で4個取り出したら、7と2と8と0だったとします。
そしたら、その後で、a=8、b=7、c=2、d=0 と決めればよいです。

つまり、10個から4個の組み合せを選びさえすれば、4つのうちのどれがそれぞれa、b、c、dに割り当てられるかは必ず1通りに決まってしまうので、10個から4個選んだ時点で実質的に「仕事」は終わっているということです。

Q補数と進数

補数というものがよくわかりません。
参考書を読んだのですが、いまいち理解できませんでした…。
(0111 1110)※2(小さい2は※2と表記します)の2の補数を求めろ、という問題は、どのようにして解けばよいのでしょうか。

また2進数についてなのですが、2進数を用いて(38+18)を計算せよ、という問題があります。
これは、(3×2の1乗+8×2の0乗)+(1×2の1乗+8×2の0乗)
=6+8+2+8=14.

…で答えは14??と思ったのですが、答えもないのでわかりません;
全然違っていたら是非解き方を教えてください。

Aベストアンサー

No.1です。いやぁ、言葉足らずでスイマセン(^^;

(36)※10=(100100)※2
これの2の補数は(011100)※2
2の補数の求め方はわかりますよね

(56-36)というのは(56+(-36))
ですね?ここは大丈夫でしょうか?

さて、2の補数とは、
「変換前の数に、マイナスを掛けたもの」と同じような働きをします。

つまり
「56-36」=「56+(36の2の補数)」
という関係があります。
わかりやすく絞ると
-36=36の2の補数
です。だから
(-36)※10=(011100)※2

そして、計算してみると確かに(118-72)※10=(1010100)※2になります。

さて、
「補数を使った足し算をしたら、計算結果の一番左の数を無視するのが特徴」
なんです。

質問者さんが苦労して求められた(1010100)※2
一番左の数を見ないで下さい
そうすると
2^4+2^2=20
ですよ

QN進数の一般式について

N進数の一般式で
(N)r=dnrn+dn-1rn-1+..........+d1r1+d0r0

というのがありますが、ここのdnの規定は何か?と言う問題に
困っております。
自分では、Nと言う整数の数字の左から、dn,dn-1,dn-2,........d1,d0
である。と書いて提出したのですが説明不十分とかかれて返ってきました。
他に、どのような説明を加えたらよろしいのでしょうか。
教えてください。

Aベストアンサー

d[n]が何になるか具体的に示した方がいいでしょうね。
例えば10進数で23は2進数で10111ですよね。
なのでd[5]=1,d[4]=0,...となりますね。

しかし、単にNという数字の左からといっても、10進数で書いてしまうと左から2,3だし、3進数で書くと左から2,1,2だし、となりますね。

なのでp進数で書いたときにd[n]=[(N mod p^n)/p^(n-1)]
みたいに具体的に書いた方がいいと思います。
ちなみに上に挙げた式は一般にNをp進数展開したときのn桁目になってるはずです。(たぶん)

補足
A mod B はAをBで割ったときの余り。
p^n はpのn乗。
[x]はガウス記号(xを超えない最大の整数)です。


人気Q&Aランキング

おすすめ情報