excel中ppmt/pmt/ipmt的计算方式

参考来源: https://www.experts-exchange.com/articles/1948/A-Guide-to-the-PMT-FV-IPMT-and-PPMT-Functions.html

pmt计算公式:

1 double pmt(double r, int nper, double pv, double fv, int type) {
2         double pmt = r / (Math.pow(1 + r, nper) - 1)
3                 * -(pv * Math.pow(1 + r, nper) + fv);
4 
5         return pmt;
6     }

 

ppmt计算公式:

double ppmt(double r, int per, int nper, double pv, double fv, int type) {
        return pmt(r, nper, pv, fv, type) - ipmt(r, per, nper, pv, fv, type);
    }

 

ipmt计算公式

1 double ipmt(double r, int per, int nper, double pv, double fv, int type) {
2 
3         double ipmt = fv(r, per - 1, pmt(r, nper, pv, fv, type), pv, type) * r;
4 
5         if (type == 1) ipmt /= (1 + r);
6 
7         return ipmt;
8     }

 

fv计算公式:

double fv(double r, int nper, double c, double pv, int type) {
        double fv = -(c * (Math.pow(1 + r, nper) - 1) / r + pv
                * Math.pow(1 + r, nper));

        return fv;
    }

 

posted @ 2017-11-03 10:46  知行-zhixing  阅读(3918)  评论(0编辑  收藏  举报