増加率計算機
増加率計算機は、初期値から最終値への上昇を割合で求め、任意の数に割合を加えることもできます。増加率の公式、増加の割合の求め方、複利も扱います。
例の値が入力されています。ご自身の値に置き換えてください。
増加率
25%
増加
計算過程
- 100 − 80 = 20
- 20 ÷ 80 × 100 = 25%
- 増加した量
- 20
- 初期値に戻すために必要な減少
- -20%
これは初期値に対する割合で表した相対的な変化です。二つの値がどちらも率の場合、その差はパーセントポイントで測り、別の指標です。パーセントポイント計算機をご覧ください。
家賃が1,450ドルから1,595ドルに上がりました。これは10%の上昇でしょうか、それとも9%でしょうか。答えはどちらの数で割るかによって決まり、間違えた数を選んでしまいがちです。
この増加率計算機に初期値と新しい値を入力すると、計算の過程つきで増加率が求まります。この増加率計算機には二つ目のモードもあり、数と割合を入力すると割合を加えた結果が出ます。240に15%を加えると276になります。
増加率のしくみ
結論:新しい値から初期値を引き、初期値で割って100を掛けます。80から100への増加は (100 − 80) ÷ 80 × 100 = 25% です。
増加率の公式
増加率 = (最終値 - 初期値) / abs(初期値) * 100この増加率の公式は、初期値に絶対値の記号を使っています。これが意味を持つのは初期値が負のときだけで、普通の正の値では無視して構いません。
増加率の計算方法
- 最終値から初期値を引いて、増加量を求めます。
- 増加量を、最終値ではなく初期値で割ります。
- 100をかけて、パーセント記号を付けます。
初期値が常にもとにする量です。そのため、80から100への動きは25%の増加ですが、逆の100から80への動きは20%の減少になります。差はどちらも20ですが、もとにする量が違うからです。減少については減少率計算機を使ってください。
増加率を暗算で求める簡単な方法
電卓なしで増加率を求めるにはどうすればよいでしょうか。初期値の10%を小数点の移動で求め、上昇分がその十分の一の何個分かを数えます。48から60への場合、48の十分の一は4.8、上昇分は12で、これは2.5個分なので、増加率は25%です。暗算は小数点のずれを見つける確認に使い、正確な値は計算機で求めてください。
数をパーセントだけ増やす方法
数にパーセントを足すには、1にパーセントの小数を足した数を掛けます。240に15%を足すと、240 × 1.15 = 276 です。これは上の計算機の二つ目のモードです。
100%を超える増加
上限はありません。100%の増加は値が二倍になること、200%の増加は三倍になることです。フォロワーが2,000人から5,000人になったなら、新しい値が古い値の2.5倍なので、150%の増加です。
複利の増加:二回の上昇は、一回分の足し算ではない
増加が繰り返されるとき、それぞれの上昇はすでに増えた値に適用されるので、パーセントは足し算になりません。10%の上昇のあとにもう一度10%上昇すると、1.10 × 1.10 = 1.21 を掛けることになり、21%の増加です。5%の増加を三年続けると、1.05³ − 1 = 15.76% で、15%ではありません。下のコードの項にあるcompoundIncrease関数は、期間がいくつでも同じように計算します。年あたりの増加率に戻すには、n乗根を取ります。1,000が3年で1,500になるなら、1.5^(1/3) − 1 = 14.47% が年あたりの増加率です。
パーセントの増加率
値そのものがパーセントの場合、たとえば割合が4%から5%に上がるときは、二つの答えがどちらも正しくなります。上昇は1パーセントポイントで、相対的な増加は (5 − 4) ÷ 4 = 25% です。どちらを指すのかを明示してください。違いの詳細はパーセントポイントのガイドで説明しています。
ゼロと負の初期値
初期値が0のときは、割り算ができないため、増加率は定義されません。代わりに絶対的な変化量を示してください。初期値が負の場合、この計算機は初期値の絶対値で割るので、−50から−25は+50%になります。符号つきの初期値で割るツールでは、同じ動きで−50%が返ります。この慣例については、変化率計算機で説明しています。
ExcelとGoogle Sheetsでの増加率
古い値がA2、新しい値がB2にあるなら、=(B2-A2)/A2 と入力して、セルの書式をパーセントにします。代わりにパーセントを足すには、パーセントがB2にあるとして、=A2*(1+B2) と入力します。Excelガイドには、増加、変化、差について、そのまま使える数式があります。
増加率が使われる場面
昇給、家賃の見直し、価格の変更は日常的な例です。増加の割合を計算すれば、昇給が物価上昇を上回るか、仕入れ先の新しい見積もりが妥当かが分かります。企業は売上、収益、アクセス数、登録数を、前月比や前年比で同じように追跡します。成長率の計算機も同じ仕事をします。成長率とは、ある期間にわたって測った増加率だからです。同じ計算で、投資の利益率やテストの点数の改善率も求まります。上の増加率計算機は、割り算で単位が打ち消し合うので、どんな単位にも使えます。
増加率の例題
200に、よく使う割合を加えた結果です。
| 足すパーセント | 増加量 | 新しい値 |
|---|---|---|
| 5% | 10 | 210 |
| 10% | 20 | 220 |
| 20% | 40 | 240 |
| 25% | 50 | 250 |
| 50% | 100 | 300 |
| 100% | 200 | 400 |
例題1:年収が$52,000から$56,160に上昇
条件
手順 1
増加額は 56,160 − 52,000 = 4,160 です。手順 2
初めの給与で割ります。4,160 ÷ 52,000 = 0.08 です。
答え
例題2:価格が$4.50から$5.40に上昇
条件
手順 1
増加額は0.90ドルで、0.90 ÷ 4.50 = 0.20 です。
答え
例題3:人口が8,400人から9,114人に増加
条件
手順 1
増加は714人で、714 ÷ 8,400 = 0.085 です。
答え
例題4:家賃が$1,450から$1,595に上昇
条件
手順 1
増加額は月145ドルで、145 ÷ 1,450 = 0.10 です。
答え
例題5:フォロワーが2,000人から5,000人に増加
条件
手順 1
増加は3,000で、3,000 ÷ 2,000 = 1.5 です。
答え
例題6:$120,000の予算を5.2%増やす
条件
手順 1
これは二つ目のモードです。
答え
増加率のコード
どちらのバージョンも、上の例(8%、20%、8.5%、10%、150%、126,240ドル、複利の15.76%)を再現し、数値以外の入力を拒否し、初期値が0の場合は計算を拒否します。
JavaScript
function finite(name, v) { if (typeof v !== "number" || !Number.isFinite(v)) throw new TypeError(`${name} must be a finite number`);}export function percentIncrease(initial, final) { finite("initial", initial); finite("final", final); if (initial === 0) throw new RangeError("initial must not be 0: the increase from zero is undefined"); return ((final - initial) / Math.abs(initial)) * 100;}export function increaseBy(value, percent) { finite("value", value); finite("percent", percent); return value * (1 + percent / 100);}export function compoundIncrease(percentPerPeriod, periods) { finite("percentPerPeriod", percentPerPeriod); finite("periods", periods); return ((1 + percentPerPeriod / 100) ** periods - 1) * 100;}Python
from decimal import Decimalimport 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 percent_increase(initial, final): initial, final = _num("initial", initial), _num("final", final) if initial == 0: raise ValueError("initial must not be 0: the increase from zero is undefined") return (final - initial) / abs(initial) * 100def increase_by(value, percent): return _num("value", value) * (1 + _num("percent", percent) / 100)def compound_increase(percent_per_period, periods): rate, n = _num("percent_per_period", percent_per_period), _num("periods", periods) if n != n.to_integral_value() or n < 0: raise ValueError("periods must be a whole number of 0 or more") return ((1 + rate / 100) ** int(n) - 1) * 100丸めるのは表示のときだけにしてください。JavaScriptでは、percentIncrease(4.5, 5.4) は20.000000000000007を返すので、toFixed(2) で整形します。Python版は Decimal を使うので、そのずれが起きず、金額もきれいに扱えます。
プライバシーと入力の安全性
値の計算はブラウザー内で行われます。入力した数値がサーバーに送られたり、保存されたりすることはありません。
- 入力欄には数値だけを入力できます。文字、空欄、NaN、Infinityはメッセージつきで拒否され、入力した内容がコードとして実行されることはありません。
- ゼロからの増加率は定義されないため、初期値が0のときは、割り算のエラーではなく分かりやすいメッセージが返されます。
- カンマの直後にちょうど3桁が続く場合は千の位の区切りとして読み、1,200 は 1200 になります。それ以外のカンマは小数点として扱うため、12,50 は 12.50 で、0 で始まる 0,500 のような数は小数として読みます。1.234,5 のような混在形式や 1,2,3 のようなあいまいな入力は、推測せずに拒否します。桁区切りの空白(改行されない空白を含む)は無視します。
増加率でよくある間違い
| 間違い | 何が起こるか | 計算機の動作 |
|---|---|---|
| 新しい値で割る | 80から100は、25%ではなく20%になる | 常に初期値で割ります |
| 繰り返しの上昇でパーセントを足す | 10%のあとにまた10%を20%と読むが、正しくは21% | 上昇を掛け合わせ、合成した割合を示します |
| 同じパーセントで上昇を元に戻そうとする | 25%の上昇を元に戻すのは、25%の下降ではなく20%の下降 | 求めに応じて、逆算した割合を示します |
| パーセントとパーセントポイントを混同する | 割合が4%から5%になったのを5%の増加と呼ぶが、正しくは1ポイント、相対では25% | 結果に相対的というラベルをつけ、ポイントの差を示します |
| パーセントを数としてそのまま足す | 240に15%を足すのに 240 + 15 = 255 としてしまい、276にならない | 割合を、値に対する比率に変換します |
| ゼロから始める | ゼロによる割り算になるか、意味のない無限大のパーセントになる | メッセージを表示して拒否し、絶対的な変化量を示します |
| 適用する前にパーセントを丸める | $120,000を5.2%増やすのに、5%に丸めると$126,240ではなく$126,000になる | 丸めるのは表示する結果だけです |
| 100%を超えるとエラーだと考える | 2,000から5,000は、150%の増加として正しい | 正の結果なら、どんな値でも受け付けます |
増加率、変化率、差の割合、パーセントポイントの違い
増加率は変化率のうち正の場合なので、値が上がるときは、どちらも同じ数になります。方向が分からないときは変化率計算機を、別々の店の二つの価格を比べるときのように、どちらの値も出発点でないときは差の割合の計算機を使ってください。