2015-11-01 173 views
1

我是一个初学java的人,需要帮助编写这个嵌套for循环。这是所需的输出。Java嵌套for循环打印出

2  3  5 
5  10  26 
11 31  131 
23 94  656 

据我所知,增量是第一个数字+ 1 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(); 
    } 
} 
+1

您好,欢迎SO。如果你有一个特定的问题,这将有所帮助 - 你到目前为止尝试过什么,你看到了哪些错误? –

+1

我明白如何创建循环,但我无法弄清楚如何获得增量权利打印它和跨。 –

+1

可以请你分享一下你的代码..这样我们可以帮到你 – RamPrakash

回答

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(); 
    } 
} 
+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);; 

}