小数・分数変換ツール|小数を分数に、分数を小数に変換

計算ツール
変換方向

整数または小数を半角数字で入力してください。

変換する値を入力してください。

このツールでできること

有限小数を約分した分数へ、分数を小数点以下最大10桁の小数へ変換できます。小数から分数へは正確に変換し、分数から小数へは小数点以下10桁以内で表せない場合に近似値を表示します。整数、負数、仮分数にも対応しています。

使い方

  1. 「小数から分数」または「分数から小数」を選びます。
  2. 小数、または分子と分母を入力します。
  3. 変換ボタンを押します。
  4. 必要に応じて「結果をコピー」を押し、変換結果だけをコピーします。

変換方向や入力を変更すると以前の結果は消去されます。「クリア」を押すと入力と結果をまとめて消去します。

入力例・出力例

小数0.125を分数へ変換すると、125/1000を約分した1/8になります。

分数1/3を小数へ変換すると、近似値0.3333333333を表示します。詳細欄には約分した分数:1/3(小数点以下10桁に四捨五入)と表示し、コピーには主結果だけが含まれます。

よくある利用場面

  • 有限小数を正確な約分済み分数へ直すとき
  • 分数の値を小数で比較・入力したいとき
  • 負数や仮分数を含む変換結果を確認するとき

正確な変換と近似値の違い

小数から分数への変換では、入力された10進数の桁から10の累乗を分母として作り、BigIntの整数計算で約分します。JavaScriptの浮動小数点数へ変換しないため、入力された桁を二進数の誤差で変化させたり、途中で丸めたりしません。

分数から小数への変換では、小数点以下10桁まで計算します。循環小数だけでなく、正確な値が有限小数でも11桁以上を必要とする場合は近似値です。たとえば1/2048の正確な値は0.00048828125ですが、このツールでは0.0004882813と表示します。

小数点以下10桁へ四捨五入し、ちょうど半分の場合は絶対値を大きくする方向へ丸めます。1/20000000000の正確な値は0.00000000005で、表示は0.0000000001です。負数にも絶対値側で同じ処理をしてから符号を戻します。これより絶対値が小さい-1/30000000000は0へ丸められ、マイナス記号も表示されません。近似値かどうかは状態欄と詳細欄で確認できます。

処理仕様

小数は整数部15桁以内、小数部10桁以内、分子と分母は各15桁以内の整数を半角数字で入力してください。桁数はカンマを除いて数え、先頭の0と小数部末尾の0も上限に含めます。負数、CR・LF以外の入力前後の空白、整数部の正しい3桁区切りカンマを使用できます。全角数字、先頭のプラス、指数表記、単位、不正なカンマ、数値途中の空白、CR・LFは使用できません。CR・LFは先頭や末尾にある場合も受け付けません。

小数から分数への変換では、最大公約数で約分します。整数は分母が1の分数、0と負の0は0/1として表示します。

分数から小数への変換では、分数を約分し、分母を正にしてから計算します。小数点以下の末尾の0は省き、10桁以内で正確に表せない場合は四捨五入した近似値を表示します。分母を0にはできません。

帯分数、循環小数の記号付き入力には対応していません。変換方向を変更すると両方向の入力と結果を消去し、入力を変更すると以前の結果を無効にします。コピー対象は主結果だけで、約分内容や近似値の詳細は含みません。

入力データについて

入力内容はJavaScriptによりブラウザ内だけで処理され、ToolRollのサーバーや外部サービスへ送信されません。外部ライブラリ、Cookie、localStorage、sessionStorage、IndexedDB、ブラウザの履歴を使用せず、入力内容や計算履歴も保存しません。