• 复利计算


    #include<stdio.h>

    #include<math.h>

    void FL()

    {

             int n,j;

             double i,p,f;

             printf("请输入本金");

             scanf("%lf",&p);

             printf("请输入年利率");

             scanf("%lf",&i);

             printf("请输入存款年限");

             scanf("%d",&n);

             printf("请输入复利次数");

             scanf("%d",&j);

             f=p*pow((1+i/j),n*j);

             printf("本金利息共为%lf ",f);

    }

    void DL()

    {

            

             double f,i,p,n;

             printf("请输入本金");

             scanf("%lf",&p);

             printf("请输入年利率");

             scanf("%lf",&i);

             printf("请输入存款年限");

             scanf("%lf",&n);

             f=p*(1+i*n);

             printf("本金利息共为%lf ",f);

    }

    void BJ()

    {

             int n1,n2,j1,a;

             double f1,f2,i1,i2,p1,p2;

        printf("1:复利计算本金 ");

        printf("2:单利计算本金 ");

             printf("请输入序号(1-2)");

    CBJ:

             scanf("%d",&a);

        switch(a)

             {

             case 1:

             printf("请输入目标金额");

             scanf("%lf",&f1);

             printf("请输入年利率");

             scanf("%lf",&i1);

             printf("请输入存款年限");

             scanf("%d",&n1);

             printf("请输入复利次数");

             scanf("%d",&j1);

             p1=f1/pow(i1/j1+1,j1*n1);

             printf("本金为%lf ",p1);

             break;

             case 2:

             printf("请输入目标金额");

             scanf("%lf",&f2);

             printf("请输入年利率");

             scanf("%lf",&i2);

             printf("请输入存款年限");

             scanf("%d",&n2);

             p2=f2/(1+i2*n2);

             printf("本金为%lf ",p2);

             break;

             default:

                       printf("请重新输入序号(1-2)");

                       goto CBJ;

             }

    }

    void Time()

    {

             int j1,a;

        double  f1,f2,i1,i2,p1,p2,n1,n2;

        printf("1:复利计算时间 ");

        printf("2:单利计算时间 ");

             printf("请输入序号(1-2)");

    CTime:

             scanf("%d",&a);

        switch(a)

             {

             case 1:

             printf("请输入目标金额");

             scanf("%lf",&f1);

             printf("请输入年利率");

             scanf("%lf",&i1);

             printf("请输入本金");

             scanf("%lf",&p1);

             printf("请输入复利次数");

             scanf("%d",&j1);

             n1=log(pow(f1/p1,1/j1))/log(1+i1/j1);

             printf("时间为%lf ",n1);

             break;

             case 2:

             printf("请输入目标金额");

             scanf("%lf",&f2);

             printf("请输入年利率");

             scanf("%lf",&i2);

             printf("请输入本金");

             scanf("%lf",&p2);

        n2=(f2/p2-1)/i2;

             printf("时间为%lf ",n2);

             break;

             default:

                       printf("请重新输入序号(1-2)");

                       goto CTime;

             }

    }

    void LL()

    {

             int a;

             double f1,f2,i1,i2,p1,p2,n1,n2,j1;

        printf("1:复利计算利率 ");

        printf("2:单利计算利率 ");

             printf("请输入序号(1-2)");

    CLL:

             scanf("%d",&a);

        switch(a)

             {

             case 1:

             printf("请输入目标金额");

             scanf("%lf",&f1);

             printf("请输入存款年限");

             scanf("%lf",&n1);

             printf("请输入本金");

             scanf("%lf",&p1);

             printf("请输入复利次数");

             scanf("%lf",&j1);

             i1=j1*(pow(pow(f1/p1,1/j1),1/n1)-1);

             printf("利率为%lf ",i1);

             break;

             case 2:

             printf("请输入目标金额");

             scanf("%lf",&f2);

             printf("请输入本金");

             scanf("%lf",&p2);

             printf("请输入存款年限");

             scanf("%lf",&n2);

             i2=(f2/p2-1)/n2;

             printf("利率为%lf ",i2);

             break;

             default:

                       printf("请重新输入序号(1-2)");

                       goto CLL;

             }

    }

    void DT()

       int b;

       double M,a,x,n;

       printf("1:月定基金投 ");

       printf("2:年基金定投 ");

       printf("请输入序号(1-2)");

    CDT:

       scanf("%d",&b);

       switch(b)

       {

       case 1:

                printf("请输入每期定投金额");

                scanf("%lf",&a);

                printf("请输入收益率");

                scanf("%lf",&x);

                printf("请输入定投期数");

                scanf("%lf",&n);

                M=a*12*(1+x)*(-1+pow(1+x,n))/x;

           printf("预期收入为%lf ",M);

                break;

       case 2:

           printf("请输入每期定投金额");

                scanf("%lf",&a);

                printf("请输入收益率");

                scanf("%lf",&x);

                printf("请输入定投期数");

                scanf("%lf",&n);

                M=a*(1+x)*(-1+pow(1+x,n))/x;

                printf("预期收入为%lf ",M);

                break;

             default:

                       printf("请重新输入序号(1-2)");

                       goto CDT;

             }

      

    }

    void HK()

    {

      int n,j;

             double i,p,f,y;

             printf("请输入贷款金额");

             scanf("%lf",&p);

             printf("请输入年利率");

             scanf("%lf",&i);

             printf("请输入还款年限");

             scanf("%d",&n);

             printf("请输入复利次数");

             scanf("%d",&j);

             f=p*pow((1+i/j),n*j);

             y=f/(n*12);

             printf("每月还款为%lf ",y);

    }

    void main()

    {

             int m;

             printf("1:复利计算 ");

             printf("2:单利计算 ");

             printf("3:求本金 ");

             printf("4:求时间 ");

             printf("5:求利率 ");

             printf("6:基金定投 ");

             printf("7:每月还款 ");

             printf("请输入序号(1-7)");

    CX:  

             scanf("%d",&m);

             if(m==1)

                       FL();

              else if(m==2)

                 DL();

              else if(m==3)

                       BJ();

              else if(m==4)

                       Time();

              else if(m==5)

                        LL();

              else if(m==6)

                        DT();

              else if(m==7)

                        HK();

              else

              {  

                        

                       printf("请重新输入序号(1-7)");

                 goto CX;

              }

    }

     

  • 相关阅读:
    怎样把.git版本控制文件夹放在项目目录下
    mybatis3-generator-plugin插件地址
    @RestController
    <mvc:annotation-driven />注解意义
    关于Spring中的<context:annotation-config/>配置
    Jeecg-Boot前后端分离,针对敏感数据,加密传递方案
    微信开发SDK支持小程序 ,Jeewx-Api 1.3.1 版本发布
    Mybatis传递多个参数的4种方式(干货)
    Online开发初体验——Jeecg-Boot 在线配置图表
    JAVA开源微信管家平台——JeeWx捷微V3.3版本发布(支持微信公众号,微信企业号,支付窗)
  • 原文地址:https://www.cnblogs.com/Rick00/p/5295983.html
Copyright © 2020-2023  润新知