// 2.6.js // 2016-02-07, 2020-11-22 01:26:01 // $Id: 2.6.js 1.2 2020/11/22 01:26:01 s Exp s $ "use strict" // r : rate // cfs : cash flow stream //function const pv = function(cfs, r){ // pv : present value const pvi = cfs.map((_, i) => cfs[i] / (1 + r / 12) ** i); return pvi.reduce((x, y) => x + y); // sum }; // input const r = 0.12; const cfs1 = [-1000, -1000, -1000, -1000, -1000, -1000]; const cfs2 = [ -900 - 1000, -900, -900, -900, -900, -900]; const cfs3 = [-1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000]; const cfs4 = [ -900 - 1000, -900, -900, -900, -900, -900, -900, -900, -900, -900, -900, -900]; // output console.log('2.6.js'); console.log('input'); console.log('rate = ', r); console.log('cfs1 = ', cfs1); console.log('cfs2 = ', cfs2); console.log('cfs3 = ', cfs3); console.log('cfs4 = ', cfs4); console.log('output'); console.log('pv1 = ', Math.round(pv(cfs1, r))); console.log('pv2 = ', Math.round(pv(cfs2, r))); console.log('pv3 = ', Math.round(pv(cfs3, r))); console.log('pv4 = ', Math.round(pv(cfs4, r))); // end