等额本金还款java代码 等额本金还款java代码是什么

求一个 java 个人贷款还款计算器 的源代码,

import javax.swing.JOptionPane;

创新互联是一家专注于做网站、成都网站制作与策划设计,金川网站建设哪家好?创新互联做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:金川等地区。金川做网站价格咨询:13518219792

public class Pay {

public static void main(String args[]){

String loanString = JOptionPane.showInputDialog("请输入贷款本金( loanAmout):such as 20000.00") ;

double loanAmount= Double.parseDouble(loanString);

String dateString = JOptionPane.showInputDialog("请输入贷款期(loanDate):between 24-60");

int loanDate = Integer.parseInt(dateString);

String monthRateString = JOptionPane.showInputDialog("请输入月利率 (MonthRate):such as 0.00005");

double monthRate = Double.parseDouble(monthRateString);

double pay_Per_Month = (loanAmount+loanAmount * loanDate * monthRate)/loanDate;

JOptionPane.showMessageDialog(null, pay_Per_Month);

}

}

java 等额本息还款。这个应该怎么算?

import java.math.BigDecimal;

/**

* 银行还款计算

* @author cuiran

* @version TODO

*/

public class BankRefund {

/**

*

* 等额本金还款法【利息少,但前期还的多】

* @param totalMoeny 贷款总额

* @param rate 贷款商业利率

* @param year 贷款年限

*/

public static void principal(int totalMoney,double rate,int year){

/**

* 每月本金

*/

int totalMonth=year*12;

double monthPri=totalMoney/totalMonth;

/**

* 获取月利率

*/

double monRate=resMonthRate(rate);

BigDecimal b = new BigDecimal(monRate);

monRate = b.setScale(6, BigDecimal.ROUND_HALF_UP).doubleValue();

for(int i=1;i=totalMonth;i++){

double monthRes=monthPri+(totalMoney-monthPri*(i-1))*monRate;

BigDecimal b1 = new BigDecimal(monthRes);

monthRes = b1.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();

System.out.println("第"+i+"月,还款为:"+monthRes);

}

}

/**

*

* 等额本息还款【利息多】

* @param totalMoeny 贷款总额

* @param rate 贷款商业利率

* @param year 贷款年限

*/

public static void interest(int totalMoney,double rate,int year){

/**

* 获取月利率

*/

double monRate=resMonthRate(rate);

/**

* 月还款本息

*/

double monInterest=totalMoney*monRate*Math.pow((1+monRate),year*12)/(Math.pow((1+monRate),year*12)-1);

BigDecimal b = new BigDecimal(monInterest);

monInterest = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();

System.out.println("月供本息和:"+monInterest);

}

/**

*

* 转换为月利率

* @param rate

* @return

*/

public static double resMonthRate(double rate){

return rate/12;

}

/**

* TODO

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

int totalMoney=430000;

double rate=0.0655;

int year=20;

// BankRefund.interest(totalMoney, rate, year);

BankRefund.principal(totalMoney, rate, year);

}

}

求写一个Java小程序~~

截图:题目翻译过来的大概意思和程序代码:译文:编写一个程序,使之能显示同每月按揭贷款还款额以及欠款余额,然后显示还款中有多少是利息还款,有多少是本金还款(即有多少还款是真正用来减少债务的)。假设年利率是7.49%。命名一个常量来代表利率。注意还款按月进行,所以利率只是年利率7.49的1/12。 代码:注:按揭贷款有两种月供还款方式:本金还款和本息还款,题目要求的是按“本息还款”方式进行编程,再程序中我把两种还款方式都写了出来,关键地方有注释!

import java.text.NumberFormat;

import java.util.Scanner;

public class Repay {

final double NLL=0.0749; //年利率

final double MLL=NLL/12; //月利率

final int MONTH=12; //付款次数

int month=1;

public static void main(String[] args){

Repay rp=new Repay();

rp.payback();

}

public void payback(){

System.out.println("请输入借款金额");

//获得贷款数额

Scanner sc=new Scanner(System.in);

double debt=sc.nextDouble();

NumberFormat fn=NumberFormat.getInstance();

fn.setMaximumFractionDigits(2);

String nll=fn.format(NLL*100)+"%";

String mll=fn.format(MLL*100)+"%";

String debt_fn=fn.format(debt);

System.out.println("请选择还款方式:输入1选择等额本金还款,输入2选择等额本息还款");

int mode=sc.nextInt();

//等额本金还款

if(mode==1){

System.out.println("您总共借款"+debt_fn+";还款方式:等额本金还款;还款时间:1年"+";年利率是:"+nll+";月利率"+mll);

System.out.println("分期还款明细");

double monthPincipal=debt/12; //每月应还本金

debt=monthPincipal*12;

double accrualM; //每月还款利息

double tm; //每月还款金额

//分期还款明细

while(debt=1){

accrualM=debt*MLL;

tm=monthPincipal+accrualM;

debt=debt-monthPincipal;

if(debt1){

debt=0;

}

//把小数位数格式化成2位

String tm_fn=fn.format(tm);

String monthPincipal_fn=fn.format(monthPincipal);

String accrualM_fn=fn.format(accrualM);

String debt_fn2=fn.format(debt);

System.out.println("第"+month+"月 还款金额:"+tm_fn+" 本月应还本金:"+monthPincipal_fn+" 本月还款利息:"+accrualM_fn+" 剩余本金:"+debt_fn2);

month++;

}

}

//等额本息还款

if(mode==2){

System.out.println("您总共借款"+debt_fn+";还款方式:等额本息还款;还款时间:1年"+";年利率是:"+nll+";月利率"+mll);

//等额本息还款的月还款数公式

double X=debt*MLL*(Math.pow((1+MLL), MONTH))/(Math.pow((1+MLL), MONTH)-1);

String X_fn=fn.format(X); //格式化小数位数

System.out.println("您的月还款额为:"+X_fn);

//分期还款明细

double lixiM,benjinM; //月利息,月本金

System.out.println("分期还款明细");

while(debt=1){

lixiM=debt*MLL;

benjinM=X-lixiM;

debt=debt-benjinM;

if(debt1){

debt=0;

}

//输出

String lixiM_fn=fn.format(lixiM);

String benjinM_fn=fn.format(benjinM);

String debt_fn3=fn.format(debt);

System.out.println("第"+month+"月 还款金额:"+X_fn+" 本月应还本金(即减少债务的钱):"+benjinM_fn+" 本月还款利息:"+lixiM_fn+" 剩余本金:"+debt_fn3);

month++;

}

}

}

}

网页名称:等额本金还款java代码 等额本金还款java代码是什么
分享链接:https://www.cdcxhl.com/article48/ddecjhp.html

成都网站建设公司_创新互联,为您提供服务器托管云服务器微信公众号商城网站面包屑导航电子商务

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都做网站