Java嵌套用于循环打印输出

时间:2015-11-01 23:32:26

标签: java for-loop nested

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

2 个答案:

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