Java examples for java.lang:Math Calculation
raise To Power In Precision
/**// w w w .j a v a2 s .c o m * * maer - Solutions to problems of Project Euler * Copyright (C) 2011, Sandeep Gupta * http://www.sangupta.com/projects/maer * * The file is licensed under the the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * * See the License for the specific language governing permissions and * limitations under the License. * */ //package com.java2s; import java.math.BigInteger; public class Main { public static BigInteger raiseToPowerInPrecision(int i, long power, int precision) { BigInteger number = BigInteger.valueOf(i); BigInteger product = BigInteger.valueOf(1l); for (long l = 0; l < power; l++) { product = product.multiply(number); product = trimToPrecision(product, precision); } return product; } public static BigInteger trimToPrecision(BigInteger number, int precision) { String n = number.toString(); if (n.length() > precision) { n = n.substring(n.length() - precision); } return new BigInteger(n); } }