Không giống như Python (trong đó quyền hạn có thể được tính bằng ** b), JAVA không có cách tắt như vậy để hoàn thành kết quả sức mạnh của hai số. Java có hàm có tên pow trong lớp Toán, mà trả về một giá trị đúp
double pow(double base, double exponent)
Nhưng bạn cũng có thể tính toán, quyền hạn của số nguyên bằng cách sử dụng chức năng tương tự. Trong chương trình sau tôi đã làm như vậy và cuối cùng tôi chuyển đổi kết quả thành một số nguyên (typecasting). Thực hiện theo ví dụ:
import java.util.*;
import java.lang.*; // CONTAINS THE Math library
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int n= sc.nextInt(); // Accept integer n
int m = sc.nextInt(); // Accept integer m
int ans = (int) Math.pow(n,m); // Calculates n^m
System.out.println(ans); // prints answers
}
}
Ngoài ra, Các java.math.BigInteger.pow(int exponent)
trả về một BigInteger có giá trị là (điều này^mũ). Số mũ là số nguyên chứ không phải là BigInteger. Ví dụ:
import java.math.*;
public class BigIntegerDemo {
public static void main(String[] args) {
BigInteger bi1, bi2; // create 2 BigInteger objects
int exponent = 2; // create and assign value to exponent
// assign value to bi1
bi1 = new BigInteger("6");
// perform pow operation on bi1 using exponent
bi2 = bi1.pow(exponent);
String str = "Result is " + bi1 + "^" +exponent+ " = " +bi2;
// print bi2 value
System.out.println(str);
}
}
Nguồn
2017-08-21 07:25:29
Đây là bản sao có thể có của câu hỏi này http://stackoverflow.com/questions/101439/the-most-efficient-way-to-implement-an-integer-based-power-function-powint- int – bpgergo