Java、显示分期还贷时间表
对于给定的贷款额,月支付额包括偿还本金及利息。月利息是通过月利率乘以余额(剩余本金)计算出来的。
注意:最后一次偿还后,余额可能不为0,如果不为0的话,最后一个月支付额应当是正常的月支付额加上最后的余额。
提示:编写一个循环来打印该表,由于每个月的还款额都是相同的,因此应当在循环之间开始它。开始时,余额就是贷款总额。在循环的每次迭代中,计算利息及本金,然后更新余额。
编写一个程序,让用户输入贷款总额年限利率,然后显示分期还贷时间表。
package pack2;import java.util.Scanner;public class LoanTimetable {public static void main(String[] args) {try(Scanner input = new Scanner(System.in);) {System.out.print(" Loan Amount: ");double amount = input.nextDouble();System.out.print(" Number of Years: ");int year = input.nextInt();System.out.print(" Annual Interest Rate: ");double annualInterestRate = input.nextDouble();showLoanTimetable(amount, year, annualInterestRate);}}//显示分期还贷时间表public static void showLoanTimetable(double balance, int numberOfYears,double annualInterestRate) {double monthlyRate = annualInterestRate / 1200;double monthlyPayment = monthlyPayment(balance, monthlyRate, numberOfYears);System.out.printf("\n Monthly Payment: %.2f\n", monthlyPayment);System.out.printf(" Total Payment: %.2f\n\n", totalPayment(numberOfYears, monthlyPayment));System.out.println(" Payment#\tInterest\tPrincipal\tBalance");for (int i = 1; i <= numberOfYears * 12; i++) {double interest = monthlyRate * balance;double principal = monthlyPayment - interest;balance -= principal;System.out.printf(" %-6d%14.2f%17.2f\t%15.2f\n", i, interest, principal, balance);}}//月支付额public static double monthlyPayment(double amount, double rate, int year) {return amount * rate / (1 - 1 / Math.pow(1 + rate, year * 12));}//总支付额public static double totalPayment(int year, double monthlyPayment) {return monthlyPayment * 12 * year;}
}
Java、显示分期还贷时间表相关推荐
- Java黑皮书课后题第5章:**5.22(金融应用:显示分期还贷时间表)对于给定的贷款额,月支付额包括偿还本金及利息。编写一个程序,让用户输入贷款总额年限利率,然后显示分期还贷时间表
5.22(金融应用:显示分期还贷时间表)对于给定的贷款额,月支付额包括偿还本金及利息.编写一个程序,让用户输入贷款总额年限利率,然后显示分期还贷时间表 题目 题目概述 运行示例 代码 题目 题目概述 ...
- Java,第二次作业——显示分期还贷时间表
题目: ( 财务应用程序:显示分期还贷时间表)对于给定的贷款额的月支付额包括偿还本金及 利息.月利息是通过月利率乘以余额(剩余本金)计算出来的.因此,每月偿还的本金 等于月支付额减去月利息.编写一个程 ...
- Java显示the type xxx is already defined的解决方法
Java显示the type xxx is already defined 今天在做Java的时候,Eclipse一直显示错误,打开一看,显示The type xxx is already defin ...
- 《PHP与MySQL程序设计(第四版)》中第73页4.2.6节分期还贷计算器数学原理分析
-----------------------------<PHP与MySQL程序设计(第四版)>中第73页4.2.6节分期还贷计算器数学原理分析. <PHP与MySQL程序设计(第 ...
- java实现gif动画效果(java显示动态图片)
关闭 关闭 脚本之家 软件下载 源码下载 在线工具 网页教程基础 服务器常用软件 手机版 关注微信 网页制作 网络编程 脚本专栏 脚本下载 数据库 CMS教程 电子书籍 平面设计 媒体动画 操作系统 ...
- java 显示中文_java显示中文乱码的解决方法
java显示中文乱码的解决方法 发布时间:2020-06-16 11:08:43 来源:亿速云 阅读:97 作者:Leah 这篇文章运用简单易懂的例子给大家介绍java显示中文乱码的解决方法,代码非常 ...
- java 显示 装配_SpringInAction--自动化装配(显示装配之 java注解配置)
Spring在配置时候有三种方案可选 1.在xml中进行显示配置 2.在java中进行显示配置 3.隐式的Bean发现机制和自动装配 今天学习的 第二种-- 在java中进行显示配置 场景: 尽管在很 ...
- java动态图片_java实现gif动画效果(java显示动态图片)
关闭 关闭 java实现gif动画效果(java显示动态图片) 作者: 字体:[增加 减小] 类型:转载 时间:2014-04-29我要评论 这篇文章主要介绍了java实现gif动画效果示例(java ...
- java显示图片_java显示图片的方法
java显示图片的方法 applet能显示GIF,JPEG,BMP等其他格式的图片.为了在applet中显示图片,你需要使用java.awt.Graphics类的drawImage()方法.以下是小编 ...
最新文章
- oracle数据库开多线程,学习笔记:Oracle表数据导入 DBA常用单线程插入 多线程插入 sql loader三种表数据导入案例...
- webService学习7:调用天气接口
- abap 一些小知识点的总结
- 解读OpenShift的逻辑架构和技术架构
- 【版本发布】JEECG 3.6.2 移动能力版发布,快速开发平台
- MyEclipse Profile 结合visualvm 监控内存泄露
- Panabit安装(二、Panabit安装)
- final关键字_夯实基础:Java中final关键字的几种用法
- BYOD提升企业生产力的5种方式
- 专栏数量创新高、问答wap端新视觉
- 【转】ajax发送请求时候为什么会报拒绝设置不安全的header
- AJPFX关于子类父类中的构造
- 《30天学习30种新技术》-Day 15:Meteor —— 从零开始创建一个 Web 应用
- Slideout.js+YDUI Touch+mescroll
- 基于JavaEye-API实现的Gerry-聊天QQ版v1.0 (全)
- 小米路由器安装花生壳实现外网映射
- 驱动工程师面试题汇编
- 产品| 产品经理学习路径及职业规划
- MyBatis 关联映射
- Ad Hoc网络路由协议