旅行費用 精算計算機

支出ごとに誰がどれだけ負担するかを決め、すでにやり取りしたお金まで入れて、各自の残高と残った送金のしかたを作ります。

この計算機は入力した値だけを計算します。為替レートを取得せず、ご自身で入れたレートだけで換算し、銀行送金を実行せず、入力した名前と金額を保存したりアドレスバーに残したりしません。

精算の基準

どの旅行の精算かを書いておくと、結果をコピーしたときに混同しません。計算には使いません。
すべての金額をこの一つの通貨で入れる必要があります。他の通貨で使ったお金は、実際に請求された金額をご自身で確認し、この通貨に換えて入れてください。
選ぶと結果に推定値であるという表示が付きます。計算結果そのものは変わりません。 支出を為替レートで換算して入れると、このチェックに関係なく結果に推定値の表示が自動で付きます。

参加者

2人から20人まで入れられます。本名でなくてもよく、電話番号や口座番号は入れないでください。

支出と返金

支出ごとに支払った人と負担ウェイトを決めます。宿泊費を日付ごとに分けるなら、宿泊日ごとに支出を一つずつ追加し、その日に泊まった人だけに1を入れてください。

すでにやり取りした送金

旅行中にすでに渡したお金です。支出ではなく残高を減らす精算なので、支出として二重に入れないでください。

まだやり取りしたお金がなければ、空のままにしてください。

まだ計算していません。参加者と支出を入れて、精算表を作るを押してください。

計算方法

次の順に計算します。すべての金額を精算通貨の最小単位の整数として扱うので、途中で小数の誤差が生じません。

  1. 支出ごとに各自の理想の負担額を、総額かける自分のウェイト割るウェイトの合計として求め、それぞれの値を最小単位に切り捨てます。
  2. 切り捨てて残った最小単位は、捨てられた小数部が大きい人から1ずつ配ります。だから負担額の合計は常に総額とちょうど同じになります。
  3. 小数部まで同じで順序を決められない場合は、参加者IDの昇順で受け取ります。この画面のIDは参加者を追加した順に付くので、一覧で上にいる人が先に1単位を受け取ります。画面上で並び順を変えても、端数の受け取り手は変わりません。
  4. 各自の残高は、立て替えた金額から負担する金額を引き、すでに渡した送金を足し、すでに受け取った送金を引いた値です。返金を受け取った人は、その分だけ立て替えた金額が減るためマイナスに見えることがあります。
  5. 全員の残高を足した値はちょうど0です。計算コアがこの条件を直接検査し、合わない場合は結果を出さずエラーで止まります。
  6. 返金は元の支出とまったく同じウェイトでマイナスとして配分します。返金の累計は元の支出の金額を超えられません。
  7. 送金の提案は、最も多く受け取る人と最も多く渡す人を順に相殺していく方式です。金額が同じ場合は参加者IDの昇順に並べます。
  8. 為替レートで換算する支出は、元の通貨の金額にレートを掛け、精算通貨の最小単位に四捨五入します。ちょうど半分なら切り上げます。掛け算と丸めは分数で行うので小数の誤差が生じません。この換算は負担額を分ける前、計算の一番はじめに一度だけ行います。
  9. 換算の終わっていない支出が一つでもあれば、各自の残高も送金のしかたも作りません。通貨が混ざったままの精算表は誤った表だからです。

画面に見える金額は表示用に桁を区切った文字列です。この値を足し直して検算せず、表に一緒に出ている合計を見てください。

宿泊費を分ける二つの方法

宿泊費は合意によって結果が変わります。この計算機はどちらがより公平かを決めず、どちらの方法でも総額を正確に保ちます。

日付ごとの利用者で分担
宿泊日ごとに支出を一つずつ追加し、その日に実際に泊まった人だけに1を入れます。日付ごとに料金が違うなら、その日の実際の料金を入れてください。料金を払う必要があるのにその日に泊まった人が誰もいない場合、計算は止まります。誰が負担するかを先に決める必要があります。
人数かける泊数に比例
宿泊費の総額を支出一件として入れ、ウェイトにそれぞれの泊数を入れます。誰も使わなかった空き部屋のために生じた費用も、全体の泊数に比例して分かれる点を理解した上でお使いください。

架空の例

画面確認用の架空の例です。実際の宿泊料金や特定の予約サイトの条件ではありません。

