我是java的初学者,需要帮助编写这个嵌套for循环。这是期望的输出。
2 3 5
5 10 26
11 31 131
23 94 656
我知道增量是第一个数字+ 2的2倍,但我不明白如何为它创建循环。
public static void main(String[] args) {
for(int i = 2; i <= 5; i++) {
for(int j = i; j <= i; j++) {
System.out.print(j+(i*j));
}
System.out.println();
}
}
答案 0 :(得分:2)
问题是如此简单它包含两个东西读取模式并在java中使用适当的循环语句来实现这一点。打印它们是另一项并不困难的任务 @Jonathan您的模式是正确的,但您的算法不正确。 我没有给你完美的解决方案,但你必须使用适当的循环语句来提高效率。我在这里给你一个想法,这样你就可以这样思考......希望你能得到它。
public static void main(String[] args) {
/* 2 3 5
5 10 26
11 31 131
23 94 656
*/
int two = 2;
int three = 3;
int five = 5;
int i=0;
//use do-while to print 2 3 5
do{
System.out.println(two +" "+ three +" "+five);
two=two*2+1; // apply math pattern
three= three*3+1;
five= five*5+1;
i++;
}while(i<4);;
}
答案 1 :(得分:0)
请尝试以下代码(我已经测试了代码,输出与您的完全相同):
public static void main(String args[]) {
int[][] results = new int[4][3];
results[0][0] = 2;
results[0][1] = 3;
results[0][2] = 5;
for (int i = 1; i < results.length; i++) {
for (int j = 0; j < results[0].length; j++) {
results[i][j] = results[i - 1][j] * results[0][j] + 1;
}
}
for (int i = 0; i < results.length; i++) {
for (int j = 0; j < results[0].length; j++) {
System.out.print(results[i][j] + "\t");
}
System.out.println();
}
}