目次 (contents)

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.

2.6.f90

Gauche code

2.6.scm

JavaScript code

added on 2016-02-07, revised on 2020-11-22.

2.6.js


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.