「完美树java」完美树叶

博主:adminadmin 2022-11-26 01:17:09 100

今天给各位分享完美树java的知识,其中也会对完美树叶进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何用JAVA检测一个数字的每一位的和,是否是完美数

Java源代码:

import java.util.Scanner;

public class Exam01 {

public static void main(String[] args) {

int num;

System.out.print("请输入一个正整数:");

Scanner scan = new Scanner(System.in);

num = scan.nextInt();

if(perfectNumber(num) == true){

System.out.printf("%d 是一个完美数", num);

}

else{

System.out.printf("%d 不是一个完美数", num);

}

}

/**

* 判断num是否是完美数(各位数字之和恰好是完全数)

* @param num 待判断数

* @return true-完美数,false-非完美数

*/

public static boolean perfectNumber(int num){

int sum = 0;

//求num的各位数字之和

while(num 0){

sum += num % 10;

num /= 10;

}

return completeNumber(sum);

}

/**

* 判断num是否是完全数(所有小于自身的因子之和恰好等于其自身的正整数)

* @param num 待判断数

* @return true-完全数,false-非完全数

*/

public static boolean completeNumber(int num){

if(num = 1){

return false;

}

int sum = 1;

//求小于num的所有因子之和

for(int i=2; inum; i++){

if(num % i == 0){

sum += i;

}

}

return (sum == num ? true : false);

}

}

运行测试:

请输入一个正整数:600

600 是一个完美数

请输入一个正整数:64

64 不是一个完美数

java中如何判断一个数是否完全数!!

java中如何判断一个数是否完全数,可以分为求约数(不包括本身)、求约数之和以及比较自身和约数之和是否相等三个步骤。

第一步:求约数

public static Listint yueShu(int n){

Listint list = new ArrayListint();

for(int i=1;i=n/2;i++){

if(n%i==0){

list.add(i);

}

}

return list;

}

解析:如果该数除以循环中的变量的余数为零,那么该变量就是该数的约数。其中有个注意点,如果循环变量大于该数的一半之后就不会是该数的余数了(该数本身除外),所以循环到该数一半时便结束。

第二步:求约数之和

public static int sum(Listint list){

int total=0;

Iterator it=list.iterator();

while(it.hasNext()){

total+=it.next();

}

return total;

}

解析:利用while遍历List,将List中的值全部加起来。

第三步:比较本身与约数之和是否相等

public static boolean isPerfect(int n){

return n==sum(yueShu(n));

}

如果该数与该数的约数之和相等,则该方法返回true,否则返回false。最后根据该方法的返回值判断该数是不是完全数。

Java中输出1000内的完美数,为什么和变量sum必须定义在for内才能正确输出?定义在for前就什么也不会输出

/*

    定义在for外,

    第一次循环,当i = 2 时,内层循环结束时,sum的值是 1

    第二次循环,当i = 3 时,内层循环结束时,sum的值是 2

    第三次循环,当i = 4 时,内层循环结束时,sum的值是 5

    sum的值和i的值不会相等,越往后,越不会相等,因为,i 每次增加 1,

    而sum只会递增不会,所以不会被输出。

    

    

    简单说,当给定一个数字 n 判断 n 是不是完美数,只需要用取 n 的公约数,与其它数字无关,

    所以,定义在for里面就是为了每次循环开始的时候,把 sum 的值清空,也就是这个sum与前面的数字无关了

    

*/

Java 求100以内的完全数 运算过程是怎样的 怎么得到6 ,28的

public class TestFullNum {

public static void main(String[] args) {

for (int index = 1; index  100; index++) {

// 如果是完全数,则输出

if (isFullNum(index)) {

System.out.println(index);

}

}

}

/**

 * 判断狮子是不是完全数br

 * 

 * 完全数定义: 又称完美数或完备数,是一些特殊的自然数。 它所有的真因子(即除了自身以外的约数)的和(即因子函数),

 * 恰好等于它本身。如果一个数恰好等于它的因子之和, 则称该数为“完全数”。

 * 

 * @param num

 *            整数

 * @return boolean

 */

private static boolean isFullNum(int num) {

int tmp = 0;

for (int index = 1; index  num; index++) {

if (0 == num % index) {// 如果能被整除,则是因子

tmp += index;

}

}

// 判断所有因子之和是否等于本身

return tmp == num;

}

}

10000以内的完美数用Java以6=1+2+3的形式显示怎么编写啊

/**

     * 获取完美数

     * @param num

     */

    public static void getPerfectNumber(int num) {

        if (num = 0) {

            return;

        }

        int total = 0;

        for (int i = 1; i = num; i++) {

            total = 0;

            for (int j = 1; j = i; j++) {

                if (i % j == 0) {

                    if(i != j){

                        total += j;

                    }

                }

            }

            if(total == i){

                System.err.println("完美数:"+i);

            }

        }

    }

关于完美树java和完美树叶的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-26,除非注明,否则均为首码项目网原创文章,转载请注明出处。