常用API1 ---Math

包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。

常用方法:

常用API1 ---Math_第1张图片

package MyApi.a01mathdemo01;

public class MathDemo01 {
    public static void main(String[] args) {
     //abs 获取参数的绝对值
        System.out.println(Math.abs(-88));
        System.out.println(Math.abs(88));
  //bug:
        // 以Int为例,取值范围:-2147483648-2147483647
        //如果没有正数与负数对应,那么传递的结果有误
        //-2147483648没有正数与之对应,所以abs结果产生bug
        //System.out.println(Math.absExact(-2147483648));
    //ceil 向上取整
        System.out.println(Math.ceil(12.34));
        System.out.println(Math.ceil(12.54));
        System.out.println(Math.ceil(-12.34));
        System.out.println(Math.ceil(-12.54));
//floor 向下取整,去尾法:
        System.out.println(Math.floor(12.34));
        System.out.println(Math.floor(12.54));
        System.out.println(Math.floor(-12.34));
        System.out.println(Math.floor(-12.54));
 //round 四舍五入
        System.out.println(Math.round(12.34));
        System.out.println(Math.round(12.54));
        System.out.println(Math.round(-12.34));
        System.out.println(Math.round(-12.54));
  //max 获取两个整数的较大值
        System.out.println(Math.max(12,15));
    //min 获取两个整数之间的较小值
        System.out.println(Math.min(12,15));
     //pow 返回a的b次幂
        System.out.println(Math.pow(2,3));   //8.0
        //细节
        //如果第二个参数0-1之间的小数
        System.out.println(Math.pow(4,0.5));//2.0
        System.out.println(Math.pow(2,-2));//0.25
    //建议:
        //第二个参数:一般传递大于等于1的正整数
        //开平方
        System.out.println(Math.sqrt(4));//2.0
        //开立方
        System.out.println(Math.cbrt(8));//2.0
     //random 返回double的随机值
        for (int i = 0; i < 10; i++) {
            System.out.println(Math.floor(Math.random()*100)+1);
        }
    }
}

判断一个数是否为质数

package MyApi.a01mathdemo01;

public class MathDemo02 {
    public static void main(String[] args) {
        System.out.println(isPrime(997));
    }
    public static boolean isPrime(int number){
        int count=0;
        for(int i=2;i<=Math.sqrt(number);i++){
            count++;
            if(number% i==0){
                return false;
            }
        }
        System.out.println(count);
        return  true;
    }
}

自幂数

一个n位自然数等于自身各个数位上数字的n次幂之和

eg:一个三位数 1^3+5^3+3^3=153;

eg:四位数 1^4+6^4+3^4+4^4=1634

如果自幂数是一位,也叫做:独身数

三位自幂数:水仙花数

四位自幂数:四叶玫瑰树

要求1:统计一共有多少个水仙花数

package MyApi.a01mathdemo01;

public class MathDemo03 {
    public static void main(String[] args) {
       int count=0;
        for (int i =100; i < 999; i++) {
            int ge=i%10;
            int shi =i/10%10;
            int bai=i/100%10;
            double sum=Math.pow(ge,3)+Math.pow(shi,3)+Math.pow(bai,3);
        if(sum==i){
            count++;
          //  System.out.println(i);
        }
        }
        System.out.println(count);
    }
}

四叶玫瑰数:

package MyApi.a01mathdemo01;

public class MathDemo04 {
    public static void main(String[] args) {
       int count=0;
        for (int i =1000; i < 9999; i++) {
            int ge=i%10;
            int shi =i/10%10;
            int bai=i/100%10;
            int qian=i/1000%10;
            double sum=Math.pow(ge,4)+Math.pow(shi,4)+Math.pow(bai,4)+Math.pow(qian,4);
        if(sum==i){
            count++;
           System.out.println(i);
        }
        }
        System.out.println(count);
    }
}

你可能感兴趣的:(java,开发语言)