数值的整数次方double pow(double base,int exponent)求base的ex
发布时间:2020-12-14 03:34:56 所属栏目:大数据 来源:网络整理
导读:package org.lza;/** * 数值的整数次方double pow(double base,int exponent)求base的exponent次方 不考虑大数 不准用库函数 * @author Joson * */public class AlgorithmRealizeByJava { public static void main(String args[]){ Test(); } public static
package org.lza; /** * 数值的整数次方double pow(double base,int exponent)求base的exponent次方 不考虑大数 不准用库函数 * @author Joson * */ public class AlgorithmRealizeByJava { public static void main(String args[]){ Test(); } public static double Pow(double base,int exponent){ if(exponent==0||base==0)//特殊情况处理 return 0; int num=Math.abs(exponent);//取得指数的绝对值; if(exponent==1) return base; double result=Pow(base,num>>1);//优化运算 result*=result; if((exponent & 1) ==1)//判断是否是奇数 result*=base; if(exponent<0)//判断指数是否是负数 return 1/result; return result; } /** * 测试函数 */ private static void Test(){ System.out.println(Pow(0,1)); System.out.println(Pow(1,0)); System.out.println(Pow(2,8)); System.out.println(Pow(2,-4)); System.out.println(Pow(2,7)); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |