给一个浮点数,然后求Case次幂,如果第一个是0,则从小数点处输出,需要转成字符串处理,才学的大数,不知道怎么处理,查看的别人代码。用法是
String str = ans.stripTrailingZeros ( ).toPlainString ( );不是很理解怎么过程。
import java.math.BigDecimal;
//import java.math.BigInteger;
import java.util.Scanner;
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner cin = new Scanner ( System.in );
BigDecimal ans, num;
int Case;
while ( cin.hasNext() ) {
num = cin.nextBigDecimal ( );
ans = BigDecimal.ONE;
Case = cin.nextInt ( );
for ( int i = 1; i <= Case; ++i )
ans = ans.multiply ( num );
String str = ans.stripTrailingZeros ( ).toPlainString ( );
if ( str.charAt ( 0 ) == '0' ) System.out.println ( str.substring ( 1 ) );
else System.out.println ( str );
}
}
}