使用遞迴計算冪的Java程式
在本文中,我們將瞭解如何使用Java中的遞迴函式計算數字的冪。我們將使用Power類和getPower方法來實現此目的。getPower方法將被設計為遞迴呼叫自身,直到冪減少到零,此時它將返回最終結果。
我們將首先提示使用者輸入底數和冪,然後我們將使用遞迴計算結果。
問題陳述
給定一個底數和一個冪值,我們需要使用遞迴計算底數的冪的結果。下面是相同的演示 -
輸入
Enter the number and its power 2 and 5
輸出
The result of 2^5 is 32
使用遞迴計算冪的不同方法
以下是使用遞迴計算冪的不同方法 -
使用使用者定義的輸入
以下是根據使用者定義的輸入使用遞迴計算冪的步驟 -
- 從java.util包匯入Scanner類來處理使用者輸入。
- 建立包含main方法的Power類。
- 透過宣告變數my_input、my_power和result來初始化變數,以儲存底數、冪值和結果。
- 例項化一個Scanner物件以讀取使用者的輸入。
- 提示使用者輸入,要求使用者輸入底數和冪值。
- 捕獲使用者輸入,使用Scanner物件的nextInt()方法捕獲使用者輸入的底數和冪值。
- 透過呼叫getPower方法,並將底數和冪值作為引數傳遞給它來遞迴地計算結果。
- 顯示最終結果。
示例
在這裡,輸入是根據提示由使用者輸入的。您可以在我們的程式碼執行工具中現場嘗試此示例。
import java.util.Scanner; public class Power { public static void main(String[] args) { int my_power, my_input, result; my_input = 2; my_power = 5; System.out.println("Required packages have been imported"); Scanner my_scanner = new Scanner(System.in); System.out.println("A reader object has been defined "); System.out.print("Enter the number : "); my_input = my_scanner.nextInt(); System.out.print("Enter the power value : "); my_power = my_scanner.nextInt(); result = getPower(my_input, my_power); System.out.println("The result of " +my_input + "^" + my_power + " is " + result); } public static int getPower(int my_input, int my_power) { if (my_power != 0) { return (my_input * getPower(my_input, my_power - 1)); } else { return 1; } } }
輸出
Required packages have been imported A reader object has been defined Enter the number : 2 Enter the power value : 5 The result of 2^5 is 32
使用預定義值
以下是根據使用者定義的輸入使用遞迴計算冪的步驟 -
- 建立包含main方法的Power類。
- 使用預定義的底數和冪值宣告並初始化變數my_input、my_power和result。
- 將預定義的底數和冪值列印到控制檯。
- 透過使用預定義的底數和冪值作為引數呼叫getPower方法來遞迴地計算結果。
- 顯示結果。
示例
在這裡,整數已預先定義,其值在控制檯中被訪問和顯示。
public class Power { public static void main(String[] args) { int my_power, my_input, result; my_input = 2; my_power = 5; System.out.println("The number and its power is defined as " +my_input + " and " +my_power); result = getPower(my_input, my_power); System.out.println("The result of " +my_input + "^" + my_power + " is " + result); } public static int getPower(int my_input, int my_power) { if (my_power != 0) { return (my_input * getPower(my_input, my_power - 1)); } else { return 1; } } }
輸出
The number and its power is defined as 2 and 5 The result of 2^5 is 32
廣告