大数运算(涉及到格式问题)

题目可见:http://poj.org/problem?id=1001

求一个数的n次(无前导零,无后导零)。涉及到大数运算。

此题用到BigDecimal类(另BigInteger类)

import java.math.BigDecimal;
import java.util.Scanner;;

public class Main 
{
	public static void main(String[] args) 
	{
		Scanner cin = new Scanner(System.in);
		BigDecimal bd;
		String s;
		int num;
		
		while (cin.hasNext())
		{
			bd = cin.nextBigDecimal();
			num = cin.nextInt();
			bd = bd.pow(num);			// 求某个数的num次
			s = bd.stripTrailingZeros().toPlainString();	// 去后导零,且无格式
			
			while (s.startsWith("0"))	// 去前导零
			{
				s = s.substring(1);
			}
			
			System.out.println(s);
		}
	}

}

posted @ 2011-03-13 22:06  SubmarineX  阅读(246)  评论(0编辑  收藏  举报