• 本例演示如何编写程序来计算贷款支付问题。
  • 下面是编写程序的步骤:
  • 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. 彻底删除mysql的方法(有隐藏文件)

    1.建议使用360进行卸载,可以彻底卸载软件 2.360会提醒删除注册表 3.这个隐藏文件要删除掉 在 C:\Documents and Settings\ 路径下搜索 MySQL 文件夹(默认隐藏的 ...

  2. Web通信中的Get、Post方法

    首先我们要了解Tomcat,Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选. ...

  3. angularjs-ngTable select filter

    jsp <td title="'Status'" filter="{status: 'select'}" filter-data="fn.sta ...

  4. 最简单的基于FFmpeg的移动端例子:IOS 视频解码器-保存

    ===================================================== 最简单的基于FFmpeg的移动端例子系列文章列表: 最简单的基于FFmpeg的移动端例子:A ...

  5. AppStore上架规则

    1. 条款和条件1.1 为App Store开发程序,开发者必须遵守 Program License Agreement (PLA).人机交互指南(HIG)以及开发者和苹果签订的任何协议和合同.以下规 ...

  6. (whh仅供自己参考)进行ip网络请求的步骤

    这个过程大致是这个样子: 1 添加通知 2 发送网络请求 里边有一个发送通知的操作 3 执行发送通知的具体操作 代码如下: 1 在VC添加通知 [[NSNotificationCenter defau ...

  7. jQuery慢慢啃筛选(四)

    1.eq(index|-index) 获取第N个元素 其中负数:一个整数,指示元素的位置,从集合中的最后一个元素开始倒数.(1算起) $("p").eq(1)//获取匹配的第二个元 ...

  8. ubuntu 14.04.02 LTS 启动项误写入 /dev/sda1 (win 7 loader) 修复

    问题描述: 在win7下安装Ubuntu14.04,由于启动项 /boot loader 安装位置错误(/dev/sda1 (win 7 loader) )导致无法进入Windows(在GRUB界面能 ...

  9. javascript常用内置对象总结(重要)

    Javascript对象总结 JS中内置了17个对象,常用的是Array对象.Date对象.正则表达式对象.string对象.Global对象 Array对象中常用方法: Concat():表示把几个 ...

  10. PAT - 基础 - 最大公约数和最小公倍数

    题目: 本题要求两个给定正整数的最大公约数和最小公倍数. 输入格式: 输入在一行中给出2个正整数M和N(<=1000). 输出格式: 在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1 ...