Python编程案例:轻松验证费马小定理
费马小定理在数学界也是众所周知的。它是初等数论最重要的四个定理之一。
今天我们将使用Python轻松验证费马小定理。
1。费马小定理的内容
费马小定理是数论中的一个重要定理,于1636年提出。费马小定理是初等数论最重要的四大定理之一(威尔逊定理、欧拉定理(数论中的欧拉定理) )、中国剩余定理(又称孙子定理、费马小定理)。它在初等数论中起着非常重要的作用。广泛且重要的应用。事实上,它是欧拉定理的一个特例。
费马小定理可以简单地表述为:
如果 p 是素数,并且整数 a 和 p 互质,则存在 (p-1) 次幂,a 除以 p 余数为 1。
数学表达式为:
如果 p 是素数且 (a, p)=1,则 a^(p-1) ≡1 (mod p)
还有另一种描述方式:
如果 p 是素数,a 是整数,则 a^p ≡a (mod p)
关于费马小定理的相关扩展知识这里不再介绍。有兴趣的朋友可以自行搜索学习。如果费马小定理被证明了,今天我们只做一个简单的验证。
2。创意之源
在讨论费马大定理时,我们了解了在数论中占有重要地位的费马小定理。学生在学习Python时,对这些案例也很感兴趣,因为不仅可以编程、验证,还能获得数学知识,更多地了解数学的历史。
3。设计思路
在Python编程案例中,主要目的是生成一个素数列表,验证输入值是否是素数,然后计算过程就比较简单了。基本程序是第二级考试的内容,修改功能是第四级考试的内容。
4. 编程
编程并不难,步骤如下。
1。费马小定理形式1
首先生成p范围内的素数列表,并判断p是否是素数。如果不是素数,请再次输入。如果是质数,系统会要求您输入 a。如果 a 和 p 互质,这将调用费马小定理。运行结果如下。
如果a是p的倍数,则余数为0,即p可以均匀分布。这更容易理解。
![]()
运行结果:
![]()
2.费马小定理形式2
费马小定理的另一种形式,我们也来验证一下。该程序的结构如下。基本思想是首先生成p范围内所有素数的列表,然后判断p是否是素数。
如果 p 不是素数,请重新输入 p 值。如果p是素数,则要求一个随机整数a,验证、计算并输出结果。
![]()
![]()
5。测试和改进
语句的验证测试是直接通过输入数值来验证。为了进行比较,您会发现一些特殊的和一般的。在一定范围内也能得到验证。
比如输入一个素数p,让a在一定范围内进行验证。程序如下。
输入p作为素数然后要求输入a的最小值和最大值,然后一一验证并输出结果。
![]()
若输入范围为30-40,依次验证当a和p互质时,费马小定理成立,当a=34时,a是p的倍数,余数为0。
![]()
费马提出定理时,也要求a是素数,但这个要求实际上是没有必要的。
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
code前端网