初學JAVA不到一個月就有同學在問這個問題

然後呢過一陣子在網路上又連續遇到兩個人在問這個問題

其實這個方法在Math類別裡面有一個函數可以處理
不過通常這個題目是為了訓練初學者使用迴圈跟建立方法的訓練
雖然整數的整數次方可以簡單的用迴圈處理,可是如果輸入的參數是double就可能還要處理浮點數不精確的問題,難度就會大幅提升了

所以這邊只列出整數的整數次方
我將程式碼以及測試碼一起打在下面



public class demo {



        public static void main(String[] args) {

//使用自己建的函數

                System.out.println(power(3,2));//3的2次方

                System.out.println(power(2,5));

//使用java內建函數

                System.out.println(Math.pow(3, 2));

                System.out.println(Math.pow(2, 5));



        }



        public static double power(int x,int y){



                double result = 1;



                if(y>=1){



                        for(int i=0;i<y;i++){



                                result = result *x;

                        }



                }else {



                        for(int i=0;i>y;i--){



                                result = result /x;



                        }

                }

                return result;

        }



}



arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Dnight 的頭像
    Dnight

    D奈老師的部落格

    Dnight 發表在 痞客邦 留言(0) 人氣()