目次 (contents)

2.15

金利r=12%
毎年の売上高=3.3*1,000,000=3,300,000($)
毎年の材料費=100*100=10,000($)
毎年の労賃=30*10,000=300,000($)
毎年の税引き前キャッシュ・フロー=売上高-材料費-労賃=2,990,000($)

インフレ率を考慮しない場合の分析結果を下表に示す。

年n税引き前キャッシュ・フロー減価償却課税対象収益税金(34%)税引き後キャッシュ・フローcf割引係数 1/(1+r)^ncf/(1+r)^n
0-10,000,000-10,000,0001.00-10,000,000
12,990,0002,000,000990,000336,6002,653,4000.892,369,107
22,990,0002,000,000990,000336,6002,653,4000.802,115,274
32,990,0002,000,000990,000336,6002,653,4000.711,888,638
42,990,0002,000,000990,000336,6002,653,4000.641,686,284
52,990,0002,000,000990,000336,6002,653,4000.571,505,610
現在価値=-435,087

インフレ率(4%)を考慮する場合の分析結果を下表に示す。

年n税引き前キャッシュ・フローインフレ倍率名目税引き前キャッシュ・フロー減価償却課税対象収益税金(34%)税引き後キャッシュ・フローcf割引係数 1/(1+r)^ncf/(1+r)^n
0-10,000,0001.00-10,000,000-10,000,0001.00-10,000,000
12,990,0001.043,109,6002,000,0001,109,600337,2642,732,3360.892,439,586
22,990,0001.083,233,9842,000,0001,233,984419,5552,814,4290.802,243,646
32,990,0001.123,363,3432,000,0001,363,343463,5372,899,8070.712,064,025
42,990,0001.173,497,8772,000,0001,497,877509,2782,988,5990.641,899,309
52,990,0001.223,637,7922,000,0001,637,792556,8493,080,9430.571,748,210
現在価値=394,775

Python

インフレ率を考慮しない場合

code(2015-04-04, revised on 2019-09-15.)


# 2.15.py
# 22:38 2015-04-02
# $Id: 2.15.html 1.15 2025/02/01 06:49:11 s Exp $

# bc, before-tax cash flow
# da, depreciation amount
# ti, taxable income
# ta, tax
# ac, after-tax cash flow
# tr, tax rate
# ir, infration rate
# ic, initial capital expenditure
# dr, discount rate
# df, discount factor
# ny, number of years
# pv, present value of ac

# input
tr = 0.34
ir = 0.00
dr = 0.12
ic = 10e6
ny = 5
bc = [-ic, 2990e3, 2990e3, 2990e3, 2990e3, 2990e3]
da = [0,   ic/ny,  ic/ny,  ic/ny,  ic/ny,  ic/ny ]

# calculate
ti = [x - y if x - y > 0 else 0 for x, y in zip(bc, da)]
ta = [x * tr for x    in ti]
ac = [x - y  for x, y in zip(bc, ta)]
df = [1 / (1 + dr) ** i for i in range(len(bc))]
pv = [x * y for x, y in zip(ac, df)]

# output
print('2.15.py')
fmt1 = "{:>9}{:>10}{:>10}{:>10}{:>10}{:>10}{:>10}{:>10}"
header1=["year", "bc", "da", "ti", "tax", "ac", "df", "pvac"]
print(fmt1.format(*header1))
print(79*"-")
fmt2="{:9.0f}{:10.0f}{:10.0f}{:10.0f}{:10.0f}{:10.0f}{:10.3f}{:10.0f}"
for x1,x2,x3,x4,x5,x6,x7,x8 in zip(range(len(bc)), bc, da, ti, ta, ac, df, pv):
  print(fmt2.format(x1, x2, x3, x4, x5, x6, x7, x8))
print(79 * "-")
print("{:>69}{:10.0f}".format("sum of pvac=",sum(pv)))
# end

output


2.15.py
     year        bc        da        ti       tax        ac        df      pvac
-------------------------------------------------------------------------------
        0 -10000000         0         0         0 -10000000      1.00 -10000000
        1   2990000   2000000    990000    336600   2653400      0.89   2369107
        2   2990000   2000000    990000    336600   2653400      0.80   2115274
        3   2990000   2000000    990000    336600   2653400      0.71   1888638
        4   2990000   2000000    990000    336600   2653400      0.64   1686284
        5   2990000   2000000    990000    336600   2653400      0.57   1505610
