• 締切済み

小数の10進法→n進法への変換について

例えば 0.304という10進法の数を5進法に変える時に 5をかけて1の位に出てきたものを並べて5進法の小数に変えますが 自分の使ってる参考書に 0.●●●の0の部分は10進法からn進法に変える時にそのままでいいというように 書かれているのですが 10進法で0.●●●という数でもn進法では1.◎◎◎というようになったりする事はあり得ないのですか? 出来ればその理由も教えてほしいです。 よろしくお願いします。

みんなの回答

  • bgm38489
  • ベストアンサー率29% (633/2168)
回答No.6

一言で言えば、1は同じだから。 十進法だろうが、何進法だろうが、1は同じだから、1より小さいものは、何進法でも1以下になります。

noname#175206
noname#175206
回答No.5

 循環小数0.999…=1なんてありますね。0.999…=0.333…×3=1/3×3=1なんて説明されたりします。  0.999…を別の書き方で言うと、1/10+1/10^2+1/10^3+…という無限数列の和です。これは、無限数列の和の計算により極限値1になります。もし無限回の操作を許せば1に等しく、その表記が循環小数0.999…です。そのため、0.999…は1の別表記であると言われたりします。  2進数で、0.111…と書いても、1/2+1/2^2+1/2^3+…という無限数列の和になり、これも1になります。  16進数でも同じで、0.FFF…=1です。何進数であっても、1になります。  1は何進数であっても1です。上記から分かると思いますが、何進数であっても、1未満の数(0.999…等の1の異表記を除くことに注意)はいくらでも1に近い数がありますが、0.abc…という表記になり、1にはなりません。  そのため、10進数で1未満の小数を何進数に書き換えても1.xyz…のようにはなりません。

  • bsjack
  • ベストアンサー率71% (5/7)
回答No.4

10進数で0.●●●はn進数で1.◎◎◎にはなりません。 逆を考えるとわかるのではないでしょうか。 m=n-1として n進数0.mmmmmm…を10進数に直してみると 限りなく1に近く、1よりも小さい数になります。 10進数で1よりも小さい少数をn進数に直しても、1を超えることはありません。 例えば、 0.304という10進数を2進数で表すとき、 2進数における少数点以下は  第一位 0.5  第二位 0.25  第三位 0.125  第四位 0.0625 という要素で構成されています。 これを足し合わせて0.304になる要素のところに1,それ以外に0を付けるので 0.304(10進) = 0.0100110… となります。 (0.25+0.03125+0.015625+…≒0.304) ここで逆に2進数を10進数にすることを考えます。 2進数0.111111…を10進数にすると 0.9999999…となり、限りなく1に近く、1よりも小さい数になります。 このことから、10進数で1よりも小さい少数をn進数で表すと 1を超えることはないことがわかると思います。

回答No.3

ありえませんね。 仮にn進法で数字の並びが、0.xyz だとします。 数式で表すとx/n+y/n^2+z/n^3です。 これが最大になるのは、x=y=z=n-1の場合です。 (10進法なら0.999が最大ですよね?) (n-1)/n+(n-1)/n^2+(n-1)/n^3 =(n^2(n-1)+n(n-1)+(n-1))/n^3 =(n^3-1)/n^3 当然ながら、n^3-1<n^3 なので、 (n^3-1)/n^3<1 です。 よって、 x/n+y/n^2+z/n^3<1

  • ok-kaneto
  • ベストアンサー率39% (1798/4531)
回答No.2

ありえないです。 >10進法で0.●●● は必ず1より小さいですよね。とするとn進法でも1より小さいです。 すると整数部分に1が出る事はないです。 例えば0.9を2進数で表すと 0.111001・・・・ 9進数で表したとしても 0.8・・・・ となります。 n進数の小数点第一位の基数が(1/n)なので、整数部に1が出るためには(1/n)*(その桁の数)が1を超える必要があります。ということは(その桁の数)がnを超える必要がありますが、n進数なのでそれはないですよね。

回答No.1

10進法でも2進法でも、1以下のものは1以下のままです。

