作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
编写一个名为 printPowersOfN 的方法,该方法接受一个底数和一个指数作为参数,并打印底数的每个幂,从 base0 (1) 到最大幂(含)。例如,考虑以下调用:
printPowersOfN(4, 3);
printPowersOfN(5, 6);
printPowersOfN(-2, 8);
这些调用应该产生以下输出:
1 4 16 64
1 5 25 125 625 3125 15625
1 -2 4 -8 16 -32 64 -128 256
public class prac {
public static void main(String[]args) {
printPowersOfN(4,3);
printPowersOfN(5,6);
printPowersOfN(-2,8);
}
public static void printPowersOfN(int num1, int num2) {
int k =(int) Math.pow(num1, num2);
for (int i=1; i<=num2;i++) {
System.out.print( k + " ");
}
System.out.println();
}
}
我的输出是: 64 64 64
15625 15625 15625 15625 15625 15625
256 256 256 256 256 256 256 256
为什么这只会一遍又一遍地打印最大功率而不是导致指数的所有功率?(idk如果我措辞正确的话)我究竟做错了什么?我想使用 Math.pow 方法
最佳答案
Why is this only printing the max power over and over instead of the of all the powers leading up to the exponent?
因为您在 k
中存储了最大功率:
int k =(int) Math.pow(num1, num2);
并在循环中一次又一次地打印 k。
System.out.print( k + " ");
您也应该更改 k 的值。例如,以下应该适合您:
int k;
for (int i=0; i<=num2;i++) {
k =(int) Math.pow(num1, i);
System.out.print( k + " ");
}
您可能需要根据您的要求进行细微的更改,但这可以让您清楚地知道哪里出了问题。
关于java - 为什么我的 for 循环一遍又一遍地打印相同的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32835698/
我是一名优秀的程序员,十分优秀!