zoukankan      html  css  js  c++  java
  • 2017模拟赛:还款计算

    银行贷款的等额本息还款方法是:
    每月还固定的金额,在约定的期数内正好还完(最后一个月可能会有微小的零头出入)。

    比如说小明在银行贷款1万元。贷款年化利率为5%,贷款期限为24个月。
    则银行会在每个月进行结算:
    结算方法是:计算本金在本月产生的利息: 本金 x (年利率/12)
    则本月本金结余为:本金 + 利息 - 每月固定还款额
    计算结果会四舍五入到“分”。

    经计算,此种情况下,固定还款额应为:438.71

    这样,第一月结算时的本金余额是:
    9602.96
    第二个月结算:
    9204.26
    第三个月结算:
    8803.9
    ....
    最后一个月如果仍按固定额还款,则最后仍有0.11元的本金余额,
    但如果调整固定还款额为438.72, 则最后一个月会多还了银行0.14元。
    银行会选择最后本金结算绝对值最小的情况来设定 每月的固定还款额度。
    如果有两种情况最后本金绝对值相同,则选择还款较少的那个方案。

    本题的任务是已知年化利率,还款期数,求每月的固定还款额度。

    假设小明贷款为1万元,即:初始本金=1万元。
    年化利率的单位是百分之多少。
    期数的单位为多少个月。

    输入为2行,
    第一行为一个小数r,表示年率是百分之几。(0<r<30)
    第二行为一个整数n,表示还款期限。 (6<=n<=120)

    要求输出为一个整数,表示每月还款额(单位是:分)

    例如:
    输入:
    4.01
    24

    程序应该输出:
    43429

    再比如:
    输入:
    6.85
    36

    程序应该输出:
    30809

     1 import java.math.BigInteger;
     2 import java.util.Arrays;
     3 import java.util.Scanner;
     4 
     5 
     6 public class Main {
     7     public static void main(String[] args) {
     8         Scanner input = new Scanner(System.in);
     9         double r = input.nextDouble();
    10         int n = input.nextInt();
    11         double sum = 1000000;
    12         double result = sum;
    13         int h = 0;
    14         double temp = result;
    15         while(true){
    16             temp = result;
    17             result = sum;
    18             h++;
    19             for(int i=0;i<n;i++){
    20                 result = result+result*r/1200-h;
    21             }
    22             if(result<0){
    23                 break;
    24             }
    25         }
    26         if(temp<Math.abs(result)){
    27             System.out.println(h-1);
    28         }else{
    29             System.out.println(h);
    30         }
    31     }
    32     
    33 }
  • 相关阅读:
    一、区块链,这次不容错过
    二、常用固件升级
    2.监控利器nagios手把手企业级实战第一部
    四、NOSQL之Redis持久化缓存服务基础实战第三部
    三、NOSQL之Memcached缓存服务实战精讲第二部
    linux重装docker-compose后无法执行docker-compose命令
    mongodb启用auth,使用密码登录
    Vue的三个点es6知识,扩展运算符
    关于同一台服务器上两个PHP项目相互访问超时的问题
    ffmpeg生成视频封面图
  • 原文地址:https://www.cnblogs.com/lolybj/p/6596078.html
Copyright © 2011-2022 走看看