猿问

使用while循环格式和逻辑错误的功率表

我正在尝试制作一个从 1 到 5 的表格,其中显示最多 6 个值。


因此,例如,第 2 列将从 1、2、4、8、16、32、64 开始并停在那里。


我无法获得正确的表格格式。由于数字与它们应该在的位置不一致。


例如:


我现在面临的问题是


1 2 3 4 5

1 1 1 1 1 1 1 2 4 8 16 等等等等


任何好将不胜感激,我的代码在下面。


 int powNumb=5;

 int powValue=6;


for (int i = 1; i <= powValue; i++) {

            System.out.printf("%10d",i);

        }

        System.out.println();

        for (int i = 1; i <= powNumb; i++) {

            for (int j = 0; j <=powValue; j++) {

                System.out.printf("%10.0f",Math.pow(i, j));

            }

        }


慕森卡
浏览 142回答 3
3回答

汪汪一只猫

这应该可以帮助你for (int i = 1; i <= powNumb; i++) {&nbsp; &nbsp; System.out.printf("%10d", i); //Print the number (1st col)&nbsp; &nbsp; for (int j = 0; j <= powValue; j++) { //This loop prints the powers of the curent number 'i'&nbsp; &nbsp; &nbsp; &nbsp; System.out.printf("%10.0f", Math.pow(i, j));&nbsp; &nbsp; }&nbsp; &nbsp; System.out.println(); //To end the current row}这打印num&nbsp; &nbsp;num^0&nbsp; num^1&nbsp; num^2 ... num^powValue其中 num 是从 1 到powNumb输出&nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp;2&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;4&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;8&nbsp; &nbsp; &nbsp; &nbsp; 16&nbsp; &nbsp; &nbsp; &nbsp; 32&nbsp; &nbsp; &nbsp; &nbsp; 64&nbsp;3&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;3&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;9&nbsp; &nbsp; &nbsp; &nbsp; 27&nbsp; &nbsp; &nbsp; &nbsp; 81&nbsp; &nbsp; &nbsp; &nbsp;243&nbsp; &nbsp; &nbsp; &nbsp;729&nbsp;4&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;4&nbsp; &nbsp; &nbsp; &nbsp; 16&nbsp; &nbsp; &nbsp; &nbsp; 64&nbsp; &nbsp; &nbsp; &nbsp;256&nbsp; &nbsp; &nbsp; 1024&nbsp; &nbsp; &nbsp; 4096&nbsp;5&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;5&nbsp; &nbsp; &nbsp; &nbsp; 25&nbsp; &nbsp; &nbsp; &nbsp;125&nbsp; &nbsp; &nbsp; &nbsp;625&nbsp; &nbsp; &nbsp; 3125&nbsp; &nbsp; &nbsp;15625

偶然的你

首先,您需要println在内部 for 循环中的某处声明来分隔行。其次,您需要将呼叫中的iand切换为. 因为按照当前的设置方式,每一行的值都是0 到 6 的幂。例如,第一行是. 然后,第二行将是 但是,您希望第一行是, second row等。所以您的代码应该更改为这样的内容,jMath.powi = row number1^0 1^1 1^2 1^3 1^4 1^5 1^62^0 2^1 2^2 2^3 2^4 2^5 2^61^0 2^0 3^0 4^0 5^01^1 2^1 3^1 4^1 5^1int powNumb=5;int powValue=6;for (int i = 1; i <= powNumb; i++) {&nbsp; &nbsp; System.out.printf("%10d",i);}for (int i = 0; i <= powValue; i++) {&nbsp; &nbsp; System.out.println();&nbsp; &nbsp; for (int j = 1; j <=powNumb; j++) {&nbsp; &nbsp; &nbsp; &nbsp; System.out.printf("%10.0f",Math.pow(j, i));&nbsp; &nbsp; }}输出:&nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;3&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;4&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;5&nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1&nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;3&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;4&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;5&nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;4&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;9&nbsp; &nbsp; &nbsp; &nbsp; 16&nbsp; &nbsp; &nbsp; &nbsp; 25&nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;8&nbsp; &nbsp; &nbsp; &nbsp; 27&nbsp; &nbsp; &nbsp; &nbsp; 64&nbsp; &nbsp; &nbsp; &nbsp;125&nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; 16&nbsp; &nbsp; &nbsp; &nbsp; 81&nbsp; &nbsp; &nbsp; &nbsp;256&nbsp; &nbsp; &nbsp; &nbsp;625&nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; 32&nbsp; &nbsp; &nbsp; &nbsp;243&nbsp; &nbsp; &nbsp; 1024&nbsp; &nbsp; &nbsp; 3125&nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; 64&nbsp; &nbsp; &nbsp; &nbsp;729&nbsp; &nbsp; &nbsp; 4096&nbsp; &nbsp; &nbsp;15625powNumb另外,我必须powValue在 for 循环条件下进行切换。

慕哥9229398

您的意思是每个元素的基数相同,因此不需要内部循环:for (int i = 1; i <= powNumb; i++) {&nbsp; &nbsp; System.out.printf("%10.0f", Math.pow(powValue, i));}这种方式的权力基础永远是powValue。
随时随地看视频慕课网APP

相关分类

Java
我要回答