开始学习Java了,当然,Java的高精度是非常容易着手的!
此题是整数部分为零,应该舍去,小数后面为零的也应该舍去。
Java代码:
import java.math.BigDecimal; import java.util.*; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner cin=new Scanner(System.in); int n,i; BigDecimal a,b; BigDecimal one=new BigDecimal("1"); while(cin.hasNextBigDecimal()){ b=cin.nextBigDecimal(); n=cin.nextInt(); a=one; for(i=1;i<=n;i++){ a=a.multiply(b); } a=a.stripTrailingZeros(); //去掉小数后面的零。 String str=a.toPlainString(); //将小数用字符串的类型表示 if(str.startsWith("0.")) str=str.substring(1); //取第一个字符---截取后面字符。 System.out.println(str); } } }