贷款基础知识之等额本息

大家如果办过贷款,尤其是房贷的话,相信对等额本息不会陌生。与等额本息同时出现的,还有等额本金。本文先详细介绍等额本息,后面再介绍等额本金等。 等额本息指的是还款期限内,每个月还款额(包括本金和利息)固定,其中本金部分逐月递增,利息部分逐月递减。 如果手边有贷款合同的话,翻开就会看到每月的还款额计算公式为: $$ 每月还款额 = \frac{借款本金 \cdot 月利率 \cdot (1 + 月利率)^{还款总期数}}{(1 + 月利率)^{还款总期数} - 1} $$ 举个实际的例子,比如贷款100万元,贷款期限为20年,贷款年利率为最新基准利率上浮20%,也就是5.88%,那么代入公式得到每月还款额为7095.25元。 $$ 每月还款额 = \frac{1000000 \cdot 5.88\%/12 \cdot (1 + 5.88\%/12)^{240}}{(1 + 5.88\%/12)^{240}-1} = 7095.25 $$ 好的,到现在为止,至少就有了 3 个问题: 每月还款额的公式是怎么推导出来的? 每月还款额里本金和利息分别是多少? 用年利率除以 12 得到月利率是否合理? 下面来逐个分析。 每月还款额公式推导 不妨假设贷款额,也就是本金为 $v$, 月利率为 $r$, 借款期数为 $n$, 每月还款额为 $x$. 则可以列出下表。 期数 本金+利息 还款 剩余本金+利息 $1$ $v\cdot(1+r)$ $x$ $S_1 = v\cdot(1+r) - x$ $2$ $S_1\cdot(1+r)$ $x$ $S_2 = S_1\cdot(1+r)-x$ … … $x$ … $n$ $S_{n-1}\cdot(1+r)$ $x$ $ S_n = S_{n-1}\cdot(1+r)-x$ 从表中可以看出,第一期结束时,本金 $v$ 产生的利息为 $v \cdot r$,因此本金加利息为 $v\cdot(1+r)$ ,还款 $x$ 后,剩余金额为 $v\cdot(1+r) - x$,记为 $S_1$。依此类推,得到每期结束时的剩余金额 $S_i$,而要求的正是使得 $S_n = 0$ 的 $x$ 的值。不妨将 $S_n$ 展开,得到:

PNPOLY: 射线法判断点是否在多边形区域内部

最近跟地图打交道,有个问题是判断点是否在某个多边形区域内(一般都是凸多边形)。 其实之前也知道一个算法:就是以要判断的点为起点,以区域的顶点为终点作线段或直线, 遍历所有区域顶点,判断直线扫过的角度,如果是360度,说明在区域内,否则就是在区域外。 这次学到了一个新的算法 PNPOLY,代码非常简练,如下: int pnpoly(int nvert, float *vertx, float *verty, float testx, float testy) { int i, j, c = 0; for (i = 0, j = nvert-1; i < nvert; j = i++) { if ( ((verty[i]>testy) != (verty[j]>testy)) && (testx < (vertx[j]-vertx[i]) * (testy-verty[i]) / (verty[j]-verty[i]) + vertx[i]) ) c = !c; } return c; } 该算法的核心思想就是:以测试点为起点,作一条水平的射线,判断该射线与多边形区域的边的交点个数,如果为奇数个,说明在区域内,否则就在区域外。 为什么能成立呢?可以这样考虑:多边形区域(不考虑有洞的情况)将空间分成了内外两个部分,如果测试点在空间内,那么作一条射线,至少会与边有一个交点,相交后就到了区域外。 如果再有一个交点,又到了区域内,以此类推。因此奇数个交点说明在区域内,偶数个说明在区域外。 更专业的证明可以参考 Jordan curve theorem。 理解了思想,就是具体实现了。这段代码的详细解释如下: for (i = 0, j = nvert-1; i < nvert; j = i++)

记录新学到的一个词——自证预言

这段时间看《博弈与社会》,读到一个词 自证预言。还是贴一下英文原版的定义: The self-fulfilling prophecy is, in the beginning, a false definition of the situation evoking a new behavior which makes the original false conception come true. This specious validity of the self-fulfilling prophecy perpetuates a reign of error. For the prophet will cite the actual course of events as proof that he was right from the very beginning. 通俗来说,指的是一件错误或不可能发生的事情,由于预言的存在, 导致了一些新的行为产生,而这些行为又促使事情的发生朝着预言的方向而去, 从而使得最后预言成真。 概括起来就三个字:乌鸦嘴。 虽然乌鸦嘴是个贬义词,但自证预言这种现象本身是中立的, 重要的是看你在现实生活中如何应用它。 其实有很多自证预言的例子。比较著名的有希腊神话中俄狄浦斯的故事: 神谕表示俄狄浦斯会杀死他父亲,因此他父亲在他出生后就想杀死他, 然而奉命执行的牧人新生怜悯放过了他,最终在不知情的情况下, 他杀死了自己的父亲并娶了自己的母亲; 一些教育领域的实验也展示了类似的效应: 一些被告知高智商的学生在后来学习成绩突飞猛进,其实这些学生是随机挑选的; 还有一个搞笑的:上海一男子因造谣称自己因造谣而被拘留15日而被拘留15日。