A、B、Cの3人がUSDで精算し、宿泊費450ドルをAが支払いました。AとBは2泊、Cは1泊しました。

  • 日付ごとの利用者で分担として入れると、1泊目の225ドルを3人で、2泊目の225ドルをAとBで分けます。負担額は187.50 / 187.50 / 75.00ドルです。
  • 例のボタンはこの方法で埋めます。結果はAが262.50ドルを受け取り、Bが187.50ドル、Cが75.00ドルを渡せば終わる形です。
  • 人数かける泊数に比例として入れると、450ドル一件にウェイト2 / 2 / 1が付き、180 / 180 / 90ドルになります。どちらの方法も合計は450ドルで同じです。

例を押すと、今入力している値が例の値に変わります。画面上部の元に戻すボタンで戻せます。

よくある質問

従来の割り勘計算機と何が違いますか。
従来の割り勘計算機は、総額一件を人数で均等に分けるか、各自の金額を直接書く道具です。チップを足して一人あたりいくらかをすぐ見たいときは、そちらの方が速いです。この計算機は支出を複数入れ、支出ごとに負担する人とウェイトを変え、返金やすでにやり取りした送金まで反映して、各自の残高と残った送金のしかたを作ります。一回の食事代を均等に分けるだけなら、従来の割り勘計算機をお使いください。
送金のしかたは最も少ない回数ですか。
いいえ。最も多く渡す人と最も多く受け取る人を順に相殺する方法なので、同じ入力には必ず同じ表が出ますが、理論上はより少ない回数で終わる組み合わせがありうる場合があります。精算を終える一つの方法として見てください。
外貨で使ったお金はどう入れますか。
支出ごとに、精算通貨で確定した請求額があるかをまず選びます。カード明細のように確定した金額があれば、その金額を入れてください。今のレートで換算し直しません。確定した金額がまだなければ、為替レートで換算を選び、支払った通貨の金額とレートを入れてください。レートを使った支出が一つでもあれば、結果に推定値の表示が付きます。この計算機は為替レートを取得しないので、レートはご自身で確認して入れる必要があります。
海外決済手数料はどこに入れますか。
請求額にすでに含まれている手数料なら、別に入れないでください。二重に計算されます。請求額とは別に引かれた手数料だけ、支出の行をもう一つ作って入れ、誰が負担するかをウェイトで決めてください。この計算機は為替レートに手数料を上乗せしません。
最小通貨単位の1単位が特定の人にだけ多く付きます。
最小通貨単位より下には分けられないからです。各自の負担額を切り捨てたあと、残った端数を捨てられた小数部が大きい人から1ずつ渡します。そうすることで負担額の合計が総額とちょうど同じになります。小数部まで同じなら参加者IDの昇順、つまり先に追加した人が受け取ります。
返金の行のウェイトはなぜ直せないのですか。
返金は元の支出を取り消すものなので、分担の基準が同じでなければなりません。ウェイトを変えると取り消しではなく新しい配分になり、残高がゆがみます。そのため返金の行は、選んだ元の支出のウェイトをそのまま引き継ぎます。性質の違う補償金や見舞金は、返金ではなく別の支出として入れ、改めて合意してください。
入力した名前と金額はどこかに残りますか。
残りません。計算はブラウザの中だけで行われ、サーバーには送りません。共有リンクに値を載せないので、アドレスバーやブラウザの履歴にも残りません。そのかわり再読み込みすると入力が消えるので、必要なら結果をコピーのボタンをお使いください。

この計算機がしないこと

  • 為替レートを取得しません。換算は利用者がご自身で入れたレートだけで行い、換算の終わっていない費用が残っていれば送金のしかたを作りません。
  • 海外決済手数料や引き出し手数料を自動で付けません。請求額に含まれていない手数料は、別の支出の行としてご自身で入れる必要があります。
  • 銀行送金を実行したり口座を連携したりしません。口座番号の入力も受け付けません。
  • 日付を入れても宿泊日を自動で作りません。宿泊日ごとに支出をご自身で追加する必要があります。
  • 誰がどの支出に参加したかを推測しません。入場料を全員で行ったものとして自動処理しません。
  • どの分担方法がより公平かを推薦しません。
  • 入力を保存しません。再読み込みしたりウィンドウを閉じたりすると消えます。

関連計算機

金額一件をその場で分けるだけなら、下の計算機の方が簡単です。

  • 割り勘計算機 — 総額一件を人数で均等に分けるか、各自の金額を直接書きます。チップの割合と一人あたりの金額をすぐに表示します。複数の支出、支出ごとの負担者、すでにやり取りした送金は扱いません。
  • チップ計算機 — 食事の金額に付けるチップを計算します。チップまで含めた最終金額を、この計算機の支出として入れてください。
  • パーセント計算機 — ウェイトを決める前に、割合だけ先に確認したいときに使います。