亲密数是成对出现的,展示了两个整数之间通过因子的密切联系。如果整数a的因子和等于b,而整数b的因子和等于a,因子包括1但不包括本身,且a不等于b,则称a、b为亲密数对。
例如:220和204便是一堆亲密数,因为其满足如下规则:
220的各个因子之和为:1+2+4+5+10+11+20+22+44+55+110=204;
204的各因子之和为:1+2+4+71+142=220.
代码如下:
import java.util.Scanner;
public class QinMiNumber {
static void findFriendNumber(int para)
{
int divisorSum=0;
int FNDivisorSum=0;
String factor="1";
String FNFactor="1";
for(int i=1;i<para;i++)
{
if(para%i==0)
{
divisorSum+=i;
if(i>=2)
{
factor=factor+"+"+i;
}
}
}
if((para!=divisorSum)&&(para<divisorSum))
{
for(int k=1;k<divisorSum;k++)
{
if(divisorSum%k==0)
{
FNDivisorSum+=k;
if(k>=2)
{
FNFactor=FNFactor+"+"+k;
}
}
}
if(para==FNDivisorSum)
{
System.out.println(para+"与"+divisorSum+"是亲密数!实例如下:");
System.out.println(FNFactor+"="+para);
System.out.println(factor+"="+divisorSum);
System.out.println();
}
/*else{
System.out.println(para+"不存在亲密数!");
}*/
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.print("请输入亲密数的最大值:");
Scanner input = new Scanner(System.in);
int Max= input.nextInt();
System.out.println("程序将查找1~"+Max+"之间的亲密数!");
for(int i=1;i<=Max;i++)
{
findFriendNumber(i);
}
}
}
代码运行结果如下:
请输入亲密数的最大值:5000
程序将查找1~5000之间的亲密数!
220与284是亲密数!实例如下:
1+2+4+71+142=220
1+2+4+5+10+11+20+22+44+55+110=284
1184与1210是亲密数!实例如下:
1+2+5+10+11+22+55+110+121+242+605=1184
1+2+4+8+16+32+37+74+148+296+592=1210
2620与2924是亲密数!实例如下:
1+2+4+17+34+43+68+86+172+731+1462=2620
1+2+4+5+10+20+131+262+524+655+1310=2924
分享到:
相关推荐
教育精品资料
1.d/n 等价于n%d==0. 2.一个整数N的约数个数的上界为. 3.1-N 每个数的约数个数综合大约为N * log N 个。...数论分块: k/i (1<=i<=n) L,R每块的范围,x每块k/i的取值 for(int L=1,R;L<=n;L=R+1)
ACM数论——ppt(天津大学)ACM数论——ppt(天津大学)
将要讨论在ACM程序设计竞赛中出现比较多的一类问题:数论问题。由于数论问题涉及的数学知识比较多、比较深奥,不能在短短的一章中全部予以介绍,只能通过介绍一些案例来说明常见的数论问题。
《数论中未解决的问题》B24的研究简报(II) ——无一能是另外两个数的倍数的集合的构造与计数,王积社,,《数论中未解决的问题》一书中的问题B24是匈牙利著名数学家Paul Erdös提出的一个组合数论问题,首先其核心是...
西电的数论算法讲义,研究生课程,计算机学院课程
本书为潘承洞院士写的初等数论的入门读物,每章后都有大量的习题供读者练习。
初等数论中输出由数查出对应位置的指标的数的表的程序初等数论中输出由数查出对应位置的指标的数的表的程序初等数论中输出由数查出对应位置的指标的数的表的程序初等数论中输出由数查出对应位置的指标的数的表的程序...
千年学府湖南大学数学院的数论PPT,一般是不外传的,我好不容易从关系好的老师那拷贝了一份.现在推荐给大家,研究数据结构的朋友不能错过的大餐^_^
经典初等数论例题100例以及初等数论定理的证明
这是基本数论也就是初等数论算法系列的一个集合,其中包括可除性 素数 公约数 等等一些基本数论内容 内容短 但很精悍 值得推荐
数论经典著作系列闵嗣鹤文集 [闵嗣鹤 著] 2011年版 闵嗣鹤教授是我国已故著名数学家,他的研究工作涉及许多数学分支,特别是对指数和估计、RiemannZeta函数论、数论在近似计算中的应用以及数字石油勘探中的数学方法...
利用matlab编程求解初等数论问题.rar
数论中一个有趣的题目:任意一个正整数,若为偶数,则用2除之,若为奇数,则与3相乘再加上1。重复此过程,最终得到的结果为1。如: 21 3105168421 63105168421 编写代码并验证结论
数论相关知识讲解,函数y=[x]称为取整函数,也称高斯函数。其中不超过实数x的最大整数称为x的整数部分,记作[x]或INT(x)。该函数被广泛应用于数论,函数绘图和计算机领域。
教学能广泛引起人们兴趣的部分原因,是由于存在着陈述简单而未经解决的问题,在平面几何与数论的领域中,这样的问题是极为丰富的,《数论经典著作系列:平面几何与数论中未解决的新老问题》的目的就是要讨论这些...
Matlab在数论研究中的应用——用Matlab验证哥德巴赫猜想与孪生素数猜想
算法竞赛中的数论–系列课件.zip
数论经历了从初等数论到近代的解析数论、代数数论这一漫长的发展,现在的应用价值越来越广泛了,但是研究中总伴随着非常棘手确有吸引人的问题产生。本书就数论几百年的发展过程,总结了大大小小的数论领域里头还没有...