为什么程序只输出星号就能证明 gcd 等式成立?
该程序遍历整数 k 的一系列值,并检查 gcd(a,b) 是否不等于 gcd(b, )。如果等式对任何 k 不成立,它会打印该 k。由于程序只输出星号(完成标记)而没有 k 值,这表明在测试范围内没有找到反例,支持了等式对这些 k 成立的论断。
适用条件
- 代码测试 k 从 -1024 到 1024。
- 对每个 k 检查条件 `c != gcd(b, )`。
理解与推导
- 初始化 , , 以及 c=gcd(a,b)。
- 循环 k 从 -1024 到 1024。
- 在循环内,检查 c 是否不等于 gcd(b, )。
- 如果它们不相等,打印 k。
- 循环结束后,打印星号。
- 观察到只打印了星号,意味着条件从未触发。
例子
终端输出只显示 `**********`,没有打印 k 值,表明对于所有测试的 k,`c == gcd(b, )` 都成立。
容易误解的地方
- 认为没有输出意味着程序没有运行;星号确认了执行。
- 认为测试有限范围就证明了公式对所有无限整数成立;它只为测试范围提供了经验支持。
观看对应讲解
2:07 – 2:55原站看这一段 ↗
相关概念
继续追问
相关问题
认识概念↗
最大公约数 是能同时整除 和 的最大正整数。等价地,正整数 是最大公约数,如果它同时整除 和 ,并且 和 的任何其他正公因数也都整除 。
适用条件:整数 和 不同时为零。; 是同时整除 和 的正整数。
哔哩哔哩详细描述欧几里得算法(附证明)
0:27 – 1:37原站看这一段 ↗
认识概念↗
是的,在这种语境下,“最大公约数”(greatest common factor)被用来指代许多现代文本中更常称为“最大公因数”(greatest common divisor)的概念。所示的数学过程是相同的基于减法的欧几里得算法。
适用条件:在解释算法为何有效时非正式地使用。
YouTube欧几里得算法为什么成立:减法形式直观解释
0:10 – 0:52原站看这一段 ↗
掌握方法↗
要通过列出因数来求最大公约数,需列出第一个数字的所有正因数,列出第二个数字的所有正因数,识别出现在两个列表中的因数,并从公因数中选择最大的数字。
适用条件:输入是正整数。;列出因数对于小例子是实用的;并未断言这是最快的方法。
YouTube最大公因数:因数列表与分数约分
2:50 – 2:59原站看这一段 ↗
掌握方法↗
要开始求 的欧几里得算法,需将较大的数写成较小的数乘以一个未知的商加上一个未知的余数。具体来说,建立除法方程 。
适用条件:输入是正整数。;较大的数放在方程的左边。;商是整数,且余数满足 。
YouTube欧几里得算法:两个最大公因数例题
0:25 – 0:58原站看这一段 ↗
掌握方法↗
答案依据视频资料生成并经过独立核验。若有疑问,请核对原视频或联系原作者。