我希望能够计算和情节的总利息如果额外支付每个月正在改变

9的观点(30天)
我的代码是:
呼吁我的文件:
函数P =摊销(a R n)
r = r / 12;
P = * (r * ((1 + r) ^ n)) / (((1 + r) n ^) - 1);
结束
我希望能够画出p vs e基本上第一个数据点会(10(总利息如果额外支付10美元一个月)。第二点就是(20(总利息如果额外支付一个月20),等等。

接受的答案

威廉•罗斯
威廉•罗斯 2022年8月21日
  1. 请向代码中添加大量的评论。尤其是当你寻求帮助。这将允许其他理解代码,并提供有用的建议。例如,变量是为了什么目的,等等。
  2. 告诉我们发生了什么当您运行您的代码。你得到一个错误吗?你得到的输出并不是你所期望的吗?告诉我们错误,或者为什么结果是出人意料的。
  3. 缩进是什么在for循环,使代码更容易理解。
你想做什么?代码额外支付0月1日10美元额外的2月,20美元额外的3月,等等,至多500美元额外的月51。那是你的意图吗?
我救了你的代码文件,跑。我得到这样的结果:
无法执行任务,因为左右有不同数量的元素
错误loanRepayment(21)行
(我)=(张)- c
这是因为(我)是一个标量和c是一个矢量。我认为你打算c是一个标量:本金支付的阿蒙山崖当前时间步。c是一个向量,因为它被定义为在你的脚本 c = azbzcx(我);在哪里 z是一个矢量。z是一个向量,因为它被定义为 z =摊销(1)、R (n) + p; ,前面的方程的右边是一个矢量,因为p是一个矢量。难道这就是你们希望的吗?
p,在代码中使用的,是一个向量的elemnts每个时期的额外支出金额。我认为 摊销((1)、R n) 是标准的付款。那么z的向量总payent在每一个时期。
我怀疑你的意思写,还是写了
c = z (i) - b(我);
第20行,让我仍然支付的时间。我们可以解决这个问题,但是在我们做之前,我另一个问题:z只有51个元素,因为p有51个元素。但是有180 pyments。因此,在月52,代码将有一个错误,因为它将尝试读取z(52),它不存在。
你说你想把p与e。定义p、e的话说,请帮助别人了解你想要做什么。在代码中您已经看到,1 - e - 180和p是1-by-51, p、e不能绘制与另一个。
e(我)的运行和利息通过我。
我认为你想要确定 所支付的利息,偿还贷款的完成,当你支付 常数 每个月额外的金额。这不是什么代码。我认为你想看到的总利息随量恒定额外的每月付款。
如果我是对的,那么我建议以下几点:
使用内循环和外循环。外层循环从i = 1到51。额外的每月付款的数量变化对每个外层循环,从0到500年的10步骤。内循环从j = 1,直到贷款偿还,这是180个月,如果没有额外的付款。你可能想要使用一个while循环内循环,因为你事先不知道多少个月需要偿还。(实际上有一个公式和函数……)每一次内循环完成后,保存最初的支付总额f (i), e, f是1-by-51重置所有零在未来通过开拓内部循环。当你们都完成了,你可以画出p与f。他们都将有51个元素。
我认为你没有金融工具箱,或者你不希望使用它。它的功能。
我希望能给你足够的指导,调整你的脚本。祝你好运。
3评论
威廉•罗斯
威廉•罗斯 2022年8月22日
这里是一些伪代码:
extraPayment = 0:10:500;%初始化数组
totIntPaid = 0(大小(extraPayment));%分配数组
i = 1:长度(extraPayment)
%计算的每月支付运行
b = 0 (1180);%初始化向量b
j = 1;%初始化计数器
(j) > 0%,而贷款余额大于零
%每个月计算b (j) =本月支付的利息,
% (j + 1) =贷款余额为下个月,等等。
j = + 1%增加月计数器
结束
totIntPaid (i) = (b)之和;
结束
上面的大纲可能会是有用的。你需要填写上面的细节,最终结果,等。注意while循环的停止条件:停止当贷款余额不积极。数量(j)是由于在期初j . b (j)的利息 结束 期的j。

登录置评。

更多的答案(0)

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!