欧拉函数及其证明_欧拉函数证明题

欧拉函数及其证明_欧拉函数证明题请思考以下问题:  任意给定正整数n,请问在小于等于n的正整数之中,有多少个与n构成互质关系?(比如,在1到8之中,有多少个数与8构成互质关系?)计算这个值的方法就叫做欧拉函数,以φ(n)表示。在1到8之中,与8形成互质关系的是1、3、5、7,所以φ(n)=4。φ(n)的计算方法并不复杂,但是为了得到最后那个公式,需要一步步讨论。第一种情况如果n=1,则φ(1

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

请思考以下问题:

  任意给定正整数n,请问在小于等于n的正整数之中,有多少个与n构成互质关系?(比如,在1到8之中,有多少个数与8构成互质关系?)

计算这个值的方法就叫做欧拉函数,以φ(n)表示。在1到8之中,与8形成互质关系的是1、3、5、7,所以 φ(n) = 4。

φ(n) 的计算方法并不复杂,但是为了得到最后那个公式,需要一步步讨论。

第一种情况

如果n=1,则 φ(1) = 1 。因为1与任何数(包括自身)都构成互质关系。

第二种情况

如果n是质数,则 φ(n)=n-1 。因为质数与小于它的每一个数,都构成互质关系。比如5与1、2、3、4都构成互质关系。

第三种情况

如果n是质数的某一个次方,即 n = p^k (p为质数,k为大于等于1的整数),则

2015-08-04/55c0573f4a25a

比如 φ(8) = φ(2^3) =2^3 – 2^2 = 8 -4 = 4。

这是因为只有当一个数不包含质数p,才可能与n互质。而包含质数p的数一共有p^(k-1)个,即1×p、2×p、3×p、…、p^(k-1)×p,把它们去除,剩下的就是与n互质的数。

上面的式子还可以写成下面的形式:

2015-08-04/55c0578076585

可以看出,上面的第二种情况是 k=1 时的特例。

第四种情况

如果n可以分解成两个互质的整数之积,

  n = p1 × p2

  φ(n) = φ(p1p2) = φ(p1)φ(p2)

即积的欧拉函数等于各个因子的欧拉函数之积。比如,φ(56)=φ(8×7)=φ(8)×φ(7)=4×6=24。

这一条的证明要用到“中国剩余定理”,这里就不展开了,只简单说一下思路:如果a与p1互质(a<p1),b与p2互质(b<p2),c与p1p2互质(c<p1p2),则c与数对 (a,b) 是一一对应关系。由于a的值有φ(p1)种可能,b的值有φ(p2)种可能,则数对 (a,b) 有φ(p1)φ(p2)种可能,而c的值有φ(p1p2)种可能,所以φ(p1p2)就等于φ(p1)φ(p2)。

第五种情况

因为任意一个大于1的正整数,都可以写成一系列质数的积。
2015-08-04/55c057f99f735

根据第4条的结论,得到
2015-08-04/55c05835ca6e2

再根据第3条的结论,得到

2015-08-04/55c05871f2594

也就等于

2015-08-04/55c058b16129e

这就是欧拉函数的通用计算公式。比如,1323的欧拉函数,计算过程如下:

2015-08-04/55c059446c936

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172052.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • sql2012安装错误代码0x84b10001_sql server 安装程序遇到以下错误

    sql2012安装错误代码0x84b10001_sql server 安装程序遇到以下错误followthebelowsteps: InWindows®Explorer,browsetothefollowingpath:C:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG\machine.config ImportantNote:Makeacopyofthemachine.c…

    2022年9月11日
    0
  • StringBuffer源码分析之 append 方法[通俗易懂]

    欢迎点击「算法与编程之美」↑关注我们!本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列博客。StringBuffer这个类是我们日常开发中经常会使用的一个字符串操作类,该类提供了非常多的关于字符串操作相关的类,尤其是append方法更为常用。1目标本次源码分析的目标是深入了解StringBuffer类中append方法的实现机制。2分析方法首先编写测试代码,…

    2022年4月11日
    72
  • 【机器学习基础】EM算法

    【机器学习基础】EM算法目录一样例二公式描述三参考文献最大期望算法(Expectation-maximizationalgorithm,又译为期望最大化算法),是在概率模型中寻找参数最大似然估计或者最大后验估计的算法,其中概率模型依赖于无法观测的隐性变量。最大期望算法经过两个步骤交替进行计算:第一步是计算期望(E),…

    2022年6月29日
    27
  • when和while的区别和用法_when后面加do还是doing

    when和while的区别和用法_when后面加do还是doingwhen和while的区别主要有:指代不同、从句动词不同、时间状态不同、用法不同等。1、指代不同:when是atorduringthetimethat既指时间点,也可指一段时间,while是duringthetimethat只指一段时间。2、从句动词不同:when引导的时间状语从句中的动词可以是终止性动词,也可以是延续性动词,而while从句中的动词必须是延续性动词。3、时间状态不同:when说明从句的动作和主句的动作可以是同时,也可以是先后发生,while则强调主句的动作在从句

    2022年10月21日
    0
  • Asp.net Core + EF Core + Bootstrap搭建的MVC后台通用管理系统模板(跨平台版本)

    Asp.net Core + EF Core + Bootstrap搭建的MVC后台通用管理系统模板(跨平台版本)6月随着.NETCOREPREVIEW2的发布,JUCHEAP的CORE版本也由之前的JuCheapCore1.0升级到了JuCheapCore2.0,并且已经在将core版本应用到了生产环境中,现在支持的数据库库有SQLSERVER2008以上,以及SQLITE;项目源代码地址,在文末.部署到ubuntu16.04下的效果如下:源码下载地址:h…

    2022年7月22日
    7
  • java进行四舍五入_java 实现四舍五入功能

    java进行四舍五入_java 实现四舍五入功能告诉你一个小技巧,用4行java代码实现一个四舍五入功能的实例。四舍五入是一种精确度的计数保留法,与其他方法本质相同。但特殊之处在于,采用四舍五入,能使被保留部分的与实际值差值不超过最后一位数量级的二分之一,这种保留法的误差总和是最小的。例子例如π,便被四舍五入,大多保留下3.14了。但是,有的时候不可以用四舍五入的方法,而要用”进一法”和”退一法”。例如,288个学生春游,45人一辆大巴,算下来…

    2022年5月21日
    26

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号