# 4.11.jl # 2024-10-12 # $Id: 4.11.jl 1.1 2024/11/02 07:49:14 s Exp $ # # x, cash flow stream # s, spot rates # d, discount factor # pv, present value using Printf # input const x = [-40, 10, 10, 10, 10, 10, 10 ] const s_percent = [ 0, 5.0, 5.3, 5.6, 5.8, 6.0, 6.1] # calculate const s = s_percent ./ 100 const n = length(s) const i = 0:n-1 const d = 1 ./ (1 .+ s) .^ i const xd = x .* d const pv = sum(xd) # output println("4.11.jl") @printf("%10s%10s%10s%10s%10s\n", "k", "s", "d", "x", "x*d") println(repeat("-", 50)) for k = 1:n @printf("%10d%10.3f%10.2f%10.0f%10.2f\n", k, s[k], d[k], x[k], xd[k]) end println(repeat("-", 50)) @printf("%40s%10.2f\n", "pv=", pv) # eof