文档章节

房贷计算器

w
 wzb88
发布于 09/18 22:36
字数 1052
阅读 19
收藏 0

题目要求

贷款有两种还款的方式:等额本金法和等额本息法,简单说明一下等额本息法与等额本金法的主要区别:

等额本息法的特点是:每月的还款额相同,在月供中“本金与利息”的分配比例中,前半段时期所还的利息比例 大、本金比例小,还款期限过半后逐步转为本金比例大、利息比例小。所支出的总利息比等额本金法多,而且 贷款期限越长,利息相差越大。 等额本金法的特点是:每月的还款额不同,它是将贷款额按还款的总月数均分(等额本金),再加上上期剩余 本金的月利息,形成一个月还款额,所以等额本金法第一个月的还款额最多 ,而后逐月减少,越还越少。所>支出的总利息比等额本息法少。

两种还款方式的比较不是我们今天的讨论范围,我们的任务就是做一个贷款计算器。其中: 等额本息每月还款额的计算公式是: 每月还款额=[贷款本金×月利率×(1+月利率)^还款月数]÷[(1+月利率)^还款月数-1] 等额本金每月还款额的计算公式是: 每月还款额=贷款本金÷贷款期数+(本金-已归还本金累计额)×月利率

参考答案

#!/bin/bash
#这个脚本用来实现简易的房贷计算器
#作者:猿课-阿铭 www.apelearn.com
#日期:2018-12-12

read -p "请输入贷款总额(单位:万元):" sum_w
read -p "请输入贷款年利率(如年利率为6.5%,直接输入6.5):" y_r
read -p "请输入贷款年限(单位:年):" y_n
echo "贷款计算方式:"
echo "1)等额本金计算法"
echo "2)等额本息计算法"
read -p "请选择贷款方式(1|2)" type
#贷款总额
sum=`echo "scale=2;$sum_w*10000 " | bc -l`
#年利率
y_r2=`echo "scale=6;$y_r/100 " | bc -l`
#月利率
m_r=`echo "scale=6;$y_r2/12 " | bc -l`
#期数
count=$[$y_n*12]
echo "期次 本月还款额 本月利息 未还款额"
jin()
{
    #月还款本金m_jin=贷款总额sum/期数count
    m_jin=`echo "scale=2;($sum/$count)/1 " | bc -l`
    #定义未还本金r_jin(第一期应该是贷款总额)
    r_jin=$sum
    for((i=1;i<=$count;i++))
    do
        #本月利息m_xi=剩余本金*月利率
        m_xi=`echo "scale=2;( $r_jin*$m_r)/1"|bc -l`
        #本月还款m_jinxi=月还本金m_jin+本月利息m_xi
        m_jinxi=`echo "scale=2;( $m_jin+$m_xi)/1"|bc -l`
        #已还款本金jin=月还本金m_jin*期数i
        jin=`echo "scale=2;( $m_jin*$i)/1"|bc -l`
        #剩余本金r_jin=贷款总额sum-已还本金jin
        r_jin=`echo "scale=2;( $sum-$jin)/1"|bc -l`
        if [ $i -eq $count ]
        then
            #最后一月的还款额应该是每月还款本金+本月利息+剩余本金
            m_jinxi=`echo "scale=2;( $m_jin+$r_jin+$m_xi)/1"|bc -l`
            #最后一月的剩余本金应该是0
            r_jin=0
        fi
        echo "$i  $m_jinxi  $m_xi  $r_jin"
     done   
}
xi()
{
    #每期还款m_jinxi=(贷款总额sum*月利率m_r*((1+月利率m_r)^期数count))/(((1+月利率m_r)^期数count)-1)
    m_jinxi=`echo "scale=2;(($sum*$m_r*((1+$m_r)^$count))/(((1+$m_r)^$count)-1))/1 " | bc -l`
    #定义未还本金r_jin(第一期应该是贷款总额)
    r_jin=$sum
    for((i=1;i<=$count;i++))
    do
        #本期利息m_xi=剩余本金r_jin*月利率m_r
        m_xi=`echo "scale=2;( $r_jin*$m_r)/1"|bc -l`
        #本期本金m_jin=本期本息m_jinxi-本期利息m_xi
        m_jin=`echo "scale=2;($m_jinxi-$m_xi)/1 " | bc -l`
        #未还本金r_jin=上期未还本金r_jin-本期应还本金m_jin
        r_jin=`echo "scale=2;($r_jin-$m_jin)/1 " | bc -l`
        if [ $i -eq $count ]
        then
            #最后一月本息m_jinxi=本期本金m_jin+未还本金r_jin
            m_jinxi=`echo "scale=2;($m_jin+$r_jin)/1 " | bc -l`
            #最后一月的剩余本金应该是0
            r_jin="0.00"
        fi
        echo "$i $m_jinxi $m_xi $r_jin"
    done
}
case $type in
    1)
        jin
        ;;
    2)
        xi
        ;;
    *)
        exit 1
        ;;
