• 本例演示如何编写程序来计算贷款支付问题。
  • 下面是编写程序的步骤:
  • 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---计算机贷款支付额计算(用对话框实现)的更多相关文章

  1. java GUI,贷款服务器

    本习题来自<java语言程序设计--进阶篇>第30章,网络编程的习题. 题目描述:为一个客户端编写一个服务器.客户端向服务器发送贷款信息(年利率.贷款年限和贷款总额).服务器计算月偿还额和 ...

  2. Java中的Double类型计算

    一.问题的提出: 如果我们编译运行下面这个程序会看到什么?public class Test{    public static void main(String args[]){        Sy ...

  3. 计算机上面常用的计算单位 & 个人计算机架构与接口设备

    不多说,直接上干货! 计算机上面常用的计算单位 容量单位  速度单位  此网络常使用的单位为 Mbps 是 Mbits per second,亦即是每秒多少 Mbit. 个人计算机架构与接口设备 整个 ...

  4. Java 后端微信支付demo

    Java 后端微信支付demo 一.导入微信SDK 二.在微信商户平台下载证书放在项目的resources目录下的cert文件夹下(cert文件夹需要自己建) 三.实现微信的WXPayConfig接口 ...

  5. java实现微信支付

    java实现微信支付 package com.hk.wx.pay.service.impl; @Service public class PayServiceImpl implements PaySe ...

  6. 浅谈Java两种并发类型——计算密集型与IO密集型

    转载:https://blog.csdn.net/u013070853/article/details/49304099 核心是可以分别独立运行程序指令的计算单元.线程是操作系统能够进行运算调度的最小 ...

  7. Java之阶乘数的计算

    说起“阶乘数”,我们应该都不会感到陌生.当老师布置了这样的作业,我们大多数人是一贯用笔算,还有的同学会用计算机去计算.数学是讲究原理和方法的,我们知其然,也要知其所以然.下面我们就用编程来计算阶乘数. ...

  8. java 支付宝wap支付初识

    最近突然想弄下支付宝的支付,因为感觉很好玩.中间遇到很多问题,查查找找,总算是整了两天给整出来了,这里为自己记录下. 第一步:直接去安卓支付宝的官方文档去,写的很清楚了已经,这里有源码https:// ...

  9. Java电商支付系统手把手实现(二) - 数据库表设计的最佳实践

    1 数据库设计 1.1 表关系梳理 仔细思考业务关系,得到如下表关系图 1.2 用户表结构 1.3 分类表结构 id=0为根节点,分类其实是树状结构 1.4 商品表结构 注意价格字段的类型为 deci ...

随机推荐

  1. spring事务管理学习

    spring事务管理学习 spring的事务管理和mysql自己的事务之间的区别 参考很好介绍事务异常回滚的文章 MyBatis+Spring 事务管理 spring中的事务回滚例子 这篇文章讲解了@ ...

  2. angularjs-googleMap googleMap api地址解析与反解析

    1.js:根据地址得到经纬度var myplace=$scope.place;//获取输入的地址var geocoder = new google.maps.Geocoder();//创建geocod ...

  3. recursive - simple screenshot but detail principle.

    the code below demonstates the principle of the'recursive-call' that the programing beginner may be ...

  4. winform降低功耗总结

    这里整理了一些网上关于Winform如何降低系统内存占用的资料,供参考: 1.使用性能测试工具dotTrace 3.0,它能够计算出你程序中那些代码占用内存较多2.强制垃圾回收3.多dispose,c ...

  5. hdoj 1686 kmp

    题目:   Sample Input 3 BAPC BAPC AZA AZAZAZA VERDI AVERDXIVYERDIAN   Sample Output 1 3 0     代码:   #in ...

  6. Codeforces Round #287 D.The Maths Lecture

    The Maths Lecture 题意:求存在后缀Si mod k =0,的n位数的数目.(n <=1000,k<=100); 用f[i][j]代表 长为i位,模k等于j的数的个数. 可 ...

  7. java.lang.String类compareTo()返回值解析

    一.compareTo()的返回值是int,它是先比较对应字符的大小(ASCII码顺序)1.如果字符串相等返回值02.如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值(ascii码值 ...

  8. 为什么我们不喜欢用富UI控件

    我们对于理解一般意义的抽象关系并没有问题,但如第一部分使用Entity Framework 时说明的,事实恰好相反.我们还喜欢在交付应用程序时利用抽象关系,比如使用Azure等云服务.在这两种情况下, ...

  9. JQUERY 键盘事件

    一 一.首先需要知道的是: 1.keydown()keydown 事件会在键盘按下时触发. 2.keypress()keypress 事件会在敲击按键时触发,我们可以理解为按下并抬起同一个按键. 3. ...

  10. Ubuntu 字体安装

    命令安装:   以微软雅黑字体为例(其他的宋体.黑体等点阵字体都一样的),我们的雅黑字体文件是:Yahei.ttf(放在自己的主目录下)(在widows目录的Fonts目录下找需要的字体)由于我是双系 ...