给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方---递归实现

注意,这个题有坑,除坑措施都在代码中:
import java.util.Scanner;

public class Solution {
public double Power(double base, int exponent) {
if (base == 0) return 0;
else if (exponent == 0 && base != 0) return 1;
else if (base > 0 && exponent <0) return 1/(basePower ( base,-exponent-1 ));
else if (base < 0 && exponent > 0) {
if (exponent %2 != 0) return base
Power ( base,exponent-1 );
else return -basePower ( -base,exponent-1 );
}
else if (base < 0 && exponent < 0){
if (exponent %2 != 0) return 1/(base
Power ( base,-exponent-1 ));
else return 1/(-basePower ( -base,-exponent-1 ));
}
else return base
Power ( base,exponent-1 );
}
public static void main (String[] args) {
Solution solution = new Solution ();
Scanner scanner = new Scanner ( System.in );
System.out.println (“输入底数和指数:”);
double base = scanner.nextDouble ();
int exp = scanner.nextInt ();
double a = solution.Power ( base,exp );
System.out.println (a);
}
}

发布了101 篇原创文章 · 获赞 49 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/Austin_/article/details/99759048
今日推荐