esac

© 著作权归作者所有

上一篇: 监控磁盘
下一篇: 批量删除日志
w
粉丝 2
博文 197
码字总数 124568
作品 0
杭州
私信 提问
放大招了!今日最全微信小程序清单送给你

微信小程序来的太快就像龙卷风,零点的时候一放出来朋友圈就刷屏了。明美无限也是大半夜不睡觉,研究了几个小时,现在奉献给大家,截止今日最全名单如下: 金融: 自选股 微众银行 小小房贷计...

明美无限
2017/01/09
0
0
Android 房贷计算器--houseloan

houseloan 是一个 Android 版本的房贷计算器。 利用TabHost实现tab切换;SpinnerSelectedListener监听下拉;严密计算公式计算出本息和本金的结果。 功能描述: 1,可提供各种房屋按揭贷款计算...

stefanzhlg
2014/10/28
1K
0
小程序如期而至,赶快看看有哪些好玩的小程序吧

1、如何激活微信小程序 首先,更新微信到最新版本。 你只有访问一个小程序之后,才会出现所谓的入口。打开微信,在第一个页面最上方搜索“QQ阅读”,选择搜索“朋友圈、公众号、文章等” 点击...

anda0109
2017/01/09
0
0
【送钱项目】简单的IOS应用制作,寻找在上海的IOS开发者

【送钱项目】简单的IOS应用制作,寻找在上海的IOS开发者 我们有现成的网站,软件内的数据一律我们做好接口,你们直接调用即可,这个可以说是送钱的项目,人在上海的,有IOS开发经验的开发者请...

sunway123
2014/06/12
85
2
Android生活百事通生活助手源码

主要功能列表: 1)常用生活查询集成了身份证信息、手机号段归属、邮编区号查询、常用电话号码、快递查询、度量衡单位换算6项功能,均为日常生活中经常要用到的内容; 2)金融计算存款计算、...

极分享vip
2016/02/18
309
1

没有更多内容

加载失败,请刷新页面

加载更多

iOS Xcode升级包地址(感谢大神)

下载地址:DeviceSupport

_____1____
11分钟前
4
0
Qt编写自定义控件71-圆弧进度条

一、前言 现在web形式的图表框架非常流行,国产代表就是echart,本人用过几次,三个字屌爆了来形容,非常强大,而且易用性也非常棒,还是开源免费的,使用起来不要太爽,内置的各种图表和仪表...

飞扬青云
11分钟前
3
0
润乾报表与 ActiveReport JS 功能对比

简介 润乾报表是用于报表制作的大型企业级报表软件,核心特点在于开创性地提出了非线性报表数学模型,采用了革命性的多源关联分片、不规则分组、自由格间运算、行列对称等技术,使得复杂报表...

泡泡糖儿
22分钟前
4
0
【1015】LNMP架构二

【1015】LNMP架构二 三、PHP安装 PHP安装和LAMP安装PHP方法有差别,需要开启php-fpm服务 1、下载PHP7至/usr/local/src/ 切换目录:cd /usr/local/src 2、解压缩 tar -jxvf php-7.3.0.tar.gz...

飞翔的竹蜻蜓
56分钟前
5
0
浅谈Visitor访问者模式

一、前言 什么叫访问,如果大家学过数据结构,对于这点就很清晰了,遍历就是访问的一般形式,单独读取一个元素进行相应的处理也叫作访问,读取到想要查看的内容+对其进行处理就叫作访问,那么...

青衣霓裳
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部