端点计算器
结果
另一端点的 x
- 另一端点的 y
- 8.0000
- 中点到两端的距离
- 3.6056
端点计算器把中点那一步倒过来做:你知道一条线段的中点、也知道其中一端,要求另一端。规则是一次减法——把中点的坐标乘以 2,再减去已知的那一端,横纵各做一次。中点 (3, 5)、已知一端 (1, 2) 时,另一端是 (5, 8),因为 3 乘 2 减 1 是 5、5 乘 2 减 2 是 8。答案就是那一端,而旁边两个读数是对这次反向运算的确认。那个确认是本页的第三个数,也是最值得弄明白的一个。中点按定义到两端一样远,所以「已知端点到中点」的距离必须等于「中点到刚求出来的那一端」的距离。本页印的是前一个。它与你手上那半段对得上,答案就是自洽的;要是反推出来的那一端跑到了中点的同侧,印出来的半长看起来照样很正常,能抓住它的办法是检查那个点是不是落在已知那一端的对面。两件事要先知道。坐标是纯数字,不带单位,所以页面上没有任何一个数属于厘米或米:数字是米,答案就是米;数字是一张图上的格,答案就是格。四个输入格接受正负十亿之间的任何数,但反推出来的端点不受这个范围约束——2 倍中点减去已知端,最远能到三十亿,而页面会把它印出来,不会报错。那不是溢出,是一次普通的减法得到了比两个操作数都大的数。
几组常见的缺失端点
| 中点 x | 中点 y | 已知 x | 已知 y | 另一端点 x | 另一端点 y | 半长 |
|---|---|---|---|---|---|---|
| 3 | 5 | 1 | 2 | 5 | 8 | 3.6056 |
| 0 | 0 | 3 | 4 | -3 | -4 | 5 |
| -2 | 1 | 4 | -3 | -8 | 5 | 7.2111 |
| 2 | 2 | 2 | 2 | 2 | 2 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 1000000 | 0 | 0 | 0 | 2000000 | 0 | 1000000 |
| 5 | 5 | 5 | -5 | 5 | 15 | 10 |
| -1.5 | 2.5 | 3.5 | -0.5 | -6.5 | 5.5 | 5.831 |
八条线段,后三列是页面的答案加上它自己的检查。第一行是表单的默认值,而且它与中点页的默认值是同一条线段的两读法:那一页收 (1, 2) 与 (5, 8)、给出 (3, 5),这一页收 (3, 5) 与 (1, 2)、给出 (5, 8)。那是「两条公式的接线都没反」最省事的一次检查,而且对任何一组数都成立,不止这一组。第二行中点落在原点,规则退化成一次变号。第三行已知那一端在一个象限、答案在对角象限,那里出现的「减去一个负数」正是把答案推过中点、而不是推向中点的原因。第四行是没有长度的线段,唯一一档答案不在已知端的对面。第五行四个坐标全是零,那是真答案而不是空值。第六行说明答案可以跑到输入范围之外——中点离原点一百万、已知端在原点,答案就在两百万之外。第七行是一条竖直的线段,半长 10 不用开方就能读出来。第八行带小数,它的半长 5.831 是一个舍过的方根。
公式
另一端点 x = 2 × 中点 x − 已知端点 x 另一端点 y = 2 × 中点 y − 已知端点 y 半长 = √((已知 x − 中点 x)² + (已知 y − 中点 y)²)
- 中点
- 线段正中间那一点的横纵坐标。它是已知条件而不是算出来的,所以它必须真的是你心里那条线段的中点——页面没有办法察觉它不是
- 已知端点
- 你手上已有的那一端。它必须是线段的两个端点之一,不能是线段上的别的点,因为整条规则的前提是它与中点之间的距离正好等于答案与中点之间的距离
- 另一端点
- 答案,横纵各一个,都保留四位小数。它与中点的距离和已知端点一样,但落在中点的另一侧,所以通常跑到你填进去的那些数的范围之外
- 半长
- 已知端点到中点的距离,直接由这两个点算出来。它是本页对自己的检查:反推出来的那一端到中点的距离必须与它相等,而拿它与你手上的量法对照,就能抓出一个反了号的答案
- 四位小数
- 每个读数的显示宽度,尾随的零也印出来。坐标是整数时仍然印成 5.0000,那是显示宽度,不是精度声明
最直接的用法是把一个图形补完:知道某个东西的中心和一条边,要求正对面那个点。圆心加直径的一端,就是这个问题的另一种说法。测量上,一根管线的中点已经放了桩、一端的位置也记下来了,另一端在哪,就是这一页。画图上同样常见——一条线的中点与一端已知,要在对面放一个镜像的构件。还有一种不那么显眼、却常常更有价值的用法:核对。拿一条线段,取它的中点,把中点与其中一端填进来,页面就应当把那另一端还给你。要是对不上,要么中点取错了,要么那条线段并不直——两种都值得在开始施工之前知道。半长那一行是这项检查最快的版本:一个图形如果两半不等长,它就不关于你以为的那个中心对称。有一个习惯能让答案好信得多:读结果之前先问自己新点该在中点的哪一侧。答案永远与已知那一端相反,落在同侧就是符号错了,不是意外。
算例
默认那一组,也就是中点页的默认值倒过来读
- 中点横坐标乘 2:3 × 2 = 6,减去已知的横坐标:6 − 1 = 5
- 中点纵坐标乘 2:5 × 2 = 10,减去已知的纵坐标:10 − 2 = 8
- 另一端点就是 (5, 8)
- 半长:从 (1, 2) 到 (3, 5) 的距离是 √(4 + 9) = √13 = 3.6056
与中点页加载时用的是同一条线段,只是方向相反:把 (1, 2) 与 (5, 8) 喂给那一页,它给出 (3, 5),正是这一页的起点。两页互相对得上,是「两条公式都没有把符号写反」最省事的一次检查,而且它对任何一组输入都成立,不限于这一组。半长 3.6056 与中点页为同一条线段印出的数是同一个,这不是巧合——那是从同一对点量出来的同一段距离。
中点落在原点上的那一组
- 中点横坐标乘 2:0 × 2 = 0,减去已知的横坐标:0 − 3 = −3
- 中点纵坐标乘 2:0 × 2 = 0,减去已知的纵坐标:0 − 4 = −4
- 另一端点就是 (−3, −4)
- 半长:从 (3, 4) 到原点的距离是 √(9 + 16) = 5
中点落在原点时,规则退化成一次变号,而这也最能看清这一页在做什么:答案是已知那一端关于中点的对称点。输入里有好几个零的时候符号特别容易丢,所以答案看着不对时先拿这一档试——这里的答案是定死的,没有任何舍入。
落在对角象限的端点
- 中点横坐标乘 2:(−2) × 2 = −4,减去已知的横坐标:−4 − 4 = −8
- 中点纵坐标乘 2:1 × 2 = 2,减去已知的纵坐标:2 − (−3) = 5
- 另一端点就是 (−8, 5)
- 半长:从 (4, −3) 到 (−2, 1) 的距离是 √(36 + 16) = √52 = 7.2111
这一档每个符号都在起作用,而第二行最容易绊住人:减去一个负的纵坐标等于加上,所以答案的 5 在中点的 1 上方而不是下方。反推出来的那一端落在已知那一端的对角象限,这是普遍规律——一条穿过中点的线段同时在两个轴上从一侧跨到另一侧。
已知端点本身就是中点
- 中点横坐标乘 2:2 × 2 = 4,减去已知的横坐标:4 − 2 = 2
- 纵坐标同理:4 − 2 = 2
- 另一端点就是 (2, 2),也就是你填进去的那个点
- 半长:两点重合,距离为 0
长度为 0 的线段,是唯一一档答案不在中点对面的情形——它就是中点,而已知那一端也在那里。那是正确答案而不是退化失败:一条线段两端是同一个点时,那个点同时也是它的中点,页面没有别的话可说。值得见一次,免得以后一组重复的坐标被读成页面出了错。
中点离已知那一端很远
- 中点横坐标乘 2:1000000 × 2 = 2000000,减去已知的横坐标:2000000 − 0 = 2000000
- 中点纵坐标乘 2:0 × 2 = 0,减去已知的纵坐标:0 − 0 = 0
- 另一端点就是 (2000000, 0)
- 半长:从原点到 (1000000, 0) 的距离是 1000000
这一档说明答案不受输入范围的约束。填进去的两个数都在离原点一百万以内,答案却在两百万之外——比页面上任何一个数都远,因为已知那一端与答案分处中点的两侧,而不是挨在一起。这里没有溢出、也没有近似:整数乘 2 再相减,到这个量级仍然精确。
局限
本页假定你称之为中点的那个点真的是中点。它不会去验证已知那一端与反推出来的那一端是否等距——它是照着「等距」把第二个点构造出来的,所以填进去的中点要是错了,答案会以同样的量错掉,而页面看不出来。你手上的中点来自估算而不是测量的话,答案同样是估算。坐标不带单位,本页既不换算也不保存单位,所以它看不出你把中点写成了米、端点写成了毫米。四个输入限制在正负十亿之间,但反推出来的端点不受此限:它最远能到三十亿,那是对的而不是缺陷,因为乘 2 再相减本来就允许超出原来那些数。答案落在你填进去的范围之外,在这一页是常态。半长保留四位小数,对多数输入都是无理数的近似值,与你自己的量法对照时不会每次都咬到末位。最后,本页只反推一个点,不说别的:它不给出整条线段的长度、不给过这两点的直线斜率、也不做第三个维度——所以即使三个坐标里已知两个,空间中的点也没法在这里补完。
常见问题
- 端点坐标怎么求?
- 把中点乘以 2 再减去已知的那一端,横纵各做一次。中点是 3、已知端是 1 时,另一端是 6 减 1 等于 5。它就是中点那条规则的移项:中点是两端的平均数,所以两端相加等于中点乘 2,减去其中一端就剩下另一端。除了最后那次减法的方向,没有别的要记。
- 为什么答案跑到我填进去的范围之外了?
- 因为两端分处中点的两侧,答案离中点有多远,已知那一端就离中点有多远,只是方向相反。中点离原点一百万、已知那一端在原点时,答案就在两百万之外。这不是溢出也不是算错——乘 2 再相减本来就可能得出比任何一个输入都大的数,页面自己对结果没有上限,只有那四个输入格有十亿的宽度限制。
- 第三个读数有什么用?
- 它是页面在检查自己。中点按定义到两端一样远,所以「已知端点到中点」的距离必须等于「中点到刚求出来的那一端」的距离。本页印的是前一个,它与你手上那半段对得上,答案就是自洽的。拿后一个去比自己证明不了什么,那等于页面用自己的答案验自己的答案。
- 页面会检查我填的中点是不是真的中点吗?
- 不会,也没有办法。页面把你称为中点的那个点当作已知条件,然后照着「与它等距」把另一端构造出来——所以你填的那个点要不是线段的真正中点,答案会以同样的量错掉,而页面上看不出任何异常。中点来自估算而不是测量时,答案是估算。半长那一行是唯一能抓住东西的把手,而它只告诉你填进去的那组几何关系是否自洽,不告诉你现实世界里的情况。
- 能用来算空间里的点吗?
- 只能一个轴一个轴地做。本页每个点只有两个坐标格、没有第三个,所以三维问题没法原样填进来。规则本身与维数无关——每个轴都乘 2 再减去已知端——所以第三个坐标你可以在纸上照做,但页面不会替你做,也不会显示结果。
- 已知端点正好是中点会怎样?
- 答案就是同一个点,半长是 0。两端重合的线段没有长度,而它的中点就是这个点本身,所以没有哪里出错。这是唯一一档反推出来的端点不在中点对面的情形,见一次值得,免得以后一组重复的坐标看起来像计算失败了。
参考资料
- Midpoint(中点)——线段上与两端等距的那个点;本页反推的正是由中点与一端求另一端的那个关系 — Wolfram MathWorld(美国)
- Line Segment(线段)——由两个端点界定的直线的一部分;中点与其中一端已知则另一端唯一确定 — Wolfram MathWorld(美国)
- Point(点)——本页收进去又给出来的坐标对,也是它不给任何数挂单位的原因 — Wolfram MathWorld(美国)
- 教育部关于印发义务教育课程方案和课程标准(2022 年版)的通知——该通知的附件清单第 5 项是《义务教育数学课程标准(2022 年版)》;平面直角坐标系与线段中点的坐标表示是义务教育阶段数学课程的内容,课标的原文与学段划分以该附件为准 — 中华人民共和国教育部