関連するQ&A

  • 小数の10進法→n進法の変換について

    小数の10進法→n進法の変換の時 だいたい参考書に書かれているのは、 例えば0.8125という10進法の数を2進法表記で表したい場合 この0.8125を1/2で割っていき求めていくやり方だと思うのですが 分数の形のまま、求めることは出来ないのでしょうか? 例えば 0.8215 という10進数の小数は 分数の形にすると 8/10^1 + 2/10^2 + 1/10^3 + 5/10^4 = 8125/10000 この8125/10000 という状態から 1/2を使って  2進法表記を求めることは出来るのでしょうか?

  • 小数の 10進数→n進法の変換  について

    先日このことに関して質問をさせてもらったのですが その中で 10進法の小数をn進法に変換する場合 普通は、大きい桁からまとまりを作っていくと思うのですが 小さい桁からまとまりを作って求めることも出来るというように回答をいただいたのですが 「 0.8125という10進数の数を2進法にしたい場合に、最も小さい桁からまとまりを作っていけば、 0.8125に、2^(-4)=0.0625が1個含まれる 0.8125-0.0625=0.75に、2^(-2)=0.25が1個含まれる 0.75-0.25=0.5に、2^(-1)=0.5が1個含まれる ということで、2進数で.1101となることがわかる    」 これは、それぞれどのように計算をして求めているのでしょうか? 自分で計算してみたのですがよくわかりませんでした。 よろしくお願いします。

  • 10進数→n進法の変換 整数と小数の違いについて

    整数の場合 27という10進数の数を2進法にしたい場合 2で割り、2のまとまりを作り余りが出来ると、それを1の位の値にする と、このようなことを繰り返すことで2進法の表記を作り上げると思います。 小数の場合 0.8125という10進数の数を2進法にしたい場合 2を掛ける(=0.5で割る) ことで 0.5のまとまりを作り、商の整数部分を0.5のまとまりと考え少数第一位の値とする と、このようなことを繰り返すことで2進数の表記を作り上げると思います。 と、ここまでは理解できたのですが なぜ整数では、小さい桁から、まとまりを作っていくのに 小数では大きい桁から、まとまりを作っていくことになるのでしょうか? この疑問を自分の中でうまく言葉に出来ず、もどかしいので説明できる方がいましたら 私のレベルでも理解できるように説明していいだけないでしょうか。 よろしくお願いします。

  • 小数と2進法

    何進法の表記かわからないので、質問します。 問題は、 0<α<1となる数αに対し、2^(n-1)αの小数部分は、(*){nが奇数のときは、1/2以上、nが偶数のときは、1/2未満}を満たすという。(ただし、n=1,2,3・・・)二進法の考えを用いて、αの値を求めよ。 解答は、 与えられた条件(*)は、αを二進小数で表したときの小数第n位が{nが奇数のときは、1、nが偶数のときは、0}であることをを意味する。したがってαの二進小数表示は、α=0.101010・・・(1)という循環小数である。周期が2桁であるので、αを2^2=4倍し4αは、二進法で 10.101010・・・(2)と表されることから、(2)-(1)であるαの3倍は、二進法で10と表される。すなわち十進法の2である。ゆえに 3α=2 より α=2/3 この問題でα=0.a_1a_2a_3a_4・・・a_n・・・と表される小数は、10進法に限られるのか?三進法や八進法でよいのか?が疑問です。αは十進法であらわされるとは問題に書かれていないので、迷いました。 10進法の小数に2をかけると、その整数部分が二進法の小数第一位になるということなので、αは十進法の小数かと思いましたが、はっきりしません。どなたかαは十進法の表記なのか、その他の底の表記でもよいのか教えてくださいお願いします。

  • 小数点⇔n進数のやり方

    いつもお世話になっております。 早速ですが、VB2008にて小数点⇔n進数のやり方がわからず困っています。 16進数 404ccccd 10進数 1078774989 2進数 1000000010011001100110011001101 小数点に変換すると3.2になるはずですが、やり方がわかりません。 CONVERTやbitconverter等試してみたのですがうまくいきません。 ネットで検索し、小数点からn進数は見つけたのですが、逆の方法が見つかりません。 逆演算すればとも思ったのですが、いまいちうまくいかず質問させていただきました。 宜しくお願いいたします。

  • 浮動小数点法での2進数変換

    浮動小数点法を用いての2進数への変換に関して質問です。 10進数の(-0.0001)を浮動小数点表示を用いて2進数に変換しなさいという問題が全くわかりません。 どなたか詳しく解説してください。お願いします。

  • 小数の性質についての質問です。

    質問1:小数の位の移り変わりについてですが、0.090・・・0.099と続く   とき、この0.099の次にくるのはいくつですか?僕の仮説では、   0.1なのですが、、まったくこの仮説に自信がありません。 質問2:0.99=99/100でしょうか? 質問3:0.001や0.0001は分数に直すと何分の何でしょうか? 質問4:0.15×0.172 といった、小数×小数の計算をする時、これを     712×15 と云うように整数に直したり、この計算を小数に      直すとき、「0.712は712の1000分の1、0.1      5は15の100分の1」のような考えをする時、どうや      って瞬時にこのような整数に直したり小数に直したりする      ことができますか?また、上記の計算式では、「1000×10   0=100000で、0の数5つ分小数点を左に移す」のような   行為を行うのですが、なぜこのような行為を行うのですか? 質問5:小数の位が第1位が第2位に変わったりなど、位が変わる時に、    この位が変わる時の条件はどのようなものがあるのでしょうか? 質問6:小数の位が変わる時に、小数が10進構造である場合、その10進構   造と小数の位が変わる事とどのような関係があるのでしょうか?    私は、10進構造に関する質問を以前したのですが、あまり理解で   きませんでした。身近な具体例を挙げて説明してくだされば幸い   です。 質問7:0.1=0.10ですか? 愚問を延々と並べてしまいましたが、切実に悩みに悩んでの質問なので、ご教示していただければ幸いです

  • 循環小数について

    10進法で表された正の数Nがある。Nを5進法で表すと整数部分が2けたの循環小数xy.z(zの上にドット)となる。 また、N-1を7進法で表すと整数部分が2けたの循環小数zy.x(xの上にドット)となる このとき整数x,y,zの値を全て求める問題で 確認の為にもう一度教えてください N = (20x + 4y + z) / 4 N = (42z + 6y + x) / 6 + 1 Nを消去して 58x - 81z = 12 参考書の答えは 0≦x,y,z≦4で、x、z≠0より (i) z=2のときx=3,y=0,1,2,3,4 (ii) z=4のときxは整数とならず不適と書いてあるのですが これは xy.z(zの上にドット)の先頭が0では駄目のでX=1~4 zy.x(xの上にドット)の先頭が0では駄目のでZ=1~4 yは 、「5進法表記から導き出されたNの値」と「7進法表記から導かれたNの値」を一致させるにy=1~4と考えていいですか? 計算すると x=1のときz=46/81 x=2のときz=128/81 x=3のときz=2 x=4のときz=220/81 y=1,2,3,4(五進数より)と考えたのですが合っていますか?

  • 分数・小数とn進法の関連

    数Aです。整数の単元で、分数・小数を学習した後にn進法を学習しました。 数学って、いろんなことが関連しあっていて面白いです。 でも、分数・小数(循環小数)とn進法の関連性がよくわかりませんでした。単に整数に関すること、というくくりで同じ単元の中で学習したのでしょうか? それとも何か関連があるのでしょうか? そんなに深い関連がないような気がするので、n進法を学習してから分数・小数を学習しても支障がないような気がします。 回答よろしくお願いいたします。

  • そろばんでの小数の掛け算

    そろばんを使った小数の掛け算 3×21.6=64.8の計算なんですけど やりかたは計算する前に(かける数が帯小数のとき整数部分より1多く右にすすんだところを答えの一の位として左手の指でおさえる) この問題だと64が整数部分なので3つ進みます。 そろばん上では(216  3648)となるんですけど3から3つ目を指すらしいんですけど3→6→4→8になってなぜか8を指してしまって本来なら4を指してこれが一の位になると思うんですけど僕の指し方が違うのでしょうか? 他の問題だとちゃんと一の位がわかるんですがなぜかこれだけずれてしいます。 質問がわかりずらいかもしれませんがわかる方がいらっしゃったら ぜひお願いします。