斜截式计算器
结果
斜截式
- 斜率
- 4.000000
- y 轴截距
- -2.000000
斜截式就是一条直线最常见的写法——y = mx + b,而填满它只需要两个点。斜率 m 说的是 x 每走一格 y 走多少,也就是「纵向差除以横向差」;y 轴截距 b 是这条线与竖轴相交的地方。这一页把四个坐标收进来,算出这两个数,再印出它们组成的那个一次函数。两个数都留在式子旁边,便于手算核对:拿任一个 x 乘上斜率再加上截距,应该回到那个点的 y。唯一算不出来的是两点 x 相同的情形——那条线是竖直的,它根本不与 y 轴相交。
八对点,以及每一对定下来的那条直线
| x1 | y1 | x2 | y2 | 方程 |
|---|---|---|---|---|
| 1 | 2 | 3 | 10 | y = 4x - 2 |
| 0 | 0 | 1 | 1 | y = x |
| 0 | 5 | 2 | 1 | y = -2x + 5 |
| 0 | 1 | 2 | 2 | y = (1/2)x + 1 |
| 0 | 3 | 2 | 2 | y = (-1/2)x + 3 |
| 1 | 3 | 5 | 3 | y = 3 |
| 1 | 2 | 2 | 4 | y = 2x |
| 0 | 7 | 1 | 6 | y = -x + 7 |
每一行是一对点与过它们的斜截式方程,全部由回答上面那个表单的同一段代码算出来。这八行是挑过的,为的是把式子的各种样子都覆盖到:普通的斜率、斜率恰好是 1、负斜率、斜率恰好是 -1、水平线(式子里一个 x 都不剩)、过原点的线(式子里不剩常数项),以及系数是分数的两种情形——那正是括号真正起作用的两行。从上往下读最后一列,也是最快看出每种样子写成式子之后长什么样的办法。
公式
两点 (x1, y1) 与 (x2, y2) → m = (y2 - y1) / (x2 - x1) → b = y1 - m * x1 → y = m * x + b
- m
- 斜率:向右走一格,线升起多少。它等于纵向差除以横向差,符号就是方向——正数向上、负数向下、零是水平线。斜率是 4 的意思是 x 每加 1,y 就加 4。
- b
- y 轴截距:这条线与竖轴相交处的 y 值,也就是 x = 0 时的 y。它是把一个点里属于斜率的那部分扣掉之后剩下的东西,也是这条式子上唯一一个能直接读出来的数。
- (x1, y1)、(x2, y2)
- 那两个点。哪一个叫「第 1 个」都行:把两点互换会让斜率的分子与分母同时变号,两次变号互相抵消,答案不变。它们不能有相同的 x,因为那样除数为零。
- x、y
- 算完之后式子里的两个变量。满足这条式子的每一对 (x, y) 都落在这条直线上,这也正是它有用的地方:代入任意一个 x,就能得到它正上方的那个 y,不必再回头用原来的两个点。
当一条直线是由它的两个点给出的,而你要的是这条线本身——方程、斜率、以及与轴的交点——而不是关于它的某一个数时,用它。表里的两次读数、图上量到的两个位置、一个起始值与后来的一次测量:有了它们,斜率说的就是变化有多快,截距说的就是从哪里开始。如果你只要斜率,或者只要两点之间某处的预测值,下面链接的那两个工具各自只做那一件事。
算例
(1, 2) 与 (3, 10)——最普通的一种
- 纵向差:10 − 2 = 8。横向差:3 − 1 = 2
- 斜率:m = 8 / 2 = 4
- 截距:b = 2 − 4 × 1 = -2
- 方程:y = 4x - 2
把两个点代回去验一遍,这是值得养成的习惯:x = 1 时 4 × 1 − 2 = 2 ✓,x = 3 时 4 × 3 − 2 = 10 ✓。两个点都在轴的上方而截距却是负的,这不是错——这条线足够陡,在与第一个点差得还很远的地方(x = 0.5)就已经穿过横轴了。
(0, 1) 与 (2, 2)——斜率不是整数
- 纵向差:2 − 1 = 1。横向差:2 − 0 = 2
- 斜率:m = 1 / 2 = 0.5
- 第一个点本来就落在纵轴上,所以 b 直接由它给出:b = 1 − 0.5 × 0 = 1
- 方程:y = (1/2)x + 1
系数外面要加括号,因为 1/2x 会被读成 1 除以 2x。注意面板上的两个数与式子里写的完全一致:斜率那一行是 0.5,式子里写的是 (1/2),同一个数换成分数写法——只要分母不太大,这一页就把有限小数印成分数,因为手写斜率时人们就是这么写的。
(1, 3) 与 (5, 3)——一条水平线
- 纵向差:3 − 3 = 0。横向差:5 − 1 = 4
- 斜率:m = 0 / 4 = 0
- 截距:b = 3 − 0 × 1 = 3
- 方程:y = 3——斜率那一项一点贡献都没有,所以它整个消失了
斜率为零会把式子整个收掉:里面一个 x 都不剩,而写成 y = 0x + 3 只是多加一个恒为零的项。这是唯一一处印出来的式子不再长得像 y = mx + b,而这是对的而不是偷懒——线上了每一个点,无论 x 是多少,y 都是 3。
局限
只处理直线,而且只处理由两个不同的点给出的直线。两点的 x 相同时这条线是竖直的:它没有斜率,也不与 y 轴相交,所以没有斜截式可写,这一页会报成「算不出来」而不是硬印一条出来——那种情况下诚实的答案是 x = 3,而那不是这一页能产出的方程。两点完全重合属于同一种情形,因为过一个点的直线有无数条。斜率在算截距之前就先四舍五入到六位,所以面板上那两个数永远与印出来的式子对得上,代价是斜率为无限循环小数时(1/3 会变成 0.333333,式子由它搭出来),印出来的直线与真正的直线在第六位小数之后不同。这一页只把方程印出来,不解方程:它不会告诉你这条线与横轴交在哪里、两条线是否平行、或者别的 x 处 y 是多少。坐标两个方向都限制在一百万以内,全程没有任何单位——坐标是数,不是量出来的长度。
常见问题
- 应该先填哪一个点?
- 两个都行,答案不会变。把两点互换会让 (y2 - y1) / (x2 - x1) 的分子与分母同时变号,两次变号互相抵消;截距也不会变,因为它是由一个点与斜率算出来的。唯一要注意的是同一个点的两个坐标要填在同一行里。
- 两点 x 相同会怎样?
- 那条线是竖直的,这一页会报成「算不出来」。竖直的线根本没有斜率——横向差是零,除法没有答案——它也不与 y 轴相交,所以无论 m 与 b 取什么值,y = mx + b 都写不出它。竖直线的方程是 x = 3,里面既没有斜率也没有截距,所以它在本页的范围之外。
- 斜率为什么要四舍五入?遇到循环小数怎么办?
- 它被舍入到六位小数,而截距是由舍入之后的这个数算出来的,不是用精确值。这是有意的:这样结果面板上的两个数与下面印出来的式子就能对得上账,答案可以手算核对。代价是斜率为循环小数时印出来的是那条近似的直线——(1, 1) 与 (4, 2) 给的三分之一会写成 0.333333,式子也由它搭出来。
- 它与点斜式那一页有什么区别?
- 收进去的东西不同。这一页收两个点,也就是你手里通常有的那些;点斜式那一页收的是一个点加上一个你已经知道的斜率,印出来的式子里看得出那个点。两者说的是同一条直线,所以可以接着用:把这一页给出的斜率、连同你原来两点中的第一个点,交给点斜式那一页,它会用另一种写法把同一条线写出来。
- 式子里为什么一会儿是分数一会儿是小数?
- 位数不多的有限小数在分母较小时会印成分数——0.5 写成 (1/2)、0.25 写成 (1/4)——因为手写斜率时人们就是这么写的。更长的就保持小数并保留六位,于是三分之一写成 0.333333。两种写法是同一个数,而式子上方那一行斜率读数与它永远一致。
- 怎么手算核对答案?
- 把两个 x 分别代进印出来的式子,看能不能得到那个点对应的 y。以 (1, 2) 与 (3, 10) 为例,式子是 y = 4x - 2:x = 1 时得 2,x = 3 时得 10,两个点都在这条线上。如果有一个对不上,就把它与式子上方那两个读数比一比,问题通常出在自己算的那一步上。
参考资料
- 斜率——纵向差除以横向差,以及本页第一个读数所用的符号约定 — Wolfram MathWorld(美国)
- 直线——上面这一切说的那个对象,以及它的方程可以写成的几种形式 — Wolfram MathWorld(美国)
- 线性方程——y = mx + b 作为一个含两个变量的方程,它的斜率与截距分别是什么 — Wolfram MathWorld(美国)