给定一个数,快速求出从6到它之间的完数,这是一个简单编程算法
通过计算机编程的方式求出6到指定数之间的完数,如果不通过编程肯定是费时间和精力的,而通过编程方式只要找到一个规律,我们就能按照这个规律设计算法,进而完善程序。每天持续分享关于c语言,java,php,html等方面的额计算机编程的知识,如果你觉得这篇文章有用,欢迎关注趣IT科技,一起交流一起进步。
什么是完数
完全数是一些特殊的自然数。它所有的真因子的和,恰好等于它本身,如果一个数恰好等于它的因子之和,则称该数为“完全数”,比如6的因数是1,2,3则1+2+3=6,6就是完全数,找到这个规律之后,我们就可以按照这个规律设计程序了。
代码图片格式
文本格式代码
package tset;
import java.math.*;
import java.util.Scanner;
public class WanShu {
public static void main(String[] args) {
// TODO Auto-generated method stub
WanShuLei ws=new WanShuLei();
Scanner s=new Scanner(System.in);
System.out.println("请输入一个数字");
int ii=s.nextInt();
ws.print(ii);
}
}
class WanShuLei{
public void print(int ii){
int s;//总和
for(int i=6;i<=ii;i++){ //遍历所有数
s=0;
for(int j=1;j<i;j++){ //从1到i遍历
if(i%j==0) //余数为0则表示为因数
s+=j; //加起来总和
}
if(i==s) //i和总额相等就是完数,输出
System.out.println("完全数为:"+i);
}
}
}
程序结果
结果分析
可以看出代码在6到1000中只有三个数,分别是6,28,496,而真实的是就是这三个,可以看出程序是完全正确的,欢迎大家继续优化代码,多交流
每天持续分享关于c语言,java,php,html等方面的额计算机编程的知识,如果你也喜欢编程,如果你也热爱编程那就快点关注我们吧,一起交流一起进步,喜欢你就点个赞。
小编码字不易,欢迎关注趣IT科技