この計算ツールでできること
このツールは日本のタクシー料金(円表示)を前提にしています。相乗りの割り勘では、慣習として10円単位で切り上げて精算するのが一般的です。何人かで1台のタクシーに乗り、目的地が近い人から順番に降りていく場合、メーターの金額はどんどん上がっていきます。先に降りた人は後半の長い区間に乗っていないのですから、合計料金を全員で均等に割るのは不公平です。この計算ツールは料金を区間(レグ)ごとに分けます。降りるタイミングで区切られた各区間の料金を、その区間にまだ乗っていた人だけで負担する仕組みです。
使い方
乗車人数(N)と、各降車地点でのメーターの累計金額を、小さい順にカンマ区切りで入力します。最初の数値は1人目が降りた時点のメーター合計、最後の数値が最終的な合計料金です。たとえば3人で相乗りした場合は 800,1500,2400 のように入力します。
計算式の解説
\(m_0 = 0\) とし、\(m_k\) を \(k\) 番目の降車時点でのメーター累計金額とします。区間 \(k\) の料金は \(f_k = m_k - m_{k-1}\) です。その区間ではまだ \(N - k + 1\) 人が乗っているので、1人あたりの負担は \(\lceil f_k / (10 \times \text{人数}) \rceil \times 10\)、つまり区間料金を乗車人数で割り、10円単位で切り上げた額になります。
$$\text{Share}_j = \sum_{k=1}^{j} 10\left\lceil \frac{m_k - m_{k-1}}{\,N - k + 1\,} \right\rceil$$切り上げのため合計がわずかに多くなることがあるので、最後の人が端数を吸収します。最後の人の支払額は「合計料金 − 他の全員の切り上げ後の負担額」とすることで、合計が必ずメーター料金と一致するようにしています。
計算例
3人で相乗り、メーター累計が 800、1500、2400 の場合。区間1(3人):\(800 \div 3 = 266.67\) → 切り上げで1人270円。区間2(2人):\(700 \div 2 = 350\) → 1人350円。区間3(1人):900円。暫定の合計は \(P_1 = 270\)、\(P_2 = 620\)、\(P_3 = 1520\)(合計2410円)。最後の人が10円の超過分を吸収するので、\(P_3 = 2400 - (270 + 620) = 1510\) 円。最終結果:\(P_1\) は270円、\(P_2\) は620円、\(P_3\) は1510円、合計2400円となります。
よくある質問
一番多く払うのは誰? たいていは最後に降りる人です。すべての区間に乗っており、さらに切り上げの端数も吸収するためです。
なぜ10円単位で切り上げるの? 日本の現金や相乗りの割り勘では10円単位が一般的だからです。切り上げることで端数(1円単位)が出ず、慣習的にもなじみがあります。
これで必ず公平になる? 近い人から順に降りることを前提としています。寄り道などで手前の降車地点までの料金が割高になった場合、途中で降りる人がやや多めに負担することがあります。これは「区間ごと均等割り」という方式そのものに内在する注意点です。