-PR-
締切済み

n進法

  • 困ってます
  • 質問No.71540
  • 閲覧数496
  • ありがとう数14
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 14% (3/21)

ある数を5進法で示しても、7進法で示しても4ケタであった。この数を3進法で示すと何ケタになるか。

もう、全然わかりません。2進法までは理解しているつもりなのですが…。お願いします!
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全3件)

  • 回答No.1
レベル11

ベストアンサー率 31% (81/257)

計算違いがあるかもしれないのでご自分で確認を! ・5進法で、4桁ということは、125から624の間、 ・7進法で、4桁ということは、343から2400の間、 従って、343から624までの間の数になります。 3^6=729 3^5=243 ですから、 ・3進法で、6桁なら、243から728までで、343から624までという範囲を含みます。
計算違いがあるかもしれないのでご自分で確認を!

・5進法で、4桁ということは、125から624の間、
・7進法で、4桁ということは、343から2400の間、

従って、343から624までの間の数になります。

3^6=729
3^5=243

ですから、
・3進法で、6桁なら、243から728までで、343から624までという範囲を含みます。
関連するQ&A


  • 回答No.2
レベル8

ベストアンサー率 38% (8/21)

2進法というのは0と1の2つの数字を使って様々な数値を表現していきますよね。ちなみに普段我々が使っているのが10進法です。これは0~9までの10個の数字を使っていきます。当然5進法は0~4までの5個の数字を使い、7進法は0~6までの7個の数字を使っていきます。 さて、4桁で表すことのできる5進法は1000~4444までです。7進法は1000~6666までです。そこで、このまま5進法や7進法のままでは ...続きを読む
2進法というのは0と1の2つの数字を使って様々な数値を表現していきますよね。ちなみに普段我々が使っているのが10進法です。これは0~9までの10個の数字を使っていきます。当然5進法は0~4までの5個の数字を使い、7進法は0~6までの7個の数字を使っていきます。

さて、4桁で表すことのできる5進法は1000~4444までです。7進法は1000~6666までです。そこで、このまま5進法や7進法のままでは考えにくいので、一度これを10進法に直します。10進法において、下1桁から順に1の位、10の位、100の位、1000の位…と位が10倍ずつ上がっていくように、5進法では5倍ずつ、7進法では7倍ずつ上がっていきます。したがって、5進法は下1桁から順に1の位、5の位、25の位、125の位…となり、7進法では1の位、7の位、49の位、343の位…となります。

次に、10進法で1234という4桁の数は1の位が4、10の位が3、100の位が2、1000の位が1となっています。したがって、1234=1×4+10×3+100×2+1000×1という形で表すこともできます。
当たり前のようですが、これがn進法を10進法に直すための考え方です。

では実際に、10進法に直してみましょう。5進法の1000は1の位が0、5の位が0、25の位が0、125の位が1ですから、1×0+5×0+25×0+125×1=125となり、これが10進法に直した値となります。同様に、4444は1×4+5×4+25×4+125×4=624となります。よって、4桁の5進法で表すことのできる数値の範囲は10進法で125~624ということが分かります。
同じように7進法においても調べてみると343~2400の範囲であると分かります。これらのことにより、「ある数を5進法で示しても、7進法で示しても4ケタであった」というのは10進法で343~624の範囲のことだと分かるわけです。

では今度は、これらを3進法に直してみて、いったい何桁の数になるのかを調べてみましょう。普通、10進法をn進法に直す場合、割り算の発想を使いその余りに注目して求めます。例えば、10進法の343を3進法に直す場合は
343÷3=114…1
114÷3= 38…0
38÷3= 12…2
12÷3= 4…0
4÷3= 1…1
と行い、最後の計算の商も含めて下から上に読みます。→110201
これが10進法の343を3進法に直した値となります。
同様に10進法の624を3進法に直すと212010となります。
これらのことにより、「この数を3進法で示すと」というのは110201~212010のことだと分かります。

以上のことにより、「何ケタになるか」という問いにたいして6桁というのが正解です。
いかがでしょうか?もし、分かりにくいようであれば、補足するので言ってください。
お礼コメント
Laa-Laa

お礼率 14% (3/21)

ありがとうございました!
大変よ~くわかりました。
また教えてください。
勉強がんばりまっす!(^_^)Ω
投稿日時 - 2001-05-08 16:55:37
  • 回答No.3
レベル12

ベストアンサー率 75% (398/526)

#------  ある数Aの、n進法における整数部の桁数mとの関係は   n^(m-1) ≦ A < n^m と表せます。 (「a^b」は「aのb乗」を表します。)  また、Aをs進法で表したときの整数部の桁数は   [log(s,A)] + 1 と表せます。 (「[a]」は「aを超えない最大の整数」を表します。  また「log(a,M)」は、「aを底とするMの対数」を表します。 ...続きを読む
#------
 ある数Aの、n進法における整数部の桁数mとの関係は
  n^(m-1) ≦ A < n^m
と表せます。
(「a^b」は「aのb乗」を表します。)

 また、Aをs進法で表したときの整数部の桁数は
  [log(s,A)] + 1
と表せます。
(「[a]」は「aを超えない最大の整数」を表します。
 また「log(a,M)」は、「aを底とするMの対数」を表します。
 ちなみに「log(a,M)=X」は「a^X=M」と置き換えることが出来ます。)
#------

 これをこの問題に当てはめると、
  5^3 ≦ A < 5^4
  7^3 ≦ A < 7^4
となり、更に「5^3 < 7^3」、「5^4 < 7^4」なので、Aの範囲は
  7^3 ≦ A < 5^4
となります。

 Aを3進数で表した場合の桁数が知りたいので、3を底とするログを取ります。
  [log(3,7^3)]+1 ≦ [log(3,A)]+1 < [log(3,5^4)]+1  …(1)
(「+1」は全ての項に含まれるので、ここで消去します。)

 ログは計算すると大変なのですが、ここでは整数部しか見ないので、3の累乗を書き出して、7^3と5^4がどこに当てはまるかを探せばよいことになります。

  log(3,9)=2 , log(3,27)=3 , log(3,81)=4 , log(3,243)=5 , log(3,729)=6 , …

 7^3=343 , 5^4=625なので、(1)の式は
  5 < log(3,343) ≦ log(3,A) < log(3,625) < 6
となります。
 したがって答えは6桁です。紙に書いたのと違うから、ちょっと伝わりにくいかな…。とにかく「n進法」「桁数」ときたら、対数です。
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


新大学生・新社会人のパソコンの悩みを解決!

いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