-------------------------------------------------------------------------------
                                                         sum of pvac=   -435087

インフレ率を考慮する場合

code(2015-04-04, revised on 2019-09-15.)


# 2.15b.py
# 2015-04-04 13:42
# $Id: 2.15.html 1.15 2025/02/01 06:49:11 s Exp $
#
# bc,  before-tax cash flow
# nbc, nominal before-tax cash flow
# da,  depreciation amount
# ti,  taxable income
# ta,  tax
# ac,  after-tax cash flow
# tr,  tax rate
# ir,  infration rate
# ic,  initial capital expenditure
# dr,  discount rate
# df,  discount factor
# ny,  number of years
# pv,  present value of ac

# input
tr = 0.34
ir = 0.04
dr = 0.12
ic = 10e6
ny = 5
bc = [-ic, 2990e3, 2990e3, 2990e3, 2990e3, 2990e3]
da = [0,   ic/ny,  ic/ny,  ic/ny,  ic/ny,  ic/ny ]

# calculate
nbc = [x * (1 + ir) ** i for i, x in enumerate(bc)]
ti  = [x - y if x - y > 0 else 0 for x, y in zip(nbc, da)]
ta  = [x * tr for x in ti]
ac  = [x - y for x, y in zip(nbc, ta)]
df  = [1 / (1 + dr) ** i for i in range(len(bc))]
pv  = [x * y for x, y in zip(ac, df)]

# output
print('2.15b.py')
fmt1 = "{:>10}{:>10}{:>10}{:>10}{:>10}{:>10}{:>10}{:>10}{:>10}{:>10}"
header1=["year", "bc", "infl_fac","nbc", "da", "ti", "tax", "ac", "df", "pvac"]
print(fmt1.format(*header1))
print(100 * "-")
f100 = "{:10.0f}"
f103 = "{:10.3f}"
fmt2 = 2 * f100 + f103 + 5 * f100 + f103 + f100
for x1, x2, x3, x4, x5, x6, x7, x8, x9, x10 in \
  zip(range(len(bc)), bc, range(len(bc)), nbc, da, ti, ta, ac, df, pv):
    print(fmt2.format(x1, x2, (1 + ir) ** x3, x4, x5, x6, x7, x8, x9, x10))
print(100 * "-")
print("{:>90}{:10.0f}".format("sum of pvac=", sum(pv)))
# end

output


2.15b.py
      year        bc  infl_fac       nbc        da        ti       tax        ac        df      pvac
----------------------------------------------------------------------------------------------------
         0 -10000000      1.00 -10000000         0         0         0 -10000000      1.00 -10000000
         1   2990000      1.04   3109600   2000000   1109600    377264   2732336      0.89   2439586
         2   2990000      1.08   3233984   2000000   1233984    419555   2814429      0.80   2243646
         3   2990000      1.12   3363343   2000000   1363343    463537   2899807      0.71   2064025
         4   2990000      1.17   3497877   2000000   1497877    509278   2988599      0.64   1899309
         5   2990000      1.22   3637792   2000000   1637792    556849   3080943      0.57   1748210
----------------------------------------------------------------------------------------------------
                                                                              sum of pvac=    394775


Julia

コードを次に示す。

インフレ率を考慮しない場合

インフレ率を考慮する場合


Fortran

コードを次に示す。

インフレ率を考慮しない場合

インフレ率を考慮する場合


Gauche

インフレ率を考慮しない場合

インフレ率を考慮する場合


JavaScript

インフレ率を考慮しない場合

インフレ率を考慮する場合


history

2005-7-25, revised on 2007-04-21, 2011-10-29, 2011-11-02, 2014-02-16, 2015-04-04, 2016-09-28.
2016-09-28 Fortran, Gauche, Javascript codes moved to linked file.
2019-09-15 2.15.py and 2.15b.py revised.
2021-02-11 change to html5, utf-8, add viewport.
2021-02-14 move history.
2023-05-03 add Julia code.
2024-10-27 add JavaScript codes and revise 2.15a.scm.
2025-02-01 open revised 2.15b.scm.