• 复利计算3


      1 #include<stdio.h>
      2 #include<math.h>
      3 #include<conio.h>
      4 void tip()//计算公式和一些变量的介绍
      5 {
      6      printf("复利计算软件
    ");
      7      printf("    复利计算公式:F=P*pow((1+i/m),N*m)
    ");
      8      printf("    单利计算公式:L=P*N*i;H=L+P
    ");
      9      printf("	F:复利终值|年金终值
    ");
     10      printf("	P:本金
    ");
     11      printf("	i:利率
    ");
     12      printf("	H:本利和
    ");
     13      printf("	N:利率获取时间的整数倍
    ");
     14      printf("	m:年复利次数(一年当中的滚利次数)
    ");
     15 }
     16 void menu()//菜单
     17 {
     18        printf("		|-----------------------------------|
    ");
     19        printf("		|             welcome               |
    ");
     20        printf("		|-----------------------------------|
    ");
     21        printf("		|           1:计算本金              |
    ");
     22        printf("		|           2:计算年复利终值        |
    ");
     23        printf("		|           3:单利计算              |
    ");
     24        printf("		|           4:计算年份              |
    ");
     25        printf("		|           5:计算年利率            |
    ");
     26        printf("		|           6:年金终值(年|月)       |
    ");
     27        printf("		|           0:结束                  |
    ");
     28        printf("		|-----------------------------------|
    ");
     29        printf("请输入你要选择的功能(0~6):
    ");
     30 
     31 }
     32 void benjin()//计算本金
     33 {
     34      int N,m;
     35      double i,F,P;
     36      printf("复利终值:");
     37      scanf("%lf",&F);
     38      printf("年利率:");
     39      scanf("%lf",&i);
     40      printf("存入年限:");
     41      scanf("%d",&N);
     42      printf("年复利次数:");
     43      scanf("%d",&m);
     44      P=F/pow((1+i/m),N*m);
     45      printf("年复利终值为%.4lf需要本金为:%.4lf
    ",F,P);
     46 }
     47 void fuli()//计算复利终值
     48 {
     49      int N,m;
     50      double i,F,P;
     51      printf("存入本金:");
     52      scanf("%lf",&P);
     53      printf("年利率:");
     54      scanf("%lf",&i);
     55      printf("存入年限:");
     56      scanf("%d",&N);
     57      printf("年复利次数:");
     58      scanf("%d",&m);
     59      F=P*pow((1+i/m),N*m);
     60      printf("复利终值:%.4lf
    ",F);
     61 }
     62 void danli()//单利计算
     63 {
     64      int N;
     65      double i,H,P,L;
     66      printf("存入本金:");
     67      scanf("%lf",&P);
     68      printf("年利率:");
     69      scanf("%lf",&i);
     70      printf("存入年限:");
     71      scanf("%d",&N);
     72      L=P*N*i;
     73      H=L+P;
     74      printf("本息和为:%.4lf
    ",H);
     75 }
     76 void years()//求年份
     77 {
     78      int N,m;
     79      double i,F,P;
     80      printf("复利终值:");
     81      scanf("%lf",&F);
     82      printf("存入本金:");
     83      scanf("%lf",&P);
     84      printf("年利率:");
     85      scanf("%lf",&i);
     86      printf("年复利次数:");
     87      scanf("%d",&m);
     88      N=(int)(log(F/P)/log(1+i/m)/m);
     89      printf("从%.4lf到%.4lf需要%d年
    ",P,F,N);
     90 }
     91 void annual_int_rate()//计算年利率
     92 {
     93      int N,m;
     94      double i,F,P;
     95      printf("复利终值:");
     96      scanf("%lf",&F);
     97      printf("存入本金:");
     98      scanf("%lf",&P);
     99      printf("存入年限:");
    100      scanf("%d",&N);
    101      printf("年复利次数:");
    102      scanf("%d",&m);
    103      i=m*(pow(F/P,1.0/(N*m))-1);
    104      printf("从%.4lf到%.4lf需要%.4lf
    ",P,F,i);
    105 }
    106 void YM_final_value_annuity()//计算年金终值
    107 {
    108      int N,n;
    109      double i,F,P;
    110      printf("存入本金:");
    111      scanf("%lf",&P);
    112      printf("存入年限:");
    113      scanf("%d",&N);
    114      printf("年利率:");
    115      scanf("%lf",&i);
    116      printf("		1:按年投资
    		2:按月投资
    ");
    117 A:printf("请选择你要的功能<1|2>:");
    118      scanf("%d",&n);
    119      if(n==1)
    120      {
    121          F=P*(pow(1+i,N)-1)/i;
    122          
    123      }
    124      else if(n==2)
    125      {
    126          F=N*12*(P*(i/12)+P);
    127      }
    128      else
    129      {
    130          printf("输入有误!请重新输入
    ");
    131          goto A;
    132      }
    133      printf("%d年后的总产值:%.4lf
    ",N,F);
    134 
    135 }
    136 void main()
    137 {
    138      int n;
    139      while(1)
    140      {
    141          tip();
    142          menu();
    143          scanf("%d",&n);
    144          if(n==0)
    145              break;
    146          switch(n)
    147          {
    148             case 1:
    149                 benjin();break;
    150             case 2:
    151                 fuli();break;
    152             case 3:
    153                  danli();break;
    154             case 4:
    155                  years();break;
    156             case 5:
    157                  annual_int_rate();break;
    158             case 6:
    159                  YM_final_value_annuity();break;
    160             case 0:n=0;break;    
    161 
    162          }
    163           getch();
    164      }
    165 }

  • 相关阅读:
    Why Choose Jetty?
    Jetty 的工作原理以及与 Tomcat 的比较
    Tomcat设计模式
    Servlet 工作原理解析
    Tomcat 系统架构
    spring boot 打包方式 spring boot 整合mybaits REST services
    wireshark udp 序列号 User Datagram Protocol UDP
    Maven 的聚合(多模块)和 Parent 继承
    缓存策略 半自动化就是mybaitis只支持数据库查出的数据映射到pojo类上,而实体到数据库的映射需要自己编写sql语句实现,相较于hibernate这种完全自动化的框架我更喜欢mybatis
    Mybatis解决sql中like通配符模糊匹配 构造方法覆盖 mybits 增删改
  • 原文地址:https://www.cnblogs.com/zzy999/p/5284925.html
Copyright © 2020-2023  润新知