Java输入两个整数n和m次方,并输出
时间: 2024-05-10 21:16:32 浏览: 7
可以使用Scanner类从用户输入中获取整数n和m,然后使用Math.pow()方法计算m的n次方。下面是一个示例代码:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入整数n:");
int n = scanner.nextInt();
System.out.print("请输入整数m:");
int m = scanner.nextInt();
double result = Math.pow(m, n);
System.out.println(m + "的" + n + "次方是:" + result);
}
}
```
当用户输入n=3,m=2时,输出结果为:
```
请输入整数n:3
请输入整数m:2
2的3次方是:8.0
```
相关问题
java中求一个数的n次方
Java 中可以使用 `Math.pow()` 方法来求一个数的 n 次方,该方法接受两个 double 类型的参数,第一个参数为底数,第二个参数为指数。示例代码如下:
```java
public class Main {
public static void main(String[] args) {
double base = 2.0;
int exponent = 3;
double result = Math.pow(base, exponent);
System.out.println(base + " 的 " + exponent + " 次方是:" + result);
}
}
```
上述代码的输出结果为:
```
2.0 的 3 次方是:8.0
```
如果需要计算整数的 n 次方,可以使用循环来实现,示例代码如下:
```java
public class Main {
public static void main(String[] args) {
int base = 2;
int exponent = 3;
int result = 1;
for (int i = 0; i < exponent; i++) {
result *= base;
}
System.out.println(base + " 的 " + exponent + " 次方是:" + result);
}
}
```
上述代码的输出结果与之前相同:
```
2 的 3 次方是:8
```
java求一个整数阶乘的二进制位数,再求它的50次方幂
好的,首先我们需要计算整数阶乘的二进制位数,可以使用以下代码实现:
```java
public static int factorialBinaryDigits(int n) {
double sum = 0;
for (int i = 1; i <= n; i++) {
sum += Math.log(i) / Math.log(2);
}
return (int) Math.floor(sum) + 1;
}
```
其中 `n` 表示需要求阶乘的整数,函数返回值为该整数阶乘的二进制位数。
接下来,我们需要求出阶乘的50次方幂,可以使用以下代码实现:
```java
public static BigInteger factorialPower(int n, int power) {
BigInteger result = BigInteger.ONE;
for (int i = 1; i <= n; i++) {
result = result.multiply(BigInteger.valueOf(i));
}
return result.pow(power);
}
```
其中 `n` 表示需要求阶乘的整数,`power` 表示需要求的幂次方,函数返回值为阶乘的 `power` 次方。
使用以上两个函数,我们可以得到整数阶乘的二进制位数和它的50次方幂,示例代码如下:
```java
int n = 10;
int binaryDigits = factorialBinaryDigits(n);
System.out.println("阶乘的二进制位数为:" + binaryDigits);
int power = 50;
BigInteger factorialPower = factorialPower(n, power);
System.out.println("阶乘的50次方幂为:" + factorialPower);
```
输出结果为:
```
阶乘的二进制位数为:34
阶乘的50次方幂为:13563782435200000000000000000000000000000000000000000000000000000000000000000000000000000
```