Java---计算机贷款支付额计算(用对话框实现)
- 本例演示如何编写程序来计算贷款支付问题。
- 下面是编写程序的步骤:
- 1.提示用户输入年利率、年数和贷款总额
- 2.利用年利率算出月利率
- 3.通过前面的公式计算月支付额。
- 4.计算总支付额,它是月支付额乘以12再乘以年数。
- 5.在消息对话框中显示月支付额和总支付额。
package cn.hncu.Chapter2;
import javax.swing.JOptionPane;
/**
* @author hncu_chx
*
* Mylove amin
*
*/
public class ComputeLoan {
public static void main(String[] args) {
//Enter yearly interest rate开始的年利率
String annualInterestRateString = JOptionPane.showInputDialog("Enter yearly " +
"interest rate,for example 8.25:");
//Convert转换… string to double
double annualInterestRate =
Double.parseDouble(annualInterestRateString);
//Obtain获得 monthly每月的 interest rate利息率
double monthlyInterestRate = annualInterestRate/1200;
//Enter number of years
String numberOfYearsString =JOptionPane.showInputDialog("Enter number of years as an integer," +
"\nfor example 5:");
//Convert转换 string to int
int numberOfYears = Integer.parseInt(numberOfYearsString);
//Enter开始 loan借款 amount总额
String loanString = JOptionPane.showInputDialog("Enter loan amount," +
"for example 120000.95:");
//Convert string to double
double loanAmount = Double.parseDouble(loanString);
//Calculate 计算 payment付款,支付;报酬
double monthlyPayment = loanAmount * monthlyInterestRate/(1-1/Math.pow(1+monthlyInterestRate,
numberOfYears*12));
double totalPayment = monthlyPayment*numberOfYears*12;
//Format格式 to keep tow digits位数 数字 after the decimal小数 point点
//格式保留小数点后两位数
monthlyPayment = (int )(monthlyPayment *100)/100.0;
totalPayment = (int)(totalPayment *100)/100.0;
//Display显示 results结果 成绩
String output = "The monthly payment is "+monthlyPayment+
"\nThe total payment is "+totalPayment;
JOptionPane.showMessageDialog(null, output);
}
}
注意:如果在输入对话框中点击取消,无字符串返回,系统会出现运行时错误。
Java---计算机贷款支付额计算(用对话框实现)的更多相关文章
- java GUI,贷款服务器
本习题来自<java语言程序设计--进阶篇>第30章,网络编程的习题. 题目描述:为一个客户端编写一个服务器.客户端向服务器发送贷款信息(年利率.贷款年限和贷款总额).服务器计算月偿还额和 ...
- Java中的Double类型计算
一.问题的提出: 如果我们编译运行下面这个程序会看到什么?public class Test{ public static void main(String args[]){ Sy ...
- 计算机上面常用的计算单位 & 个人计算机架构与接口设备
不多说,直接上干货! 计算机上面常用的计算单位 容量单位 速度单位 此网络常使用的单位为 Mbps 是 Mbits per second,亦即是每秒多少 Mbit. 个人计算机架构与接口设备 整个 ...
- Java 后端微信支付demo
Java 后端微信支付demo 一.导入微信SDK 二.在微信商户平台下载证书放在项目的resources目录下的cert文件夹下(cert文件夹需要自己建) 三.实现微信的WXPayConfig接口 ...
- java实现微信支付
java实现微信支付 package com.hk.wx.pay.service.impl; @Service public class PayServiceImpl implements PaySe ...
- 浅谈Java两种并发类型——计算密集型与IO密集型
转载:https://blog.csdn.net/u013070853/article/details/49304099 核心是可以分别独立运行程序指令的计算单元.线程是操作系统能够进行运算调度的最小 ...
- Java之阶乘数的计算
说起“阶乘数”,我们应该都不会感到陌生.当老师布置了这样的作业,我们大多数人是一贯用笔算,还有的同学会用计算机去计算.数学是讲究原理和方法的,我们知其然,也要知其所以然.下面我们就用编程来计算阶乘数. ...
- java 支付宝wap支付初识
最近突然想弄下支付宝的支付,因为感觉很好玩.中间遇到很多问题,查查找找,总算是整了两天给整出来了,这里为自己记录下. 第一步:直接去安卓支付宝的官方文档去,写的很清楚了已经,这里有源码https:// ...
- Java电商支付系统手把手实现(二) - 数据库表设计的最佳实践
1 数据库设计 1.1 表关系梳理 仔细思考业务关系,得到如下表关系图 1.2 用户表结构 1.3 分类表结构 id=0为根节点,分类其实是树状结构 1.4 商品表结构 注意价格字段的类型为 deci ...
随机推荐
- 响应式WEB设计
近期在学习有关响应式设计的内容,对此做了些整理,图片来源于网络,附上自己做的简单demo,没有js,只用CSS做了简单的搭建http://y.zhso.net/. 1.为什么需要响应式web设计 出于 ...
- reactjs 入门
地址搜集:http://www.cocoachina.com/webapp/20150604/12035.html class 属性需要写成 className ,for 属性需要写成 htmlFor ...
- angularjs ngTable -Custom filter template-calendar
jsp页面: <script type="text/ng-template" id="path/to/your/filters/top-Date-One.html& ...
- u盘复制提示文件过大
应该有很多个朋友也遇到过同样的问题,就是我们的u盘的明明可用的空间还有很多,甚至一个空的16g的u盘,但从window等操作系统向u盘拷贝文件的时候,却不能容下诸如iso4g的镜像文件,难道是生产u盘 ...
- 那些常用的eclipse快捷键
用了很久的eclipse了,有些快捷键常用,有的偶尔使用,现在记下常用的快捷键,以便大家和自己查用(持续更新) 这些快捷键都可以在[window]-[preferences]-[general]-[k ...
- xcode7 icon图标设置
- 使用Xcode插件,让iOS开发更加便捷
在iOS开发过程中,写注释是一项必不可少的工作.这不仅有助于自己对代码整理回顾,而且提高了代码的可读性,让代码维护变得容易.但是,写注释又是一项枯燥的工作.我们浪费了大量的时间在输入/*,*,*/这样 ...
- 104. Maximum Depth of Binary Tree(C++)
104. Maximum Depth of Binary Tree Given a binary tree, find its maximum depth. The maximum depth is ...
- 【POJ2185】【KMP + HASH】Milking Grid
Description Every morning when they are milked, the Farmer John's cows form a rectangular grid that ...
- jQuery 源码基本框架
抽丝剥茧, 7000+ 行的 jQuery 源码基本可以概括为以下的伪代码 (function (window, undefined) { //将 document 封装成 jQuery 对象并缓存 ...