用c++實現淨現值的計算

阿飞藏泪發表於2024-03-11

我是用c++實現的,我是把貼現率保留了四位小數。下面是我寫的程式碼:

#include<iostream>
#include<cmath>
using namespace std;
float jst(int j,float m,float lv)
{
        while(j!=0)
        {
            m *=(1+lv);
            j--;
        }
        return 1.0/m;
}
int  main()
{
    cout<<"請輸入投資額"<<endl; 
    float a;cin>>a;    
    float q=0;
    cout<<"請輸入貼現率"<<endl; 
    float lv;cin>>lv; 
    cout<<"請輸入年限"<<endl; 
    int year;cin>>year;
    for(int i=1;i<=year;i++)
    {
        cout<<"請輸入第"<<i<<"年的利潤"<<endl; 
        float yq;cin>>yq;
        float t;float m=1;
        t=jst(i,m,lv);
        int z;
        z=round(t*10000);
        t=float(z)/10000; 
        yq=t*yq;
        q+=yq;
     } 
     q=q-a;
     cout<<q;
}

相關文章