全国の森若さんにも きっと役立つ 消費税が混ざっているときの逆算方法 ――プログラマに学ぶべきこと

「ねえねえ、消費税10%と8%が混ざった買い物で、合計額が5417円、消費税だけなら472円てそれぞれわかっているときに、この情報だけでは、10%対象の購入額と8%対象の額を、個々に出せないよね…?」

出せます!
ていうか、式を立てたら、出せるとわかったので…。(←最初は自信なかった。)軽減税率にほんろうされる、全国の経理マン、経理ウーマンにもきっと役立つ! 

いまA=5417円、B=472円としましょう。すると次のような2つの式が立てられます:

1.10 x + 1.08 y = A
0.10 x + 0.08 y = B

出たー、連立方程式!! ここで x は10%対象の購入額、y は8%の対象額です。この連立方程式を x と y について解けば、それぞれの購入額(税抜き)がわかるという寸法です。

解き方は、まずどちらかの文字を「消去」するのが王道でしたよね。いまは x を消しましょう。ただし、その前にどちらの式も100倍しておいたほうが扱いやすいです、小数点がないほうが。
110 x + 108 y = 100 A
10 x + 8 y = 100 B

そんで、二つ目の式から
x = ( 100 B - 8 y ) / 10
と得られますので、これを一つ目の式に代入してやれば xが消去され、
1100 B - 88 y + 108 y = 100 A 、
そしてこれを y について整理すれば、
y = 5 A - 55 B
とわかります。おめでと!
するとこれを使って、 x のほうも
x = ( 100 B - 40 A + 440 B ) / 10 = 54 B - 4 A
と求まります。すべて、めでたしめでたし!

いまの場合、 A=5417円、B=472円でしたから、
消費税10%の対象額 x は 3820円(税抜き)、
消費税8%の対象額 y は 1125円(税抜き)
とわかりました!

…というわけで、さあどうぞご一緒に、――
「数学は、必須じゃないけれど、役に立つ!!!」

しかし、きょう僕が言いたかったポイントは、実はそこではないのです。

上記で、具体的な数字をあえて A や B などの文字に置き換えて解きましたよね? その結果得られた答え
x = 54 B - 4 A
y = 5 A - 55 B
というのは、実は、今後同じような問題のときいつも使える式になっているのです! A や B にそのときの値を代入するだけ。
もう同じような連立方程式を解いたりしなくていいんだよ。。

たとえば、税込み合計額が14,536円、税額のみが1,290円の場合には、上の式でA=14536、B=1290と置き換えてやればよいのです。

ぜひ、あなたの道具箱にしまっておいてください、あなただけの「解の公式」を。

このように、一度やった計算や処理を、あとあと使いまわせる形に整えておくことを、ビジネスでは「テンプレ仕事術」と言ったり、プログラマだったら「キープ・ドライ」(=同じことを二度繰り返すな)と言ったりするようですね。ウェットなのは濡れてて貼りつく=いつまでも繰り返す、という類推から、ドライ=しがみつかない/拘泥しない、一回きり、という表現になるようです。ぼくはこの言葉かなり好き…、というかいつも心にとめています。

人手不足だ、やれワークライフバランスだ、だから時短だ時短だ、とかまびすしい昨今。ぼくは時短大賛成です。そして、省力化や時短の基本とは、どうやら、ルーチンとなる繰り返し作業をなるべく簡略化したり省略することにあるらしい――これもプログラマの本に書いてあったこと。

合理的観点から、効率を極限まで追求する、いわば理系の極致ともいえるプログラマの仕事術。まだまだ学ぶべき秘密が隠れていそうで、これから世間的にももっともっと光が当たっていく気がしています。


理数系の教養は国力の礎。サイエンスのへヴィな使い手の立場から、素敵な科学の「かほり」ただよう話題をお届けしたいと思っています。