2.6
(6カ月だけ住む場合)
仮定 金利 interest r = 0.12、家賃は月初めに支払う
月額家賃 month's rent x = 1000($)のアパートに住む場合のキャッシュフロー流列CFS1は、次式となる。
CFS1 = (-x, -x, -x, -x, -x, -x)
このCFS1の現在価値PV1は次式となる。
PV1 = -x - x/(1+r/12) - x/(1+r/12)2 - ... - x/(1+r/12)5 = -x((1+r/12)/(r/12))(1-1/(1+r/12)6)\ = -5853($)
手付金$1000を流して月額家賃y = 900($)のアパートに住む場合のキャッシュフロー流列CFS2は、次式となる。
CFS2 = (-x-y, -y, -y, -y, -y, -y)
このCFS2の現在価値PV2は次式となる。
PV2 = -x -y - y/(1+r/12) - y/(1+r/12)2 - ... - y/(1+r/12)5 = -x -y((1+r/12)/(r/12))(1-1/(1+r/12)6) = -1000 -5268 = -6268($)
現在価値を比較すると、新しいアパートに替えるべきでない。
(1年だけ住む場合)
仮定 金利 interest r = 0.12、家賃は月初めに支払う
月額家賃 month's rent x = 1000($)のアパートに住む場合のキャッシュフロー流列CFS3は、次式となる。
CFS3 = (-x, -x, -x, -x, -x, -x, -x, -x, -x, -x, -x, -x)
このCFS3の現在価値PV3は次式となる。
PV3 = -x - x/(1+r/12) - x/(1+r/12)2 - ... - x/(1+r/12)11 = -x((1+r/12)/(r/12))(1-1/(1+r/12)12) = -11,368($)
手付金$1000を流して月額家賃y = 900($)のアパートに住む場合のキャッシュフロー流列CFS4は、次式となる。
CFS4 = (-x-y, -y, -y, -y, -y, -y, -y, -y, -y, -y, -y, -y)
このCFS4の現在価値PV4は次式となる。
PV4 = -x -y - y/(1+r/12) - y/(1+r/12)2 - ... - y/(1+r/12)11 = -x -y((1+r/12)/(r/12))(1-1/(1+r/12)12) = -1000 -10231 = -11,231($)
現在価値を比較すると、新しいアパートに替えるべきである。
Python
Python 3で解く。
code
# 2.6.py
# 14:35 2015-03-29
# input
r = 0.12
n1 = 6
n2 = n1
n3 = 12
n4 = n3
i1 = list(range(n1))
i2 = i1
i3 = list(range(n3))
i4 = i3
c1 = [-1000 for x in range(n1)]
c2 = [ -900 for x in range(n2)]
c2[0] = c2[0]-1000
c3 = [-1000 for x in range(n3)]
c4 = [ -900 for x in range(n4)]
c4 = [-1000 -900] + c4
def pv(c, r, i):
return sum(map(lambda x, y: x / (1 + r / 12)**y, c, i))
# output
print("input")
print("i1= ", i1)
print("i2= ", i2)
print("i3= ", i3)
print("i4= ", i4)
print("cfs1= ", c1)
print("cfs2= ", c2)
print("cfs3= ", c3)
print("cfs4= ", c4)
print("output")
print("pv1($)= ", round(pv(c1, r, i1)))
print("pv2($)= ", round(pv(c2, r, i2)))
print("pv3($)= ", round(pv(c3, r, i3)))
print("pv4($)= ", round(pv(c4, r, i4)))
# end
output
input i1= [0, 1, 2, 3, 4, 5] i2= [0, 1, 2, 3, 4, 5] i3= [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] i4= [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] cfs1= [-1000, -1000, -1000, -1000, -1000, -1000] cfs2= [-1900, -900, -900, -900, -900, -900] cfs3= [-1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000] cfs4= [-1900, -900, -900, -900, -900, -900, -900, -900, -900, -900, -900, -900, -900] output pv1($)= -5853 pv2($)= -6268 pv3($)= -11368 pv4($)= -11231
Fortran code
revised on 2015-04-11.
Gauche code
JavaScript code
added on 2016-02-07, revised on 2020-11-22.
history
revised on 2009-11-01, 2011-11-02, 2014-02-11, 2015-03-29, 2015-04-11,
2016-02-07, 2016-09-28.
2016-09-28 Fortran, Gauche, Javascript codes moved to linked files.
2018-01-04 XHTML1.0 changed to HTML5.
2018-06-03 charset shift-jis to utf-8.
2021-02-14 move history.