• ベストアンサー

10進数から8進数へ

同じような質問が多々ありますが、どうしてもわからないので教えてください!! 10進数の12.3を8進数に変換するやり方がわかりません。12は14になるのがわかるのですが、0.3はどうすればいいのでしょう。。。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

12.3などといわず、123.4でやってみましょう。 123÷8=15...3↑(この整数部分をさらに8で割ります)  15÷8= 1...7|(この整数部分をさらに8で割ります)   1÷8= 0...1|(ここで計算は終わりです) よって123の八進表示は―→の順に読んで173となります。 0.4の部分は÷ではなく、×で計算します。 0.4×8=3.2|(この小数部分にさらに8を乗じます) 0.2×8=1.6|(この小数部分にさらに8を乗じます) 0.6×8=4.8|(この小数部分にさらに8を乗じます) 0.8×8=6.4|(この小数部分にさらに8を乗じます) 0.4×8=3.2↓(ここからは繰り返しになります) よって0.4の八進表示は―→の順に読んで0.3146314631463146…という循環小数になります。整数部と小数部の算出は全く逆の計算になっていることに気がついてください。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

回答No.3

10進法→n進法の小数変換は、10進数の小数部分にnをかけて、整数部分を読み、答えの小数部分だけを取り出してまたnをかけ、答えが『○○.0』になったら計算終了で、出てきた整数部分を順に読めばOKです。 ただし、必ずしも『○○.0』にはなりません。nの逆数の累乗の和で示せない小数は表現できません。 今回の場合、 0.3*8 = 2.4 → 整数部分は2。小数部分は0.4。 0.4*8 = 3.2 → 整数部分は3。小数部分は0.2。 0.2*8 = 1.6 → 整数部分は1。小数部分は0.6。 ・・・ と続けていくわけですが、これは計算が終わりませんね・・・有限桁数では表現不可能かと思います。どこかで値を丸めましょう。 なので、今回は『14.231・・・』だと思われます。 割り切れる時は以下のようになりますよ。 ○10進数の 0.265625 を8進数に直す 0.265625*8 = 1.125 → 整数部分は2。小数部分は0.125。 0.125*8 = 1.0 → 整数部分は1。小数部分は0。 小数部分が0なので計算終了となり、答えは『0.21』となります。

全文を見る
すると、全ての回答が全文表示されます。
回答No.2

プログラムというよりは、数学の問題ですが…。 十進法の「0.3」は「3×(1/10)」なので、八進法に直すときは、 「A×(1/8)+B×(1/8)^2+C×(1/8)^3+D×(1/8)^4+…」 という形にして、それを「0.ABCD…」と並べます。 具体的な計算の仕方は、以下サイトを参照してください。 ちなみに、答えは循環小数になります。(割り切れません) http://ja.wikipedia.org/wiki/%E4%BD%8D%E5%8F%96%E3%82%8A%E8%A8%98%E6%95%B0%E6%B3%95#.E6.9C.89.E7.90.86.E6.95.B0.E3.83.BB.E5.AE.9F.E6.95.B0.E3.81.AE.E8.A1.A8.E8.A8.98

全文を見る
すると、全ての回答が全文表示されます。
  • yuripapa
  • ベストアンサー率29% (49/165)
回答No.1

普通に考えたらそのまま14.3でいいんじゃないですか? ただ繰り上がる時に0.7の次に1になるんじゃないの? 個人的な意見ですが・・・

参考URL:
http://e-words.jp/w/8E980B2E695B0.html
全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 2進数・10進数・16進数

    過去ログみてもよく分からなかったので質問します。 題名の通り 2進数→10進数(逆に10進数→2進数)などといったような変換ができません。1学期に授業でやったのですが授業プリントなくしてしまい・・・ 例えば(教科書見ながら書いてます) (1)2進数「0010」がどうして10進数で「2」なんですか(計算方法教えてください?? ↑2進数「0010」を色々計算して「2」を出したような気がします。 (2)16進数から2進数への変換も計算方法を教えてください。 例:16進数「C」がなぜ2進数「1100」なんですか?

  • 16進数を10進数に変換する方法...

    お初にお目にかかります(^^) 簡潔に質問しますm(_ _)m バージョン:MS-Visual Basic6.0 質問内容: 16進数を10進数に変換する方法がわかりません。 Hex(Text1.Text) や Oct(Text1.Text) のような方法で 16進数・8進数に変換できるんですが… 10進数に変換する方法がわかりません。 P.S できれば、16進数→10進数、16進数や10進数→2進数 …に、変換する方法も、よろしければ教えてくださいませ m(_ _)m

  • 10進数を2進数に変換するには・・・

    前にも質問された方がいらっしゃるかもしれないですが検索してもわからなかったのでお願いします。 C言語で10進数を2進数に変換するためにはprintf文を使用して表すことはできないですよね?どうすればよいですか? 例えば10進数である214を2進数の11010110というのに変換したい場合プログラムではどのようになるのでしょうか? 基本的なことですみませんがお願いします。

  • 8進数から2進数に変換の

    8進数223を2進数に変換したいのですが、 まず223を10進数に変換(2×8^2+2×8+3×1=147)→それから2進数に変換→答えは10010011 という方法しかないのでしょうか? 10進数に変換せず、直接2進数にする方法はあるのでしょうか?

  • 2進数10進数

    こんばんわ。情報処理を勉強中です。 01010101  2進数 この2進数を10進数に変換したいんですが、どのようなやり方をすればいいのでしょうか? 区切ってすればいいのか悩んでいます。 もう一つあるのですが、 100 10進数 を2進数に変換するのですが、自分なりに解くと 1100100なんですが合っているかわかるでしょうか? よろしくお願い致します。

  • 10進数→2進数

    10進数の小数を2進数に変換する手法を説明していただけますでしょうか??? このときなぜ2で掛けていくかを詳しく教えて欲しいです。 そして、10進数のから2進数(整数)に変換するときの手法も教えて下さい。 このときなぜ2で割っていくかを詳しく教えて下さい。

  • 2進数について

    2進数の課題が出されました。足し算と掛け算は自力でわかったのですが、以下の問題がさっぱりです。誰かわかる方回答していただけるととても助かります。 【2進数の割り算】 10101÷11 110111÷101 【2進数の変換】 (1010101)を8進数、10進数、16進数に変換 (1011.01)を8進数、10進数、16進数に変換 【10進数を2進数に変換】 (53)の10進数を2進数に変換 (77.35)の10進数を2進数に変換 【最大桁数を8とする。2の補数を明記して2進数の引き算を足し算で】 10111010-1100111 以上です。よろしくお願いします。

  • 10進数→2進数、16進数;2進数→10進数、16進数

    10進数を2進数、16進数に、2進数を10進数、16進数に変換したいのですがやり方がよく分かりません。分かる方、教えてください。(2進数、16進数は16bitで2の補数表示) (1) 4793.5625 (2) -2896 (3) 0110 1110 0010 1010 (4) 1110 1110 0010 1010

  • 8進数から16進数への変換

    8進数から16進数、また、16進数から8進数に 計算過程でほかの進数に変換することなく直接変換できますか?

  • 2進数から16進数への変換

    2進数から16進数への変換はだいたいはできるんですが、小数点の2進数を16進数に変換するやり方がわかりません。 (例) 2進数1001→16進数では9ですが、0.0101などのやりかたがわかりません。 よろしくお願いします