680円を1180円で払った方がいいのか

投稿者: | 2017年9月13日

概要

  • 680円の会計に1180円出すべきか否かをシミュレーションしてみる
  • シミュレーションの結果としては1180円出すべきである
  • 平均して出す硬貨の枚数をほとんど変えずに、財布の中の小銭を 3 枚少なく保てる

680 円に1180 円出すかどうか問題

最近、ネット上で

680 円の会計の際に 1180 円を出すのが気持ち悪い

という発言を巡っての論争が話題になっています。

1180 円を出す側の意図としては、
お釣りを 500 円玉にしてもらおうというものです。
個人的には、小銭入れを一杯にしたくないので、
同じような払い方をします。

一方で、1180 円を出さない派としては、

  • 細かいお金を出すのは神経質っぽい
  • 1080 円ならまだ分かる
  • 支払いが遅くなる(計算と小銭を出す時間がかかる)

等の理由で反対のようです。

神経質、気持ち悪いと思うかは人の感じ方の問題なので、
どうしようもありませんが、
1080 円は許されることを考えると、
小銭を減らそうということに関しては同意が得られそうです。

ということは、支払いの手間をそんなに増やさずに、
財布の中の小銭を減らせるのであれば、
気持ち悪いかはともかく、
680 円に 1180 円を出すことは理にかなっていると言えるのではないでしょうか。

そこで、今回は、680 円に 1180 円を払うことは、
1080 円を払うよりも、ちょっとの手間で、
財布の中の小銭を確かに減らせることをシミュレーションで示してみたいと思います。

支払い戦略モデル(1180 円を出すか1080 円を出すか)

ここまで、680 円と 1180 円などのように、 具体的な金額で話してきましたが、
このような支払いをする人は、
どのように考えて支払う金額を決めているのでしょうか。
また、1080 円を出す人と比べて、
その金額の計算方法はどのように違っているのでしょうか。

もちろん、計算は個々人の頭の中で行われているので、
人によって、計算方法は違っていると思います。
ただ、それだと話が進められないので、
金額の決定プロセスを単純化したモデルに基づいて、
シミュレーションを行うこととします。

1080 円を支払う戦略モデル

まずは、1080 円を支払う人は、
どのような計算を経て 1080 円を
計算したかをモデル化してみましょう。

簡単な計算方法として考えられるのは、
下の位をピッタリ払うように支払い金額を決めていくというものです。

例えば、680 円なら、1 の位は 0 なので、何も払わなくてピッタリです。
次に 10 の位は 8 なので、10 円玉と50 円玉で 80 円出せればピッタリになり、
10 円代のお釣りはなくなります。

続いて 100 の位は 6 なので、600 円出せればピッタリですが、
財布に 600 円がなかった場合は、1000 円を出す必要があります。
つまり、ピッタリ払えない位があったときには桁上げをする必要があります。
こうして、1000 円と 80 円で 1080 円の支払いを行います。

以上のように、下の位から順にピッタリ払えるように支払い金額を決めていき、
途中払えない桁があったときには、一つ上の桁に桁上げをするという戦略で、
1080 円を支払う計算過程をモデル化できそうです。

1180 円を支払う戦略モデル

では、1180 円を支払う人は、
どのような計算をすれば良いのでしょうか。

実は、上の 1080 円を支払う戦略に少し変更を加えるだけで、
1180 円を支払う戦略モデルができます。

こちらのモデルも、基本的には下の桁から順にピッタリ支払えるように、
支払い金額を決定していきます。
変更を加えるのは、ピッタリ支払いが出来ない時です。

上のモデルでは、ピッタリ払えない時には、桁上げをするだけでしたが、
こちらでは、桁上げに加えて、 その桁から 5 引けばピッタリ払えないかを考えます。

例えば、680 円の 100 の位は 6 ですが、600 円が財布にない場合、
6 から 5 を引いた 1、つまり、100 円なら払えないかを考えます。
そして、100 円が財布にあるなら、100 円を払い、なければ、100 円代は払いません。
100 円代を払えたにせよ、払えなかったにせよ、金額は足りていないので、
どちらの場合も、桁上げをします。

こうして、80 円ピッタリと、600 円から 500 円を引いた 100 円と、桁上げの 1000 円で
1180 円を支払うことになります。

単純に 5 を引いた数が払うという処理が入るだけなので、
そんなに計算が難しくなっているわけではないですよね。

シミュレーション

上で考えたモデルを使って、
1180 円を支払う人と 1080 円を支払う人では、
どのような違いが表れるのかをシミュレーションで確認してみましょう。

シミュレーションの設定

シミュレーションでは、 A さんが先に紹介した 1080 円を支払う戦略モデルに従って支払いを行い、
B さんが 1180 円を支払う戦略モデルに従って支払いを行います。

A さん、B さん共に、最初の所持金は1万円札を100枚として、
100 円から 10000 円の間で金額をランダムに決められた会計を、100 回行います。
比較の条件をそろえるために、A さん、B さんは同じ金額の会計を行います。

下のコードはシミュレーションを実行するコードです。
コード中で用いている自前の関数は、
見やすさのために、この記事の最後にソースコードを載せます。

財布の中の硬貨の数

まずは、気になる財布の中の硬貨の数を調べてみます。

下の折れ線グラフは、各会計終了時の A さん、B さんの 財布の中にある硬貨の数の推移を表しています。

全体的には、 B さんの硬貨の数の方が A さんよりも少ないことが分かりますね。
680 円に対して 1180 円払う戦略の方が、 お釣りでもらう硬貨の数も減るのに加えて、
支払いで使う硬貨の数も増えるので当然の結果ですね。

では、平均して何枚くらいの硬貨を持つことになるのでしょうか。

結果は、
A さんは、7.24 枚持つのに対して、
B さんは、6.5 枚持つようです。
平均の枚数では 1 枚変わるかどうかですね。

ただ、グラフから分かるように、
この戦略の威力が発揮されるのは、財布が小銭でパンパンになっている時です。
ということで、最大の小銭の数を比べてみましょう。

結果は、 A さんは、最大 14 枚持つのに対して、 B さんは、最大 11 枚に抑えています。
つまり、小銭が一杯になるときの枚数を 3 枚減らせる ということですね。

支払いに使う硬貨の数

いくら、財布の小銭を減らせると言っても、
会計の度に、沢山小銭を出すのは面倒というのはごもっともな指摘です。

ですが、本当に、沢山小銭を出すのでしょうか?

ということで、毎回の支払いに使う硬貨の数は平均していくらくらいになるのかを調べてみましょう。

結果は、 A さんは、1.68 枚で、 B さんは、2.38 枚でした。

平均的には、1 枚増えるか増えないかですね。
ということは、小銭を出す手間は大して変わらないと言えます。

まとめ

680 円の会計に際して、1180 円を支払うことがいいか、
1080 円を支払うことがいいかをシミュレーションで確認しました。

結果としては、1180 円を支払う戦略では、
1080 円を支払う戦略に比べて、
小銭の最大枚数を 3 枚減らすことができました。

一方で、1180 円を支払う戦略では、支払う小銭の数が増えますが、
その平均の数は、1080 円の場合と比べて 1 枚に満たない程度であることも分かりました。

つまり、1180 円を支払う戦略は、
支払いの手間をそんなに増やすことなく、財布の小銭を減らせる
という点で、実用的に優れた戦略だと考えらます。

計算のコツはモデルで示したように 5 を引くというだけで、
簡単に実践できるものなので、是非、次の会計の時にでも試してみるといいでしょう。

ソースコード(関数定義)

最後に、シミュレーションで用いた関数のソースコードを載せておきます。


 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です