Java查看数字是否可以是square / cube root

时间:2017-02-17 14:40:22

标签: java

我想方形/立方根,还有4,5等。我该怎么做? 我可以做正方形

function customReplace(str, start, end, newStr) {
  return str.substr(0, start) + newStr + str.substr(end);
}


var str = "abcdefghijkl";

console.log(customReplace(str, 2, 5, "hhhhhh"));

我如何为其他权力做这件事?

2 个答案:

答案 0 :(得分:1)

漏洞问题是关于如何解决问题(恕我直言)

数字 x 可以根据 n 生根:

x ^(1 / n)是整数,其中n> 0

因此,方法可能是:

public static void main(final String[] args) {
    for (int i = 1; i <= 10; i++) {
        System.out.println(" has " + i + " exactly a root base2(square)? " + isRootInteger(i, 2));
        System.out.println(" has " + i + " exactly a root base3(cubic)? " + isRootInteger(i, 3));
    }

}

public static boolean isRootInteger(int number, int root) {
    double dResult = Math.pow(number, 1.0 / root);

    if ((dResult == Math.floor(dResult)) && !Double.isInfinite(dResult)) {
        return true;
    }
    return false;
}

答案 1 :(得分:-1)

如果你取得力量并找到它的倒数,1/power它会为你提供力量的根源。

public static boolean isPowerNumber(int n, double power) {
    int a = (int) Math.pow(n, (1/power));
    if(Math.pow(a,power) == n) {
        return true;
    } else {
        return false;
    }
}

以下是您需要的代码。