分数をパーセントに変換する計算機
この分数をパーセントに変換する計算機で、分数、帯分数、20のうち15のような点数をパーセントにできます。分数をパーセントにする手順、24/30などの「YのうちX」の点数、よく使う分数の換算表、早見表も扱います。
例の値が入力されています。ご自身の値に置き換えてください。
パーセント
37.50%
計算過程
- 3 ÷ 8 = 0.375
- 0.375 × 100 = 37.5%
- 小数
- 0.375
クイズで20のうち15を取った、あるいはピザの1/8(12.5%)を食べたとします。20のうち15はパーセントでいくつでしょうか。上の数を下の数で割り、100をかけます。15 ÷ 20 = 0.75で、75%です。
この分数をパーセントに変換する計算機に、分子と分母、または帯分数を入力します。まず小数、次にパーセントが表示されるので、各段階が見えます。下には、よく使う分数の換算表と、30のうち24のような人気の点数の早見表があります。
分数をパーセントに変換する仕組み
分数をパーセントに変換する方法(二段階)
パーセント = 分子 / 分母 × 100- 分子を分母で割って、小数を求めます。
- 小数に100をかけて、パーセント記号を付けます。
パーセントは「百分の」という意味なので、小数に100をかけると100のうちの部分の数になります。値は変わらず、表し方だけが変わります。
分母が100の約数のときの近道
分母が100をちょうど割り切るとき(2、4、5、10、20、25、50)は、分母が100になるように分数を拡大します。15/20なら、上と下に5をかけて75/100にすると、75%です。13/25なら、4をかけて52/100、つまり52%です。かける数は、二分の一なら50、四分の一なら25、五分の一なら20、十分の一なら10、二十分の一なら5、二十五分の一なら4、五十分の一なら2です。
仮分数と帯分数
分子が分母より大きいとき、分数は1より大きいので、パーセントは100より大きくなります。帯分数は、先に仮分数に直してから割ります。整数部分の欄に入力すると、計算機がこれを行います。下の例題2と例題3で、両方の場合を確認できます。
繰り返しのある小数と丸め
分数によっては、小数が終わらずに続きます。三分の一は0.3333と続き、小数第二位まで丸めると33.33%、2/3は66.67%です。丸めるのは最後だけにします。先に小数を丸めると、パーセントがずれるからです。0.33にすると33%になり、33.33%になりません。
「YのうちX」をパーセントで表す
「YのうちX」の点数は分数X/Yなので、方法は同じです。20のうち15をパーセントで表すと15/20で、75%です。下の早見表で、よくある68通りの点数を確認できます。
ExcelとGoogle Sheetsでの分数からパーセントへの変換
分子がA2、分母がB2にあるとき、=A2/B2と入力し、セルをパーセント表示にします。パーセント表示が自動でその計算をしてくれるので、× 100は必要ありません。
分数をパーセントに変換する換算表と例題
分数をパーセントに変換する換算表
このパーセントの換算表は、最もよく使う分数を並べたもので、小数は小数第四位に丸めています。
| 分数 | 小数 | パーセント |
|---|---|---|
| 1/2 | 0.5 | 50% |
| 1/3 | 0.3333 | 33.33% |
| 2/3 | 0.6667 | 66.67% |
| 1/4 | 0.25 | 25% |
| 3/4 | 0.75 | 75% |
| 1/5 | 0.2 | 20% |
| 2/5 | 0.4 | 40% |
| 3/5 | 0.6 | 60% |
| 4/5 | 0.8 | 80% |
| 1/6 | 0.1667 | 16.67% |
| 5/6 | 0.8333 | 83.33% |
| 1/8 | 0.125 | 12.5% |
| 3/8 | 0.375 | 37.5% |
| 5/8 | 0.625 | 62.5% |
| 7/8 | 0.875 | 87.5% |
| 1/10 | 0.1 | 10% |
| 3/10 | 0.3 | 30% |
| 7/10 | 0.7 | 70% |
| 9/10 | 0.9 | 90% |
| 1/12 | 0.0833 | 8.33% |
| 1/20 | 0.05 | 5% |
例題1:真分数3/4
条件
手順 1
割る:3 ÷ 4 = 0.75。
答え
例題2:仮分数7/4
条件
手順 1
割る:7 ÷ 4 = 1.75。
答え
例題3:帯分数2 1/2
条件
答え
例題4:循環小数7/12
条件
手順 1
割る:7 ÷ 12 = 0.58333と続きます。
答え
例題5:点数、40のうち34
条件
答え
「YのうちX」をパーセントで表す:早見表
よく検索される点数を、全体の数の順に並べました。30のうち27は90%、30のうち25は83.33%、24/30は80%です。小さい単位分数はすぐに求まります。1/10は10%、1/20は5%、3/20は15%です。
| YのうちX | 分数 | パーセントで表すと |
|---|---|---|
| 3のうち2 | 2/3 | 66.67% |
| 5のうち2 | 2/5 | 40% |
| 6のうち2 | 2/6 | 33.33% |
| 6のうち4 | 4/6 | 66.67% |
| 7のうち3 | 3/7 | 42.86% |
| 7のうち5 | 5/7 | 71.43% |
| 9のうち4 | 4/9 | 44.44% |
| 9のうち6 | 6/9 | 66.67% |
| 10のうち1 | 1/10 | 10% |
| 10のうち6 | 6/10 | 60% |
| 10のうち8 | 8/10 | 80% |
| 11のうち8 | 8/11 | 72.73% |
| 11のうち10 | 10/11 | 90.91% |
| 12のうち2 | 2/12 | 16.67% |
| 12のうち5 | 5/12 | 41.67% |
| 12のうち7 | 7/12 | 58.33% |
| 12のうち10 | 10/12 | 83.33% |
| 13のうち9 | 9/13 | 69.23% |
| 13のうち10 | 10/13 | 76.92% |
| 13のうち11 | 11/13 | 84.62% |
| 14のうち10 | 10/14 | 71.43% |
| 14のうち11 | 11/14 | 78.57% |
| 15のうち1 | 1/15 | 6.67% |
| 15のうち9 | 9/15 | 60% |
| 15のうち10 | 10/15 | 66.67% |
| 15のうち12 | 12/15 | 80% |
| 15のうち13 | 13/15 | 86.67% |
| 17のうち12 | 12/17 | 70.59% |
| 17のうち15 | 15/17 | 88.24% |
| 18のうち12 | 12/18 | 66.67% |
| 18のうち13 | 13/18 | 72.22% |
| 20のうち1 | 1/20 | 5% |
| 20のうち3 | 3/20 | 15% |
| 20のうち4 | 4/20 | 20% |
| 20のうち15 | 15/20 | 75% |
| 21のうち13 | 13/21 | 61.9% |
| 21のうち16 | 16/21 | 76.19% |
| 21のうち17 | 17/21 | 80.95% |
| 21のうち18 | 18/21 | 85.71% |
| 22のうち16 | 16/22 | 72.73% |
| 24のうち18 | 18/24 | 75% |
| 24のうち21 | 21/24 | 87.5% |
| 25のうち10 | 10/25 | 40% |
| 25のうち13 | 13/25 | 52% |
| 25のうち15 | 15/25 | 60% |
| 25のうち16 | 16/25 | 64% |
| 25のうち20 | 20/25 | 80% |
| 25のうち22 | 22/25 | 88% |
| 30のうち20 | 20/30 | 66.67% |
| 30のうち21 | 21/30 | 70% |
| 30のうち23 | 23/30 | 76.67% |
| 30のうち24 | 24/30 | 80% |
| 30のうち25 | 25/30 | 83.33% |
| 30のうち26 | 26/30 | 86.67% |
| 30のうち27 | 27/30 | 90% |
| 30のうち28 | 28/30 | 93.33% |
| 30のうち29 | 29/30 | 96.67% |
| 35のうち25 | 25/35 | 71.43% |
| 35のうち30 | 30/35 | 85.71% |
| 40のうち30 | 30/40 | 75% |
| 40のうち34 | 34/40 | 85% |
| 50のうち30 | 30/50 | 60% |
| 50のうち32 | 32/50 | 64% |
| 50のうち35 | 35/50 | 70% |
| 50のうち41 | 41/50 | 82% |
| 60のうち40 | 40/60 | 66.67% |
| 60のうち48 | 48/60 | 80% |
| 60のうち50 | 50/60 | 83.33% |
分数をパーセントに変換するコード
どちらのバージョンも上の例(75%、175%、250%、58.33%、85%)と早見表を再現し、数値以外の入力を拒否し、分母がゼロの場合も受け付けません。
JavaScript
function finite(name, v) { if (typeof v !== "number" || !Number.isFinite(v)) throw new TypeError(`${name} must be a finite number`);}export function fractionToPercent(numerator, denominator, decimals = 2) { finite("numerator", numerator); finite("denominator", denominator); if (denominator === 0) throw new RangeError("denominator must not be 0"); if (!Number.isInteger(decimals) || decimals < 0 || decimals > 10) throw new RangeError("decimals must be a whole number from 0 to 10"); return Number(((numerator / denominator) * 100).toFixed(decimals));}export function mixedToPercent(whole, numerator, denominator, decimals = 2) { finite("whole", whole); finite("numerator", numerator); finite("denominator", denominator); if (denominator === 0) throw new RangeError("denominator must not be 0"); if (!Number.isInteger(decimals) || decimals < 0 || decimals > 10) throw new RangeError("decimals must be a whole number from 0 to 10"); const sign = whole < 0 ? -1 : 1; const value = sign * (Math.abs(whole) + numerator / denominator); return Number((value * 100).toFixed(decimals));}Python
from decimal import Decimal, ROUND_HALF_UPimport mathdef _num(name, v): if isinstance(v, bool) or not isinstance(v, (int, float, Decimal)) or not math.isfinite(float(v)): raise ValueError(f"{name} must be a finite number") return Decimal(str(v))def _round(x, decimals): if not isinstance(decimals, int) or isinstance(decimals, bool) or not 0 <= decimals <= 10: raise ValueError("decimals must be a whole number from 0 to 10") return x.quantize(Decimal(1).scaleb(-decimals), rounding=ROUND_HALF_UP)def fraction_to_percent(numerator, denominator, decimals=2): n, d = _num("numerator", numerator), _num("denominator", denominator) if d == 0: raise ValueError("denominator must not be 0") return _round(n / d * 100, decimals)def mixed_to_percent(whole, numerator, denominator, decimals=2): w, n, d = _num("whole", whole), _num("numerator", numerator), _num("denominator", denominator) if d == 0: raise ValueError("denominator must not be 0") sign = -1 if w < 0 else 1 return _round(sign * (abs(w) + n / d) * 100, decimals)mixedToPercent(2, 1, 2) は帯分数の例である250を返します。丸めるのは表示のときだけにします。Python版は Decimal で四捨五入し、これは学校で一般的な規則です。JavaScriptの toFixed は二進数の値に対して働くため、1.005のようにちょうど中間になる値は、学校の規則なら切り上げるところで切り捨てられることがあります。
プライバシーと入力の安全性
値の計算はブラウザー内で行われます。入力した数値がサーバーに送られたり、保存されたりすることはありません。
- 入力欄は数値のみ受け付けます。文字、空欄、NaN、Infinityはメッセージを表示して拒否され、入力した内容がコードとして実行されることは一切ありません。
- 分母が0の場合は、分母がゼロの分数は存在しないため、割り算のエラーではなく分かりやすいメッセージが表示されます。
- 小数点以下の桁数は、0から10までの整数に限られます。
- カンマの直後にちょうど3桁が続く場合は千の位の区切りとして読み、1,200 は 1200 になります。それ以外のカンマは小数点として扱うため、12,50 は 12.50 で、0 で始まる 0,500 のような数は小数として読みます。1.234,5 のような混在形式や 1,2,3 のようなあいまいな入力は、推測せずに拒否します。桁区切りの空白(改行されない空白を含む)は無視します。
分数をパーセントに変換するときのよくある間違い
| 間違い | 何が起こるか | 計算機の動作 |
|---|---|---|
| 分母を分子で割る | 3/4を4 ÷ 3と読むと、75%ではなく133%になる | 分子を分母で割る |
| 100をかけ忘れる | 3/4を0.75と答えてしまう | 先に小数、次にパーセントを示します |
| 変換する前に小数を丸める | 1/3を0.33とすると、33.33%ではなく33%になる | 丸めるのは最終的なパーセントだけで、標準では小数第二位までとし、末尾のゼロは除きます |
| 3/4%を3/4と読む | 3/4%は0.75%の意味で、75%ではない | 3/4を四分の三と読み、75%を返します |
| 帯分数の扱いを誤る | 2 1/2を (2 + 1) ÷ 2と読むと、250%ではなく150%になる | 割る前に5/2に変換します |
| 「YのうちX」で合計を間違える | 正解が15、不正解が5なら20のうち15であり、5のうち15(300%)ではない | 残りではなく、合計の入力を求めます |
| 100%を超えるとエラーだと考える | 7/4は175%で、正しい値 | 仮分数を受け付ける |
分数、小数、パーセント:一つの値の五つの形
同じ値0.75を五通りで書いたものです。数をパーセントにする方法は、その形によって決まります。
| 形 | 例 | パーセントの求め方 | 行う場所 |
|---|---|---|---|
| 分数 | 3/4 | 割ってから100をかける | このページ |
| YのうちX | 20のうち15 | 分数15/20と同じ | このページ、早見表 |
| 小数 | 0.75 | 100をかける | 小数からパーセントへの計算機 |
| 比(部分対部分) | 3:1 | 3 ÷ (3 + 1) × 100 | 比をパーセントに変換する計算機 |
| パーセントから分数に戻す | 75% | 100を分母にして約分すると3/4 | パーセントを分数に変換する計算機 |
分数の行と「YのうちX」の行は同じ計算です。つまずきやすいのは比の行です。3:1の比は全体を4つに分けるので、最初の部分は3/1ではなく3/4です。