1. ホーム
  2. java

[解決済み] 再帰的指数法(Recursive Exponent Method

2022-02-17 15:23:51

質問

public static int exponent(int baseNum) {
    int temp = baseNum *= baseNum;                

        return temp * exponent(baseNum);             
}

今現在、上のメソッドはデバッグするとn * nを無限大にするので、まだ動作しますが、私のインストラクターは10の累乗を与えられた指数を見つけることを要求するので、この再帰的メソッドを10回で停止させることが必要です。

メソッドのパラメータは1つだけでなければなりません。以下は、exponentを呼び出す例です。

                System.out.println ("The power of 10 in " + n + " is " + 
                    exponent(n));

だから、出力はこうあるべきだ。

The power of 10 in 2 is 1024

または

The power of 10 in 5 is 9765625

解決方法は?

再帰を行うための補助メソッドを作成します。このメソッドには、基数と指数の2つの引数が必要です。指数に10を指定して呼び出し、(exponent-1)で再帰させる。ベースとなるケースは exponent == 0 この場合、1を返すはずです。 exponent == 1 を基本ケースとして、その場合は基本を返します)。