http://poj.org/problem?id=1001
题意:给你一个浮点数,一个整数,求浮点数的整数次方。
思路:大数解决,注意处理后面多余的零跟前面多余的零,以及Java科学计数法的问题。
import java.math.*; import java.util.Scanner; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub /*sss*/ BigDecimal a, c, d; int b ; Scanner cin = new Scanner(System.in); while(cin.hasNext()){ a = cin.nextBigDecimal(); b = cin.nextInt(); a = a.pow(b); String s; s = a.toPlainString(); //避免科学记数法(如果用a.toSting会存成科学记数法) int start = 0; while(s.charAt(start) == ‘0‘){ //a.charAt(b) 取a字符串下标为b的字符 start++; } int end = s.length()-1; while(s.charAt(end) == ‘0‘){ end--; } if(s.charAt(end) == ‘.‘){ end--; } for(int i = start; i <= end; ++i){ System.out.print(s.charAt(i)); } System.out.println(); //System.out.println();//subtract-, add+, multiply* divide/ } cin.close(); } }
POJ 1001 Exponentiation(大数处理),布布扣,bubuko.com
原文:http://blog.csdn.net/xuechelingxiao/article/details/21196569