Java黑皮书课后题第5章:**5.22(金融应用:显示分期还贷时间表)对于给定的贷款额,月支付额包括偿还本金及利息。编写一个程序,让用户输入贷款总额年限利率,然后显示分期还贷时间表
5.22(金融应用:显示分期还贷时间表)对于给定的贷款额,月支付额包括偿还本金及利息。编写一个程序,让用户输入贷款总额年限利率,然后显示分期还贷时间表
- 题目
- 题目概述
- 运行示例
- 代码
题目
题目概述
5.22(金融应用:显示分期还贷时间表)对于给定的贷款额,月支付额包括偿还本金及利息。编写一个程序,让用户输入贷款总额年限利率,然后显示分期还贷时间表
月利息是通过月利率乘以余额(剩余本金)计算出来的
注意:最后一次偿还后,余额可能不为0,如果不为0的话,最后一个月支付额应当是正常的月支付额加上最后的余额
提示:编写一个循环来打印该表,由于每个月的还款额都是相同的,因此应当在循环之间开始它。开始时,余额就是贷款总额。在循环的每次迭代中,计算利息及本金,然后更新余额,这个循环可能是这样的:
for( i = 1; i <= numberOfYears * 12; i++) {
interest = monthlyInterestRate * balance;
principal = monthlyPayment - interest;
balance = balance - principal;
System.out.println(i + “\t\t” + interest + “\t\t” + principal + “\t\t” + balance);
}
运行示例
代码
import java.util.Scanner;public class Test5_22 {public static void main(String[] args) {// 获取用户输入Scanner input = new Scanner(System.in);System.out.println("Loan Amount: ");double amount = input.nextDouble();System.out.println("Number of Years: ");int years = input.nextInt();System.out.println("Annual Interest Rate(7%-->7): ");double interestRate = input.nextDouble();// 计算月支付额、总支付额double monthlyPayment = (amount * interestRate / 1200) / (1 - 1 / Math.pow(1 + interestRate / 1200, years * 12));double totalPayment = monthlyPayment * years * 12;System.out.println("Monthly Payment: " + monthlyPayment);System.out.println("Total Payment: " + totalPayment);// 输出表头System.out.println("Payment# Interest\t\tPrincipal\t\ttBalance");// for循环double interest = 0.0, principal = 0.0;for(int i = 1;i <= years * 12;i++){interest = interestRate / 1200 * amount;principal = monthlyPayment - interest;amount -= principal;if(i == years * 12)principal += amount;System.out.print(i + "\t\t ");System.out.printf("%5.2f\t\t%6.2f\t\t%7.2f\n", interest, principal, amount);}}
}
Java黑皮书课后题第5章:**5.22(金融应用:显示分期还贷时间表)对于给定的贷款额,月支付额包括偿还本金及利息。编写一个程序,让用户输入贷款总额年限利率,然后显示分期还贷时间表相关推荐
- Java黑皮书课后题第3章:**3.9(商业:检验ISBN-10)ISBN-10由10个个位整数d1d2d3d4d5d6d7d8d9d10组成,最后一位d10是校验和,输入前9个数,显示10位ISBN
**3.9(商业:检验ISBN-10)ISBN-10由10个个位整数d1d2d3d4d5d6d7d8d9d10组成,最后一位d10是校验和,输入前9个数,显示10位ISBN 题目 题目概述 运行示例 ...
- Java黑皮书课后题第2章:*2.17(科学:风寒温度)外面有多冷?...twc=35.74+0.6215ta-35.75v0.16+0.4275tav0.16,输入度数、风速显示风寒温度
*2.17(科学:风寒温度)外面有多冷?...twc=35.74+0.6215ta-35.75v0.16+0.4275tav0.16,输入度数.风速显示风寒温度 题目 题目描述 破题 运行示例 代码 ...
- Java黑皮书课后题第5章:5.11(找出能被5或6整除的数,但不能同时整除)编写程序,显示从100到1000之间能被5或6整除但不能同时整除的数,每行显示10个。数字之间用一个空格字符隔开
5.11(编写程序,显示从100到1000之间能被5或6整除但不能同时整除的数,每行显示10个.数字之间用一个空格字符隔开 题目 题目概述 破题 引申:continue break与return 代码 ...
- Java黑皮书课后题第9章:*9.4(使用Random类)编写一个程序,创建一个种子为1000的Random对象,然后使用nextInt(100)方法显示0到100之间的前50个随机整数
Java黑皮书课后题第9章:*9.4(使用Random类)编写一个程序,创建一个种子为1000的Random对象,然后使用nextInt方法显示0到100之间的前50个随机整数 题目 赘述 代码 题目 ...
- Java黑皮书课后题第9章:*9.3(使用Date类)编写程序创建一个Date对象,设置它的流逝时间分别为...,然后使用toString()方法分别显示上述日期
Java黑皮书课后题第9章:*9.3(使用Date类)编写程序创建一个Date对象,设置它的流逝时间分别为...,然后使用toString方法分别显示上述日期 题目 代码 思路 代码 题目 代码 思路 ...
- Java黑皮书课后题第1章:1.12(以千米计的平均速度)假设一个跑步者1小时40分35秒跑了24英里。编写一个程序显示以每小时为多少千米为单位的平均速度值(1英里等于1.6千米)
Java黑皮书课后题第1章:1.12(以千米计的平均速度) 题目 题目描述 破题 代码块 修改日志 题目 题目描述 1.12(以千米计的平均速度)假设一个跑步者1小时40分35秒跑了24英里.编写一个 ...
- Java黑皮书课后题第1章:*1.11(人口估算)编写一个程序,显示未来5年的每年人口数。假设当前的人口是312 032 486,每年有365天
Java黑皮书课后题第1章:*1.11(人口估算) 题目 题目描述 破题 代码块 方法评析 为什么print函数内的表达式不能分开 修改日志 题目 题目描述 *1.11(人口估算)编写一个程序,显示未 ...
- Java黑皮书课后题第1章:1.7(求π的近似值)编写程序,显示4*(1-1/3+1/5-1/7+1/9-1/11【+1/13】)
Java黑皮书课后题第1章:1.7(求π的近似值) 题目描述 代码 代码块 评析 修改日志 题目描述 可以使用以下公式计算π: [手动空格]π=4*(1-1/3+1/5-1/7+1/9-1/11+-) ...
- Java黑皮书课后题第1章:1.6(数列求和)编写程序,显示1+2+3+4+5+6+7+8+9的结果
Java黑皮书课后题第1章:1.6(数列求和) 题目 题目描述 槽点 代码 代码块 区分println(x)与println("x") 法1法2选用 修改日志 题目 题目描述 1. ...
最新文章
- pyqt tableWidget 单元格设置颜色
- R语言构建决策树(decision trees)模型并进行调优和解释
- 2Python全栈之路系列之MysQl基本数据类型
- java1.9关键字_对 Java 9 把单个下划线作为关键字的猜想
- mysql-5.7在CentOS-7下的rpm安装
- python中的while循环语句的数组循环_while循环
- 【课程作业】EA-CNN演化卷积神经网络实验记录
- Go 源码学习之--net/http
- 利用深度学习自动补全 Python 代码,这个开源项目有点牛逼
- 现在每天虽然比较早到达公司,鸡腿中午8:30接到施电话
- 《构建之法》阅读笔记05
- python对象与json字符串的相互转化
- 如何使用自訂 Segue 實現視圖轉場動畫
- 带你实战Android深色模式,深入原理剖析
- 架构师须知概念:POJO、PO、DTO、DAO、BO、VO
- c++获取umg ue_UE4中UMG与C++交互 页面文本修改
- 【沃顿商学院学习笔记】商业基础——Financing:02 年金 Annuity
- pwm超详细解读,大佬细说pwm的控制方式
- STM32OLED显示-学习笔记
- chdir、fchdir 和 getcwd 函数
热门文章
- 【直播预告 | 阿里云 CDP 公开课】11月25日下午14点准时开讲
- 开源之夏 | 阿里开源近百任务上线
- mPaas-RPC拦截器各种场景下的使用指南
- 北京沙龙报名 | 关于Dubbo开源的那些事儿
- 次世代手游美术资源优化干货分享
- The world at your fingertips — 天涯明月刀幕后24(疏离)
- pmp每日三题(2022年2月16日)
- InnoDB锁机制之Gap Lock、Next-Key Lock、Record Lock解析
- SecureCRT突然假死的问题(Ctrl+S)
- Oracle RAC 客户端连接负载均衡(Load Balance)