完美数——Java

计算并输出10000000的所有完美数。
AC代码如下:

import java.util.Scanner;

public class Main {
    
    
    public static int prime(int n){
    
    
        int k;
        if(n==1)
            return 0;
        k=(int) Math.sqrt(n);
        for(int i=2;i<=k;i++)
            if(n%i==0)
                return 0;
        return 1;
    }
    public static void main(String[] args){
    
    
        int arr[]={
    
    2,3,5,7,11,13};
        for(int i=0;i<6;i++){
    
    
        	//这里还要保证2^n-1也是质数
            if(prime((int) (Math.pow(2,arr[i])-1))==1){
    
    
                int num= (int) (Math.pow(2,arr[i]-1)*( Math.pow(2,arr[i])-1));
                System.out.println(num);
            }
        }
    }
}


猜你喜欢

转载自blog.csdn.net/weixin_44313771/article/details/108883366