Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 嵌套循环-第三个循环?_Java_Loops_Nested - Fatal编程技术网

Java 嵌套循环-第三个循环?

Java 嵌套循环-第三个循环?,java,loops,nested,Java,Loops,Nested,编写一个程序,在屏幕上打印以下内容: 1 2 3 4 5 6 7 8 9 10 2 3 4 5 6 7 8 9 10 3 4 5 6 7 8 9 10 4 5 6 7 8 9 10 5 6 7 8 9 10 6 7 8 9 10 7 8 9 10 8 9 10 我在纠正嵌套循环时遇到了一点问题-我必须让它看起来像这样,但是数字不会在10处停止。代码将打印以下内容: 1 2 3 4 5 6 7 8 9 10 2 3 4 5 6 7 8 9 10 11 3 4 5 6

编写一个程序,在屏幕上打印以下内容:

1 2 3 4 5 6 7 8 9 10

2 3 4 5 6 7 8 9 10 

3 4 5 6 7 8 9 10 

4 5 6 7 8 9 10 

5 6 7 8 9 10 

6 7 8 9 10 

7 8 9 10 

8 9 10
我在纠正嵌套循环时遇到了一点问题-我必须让它看起来像这样,但是数字不会在10处停止。代码将打印以下内容:

1 2 3 4 5 6 7 8 9 10

2 3 4 5 6 7 8 9 10 11

3 4 5 6 7 8 9 10 11 12

4 5 6 7 8 9 10 11 12 13

5 6 7 8 9 10 11 12 13 14

6 7 8 9 10 11 12 13 14 15

7 8 9 10 11 12 13 14 15 16

8 9 10 11 12 13 14 15 16 17
我是一个初学者程序员,需要这方面的帮助-您是否已经需要嵌套循环中的第三个循环?感谢您的帮助!以下是我目前的代码:

import java.util.Scanner;

public class LoopProgram
{
    public static void main(String args [])
    {
        for (int e=0; e<8; e++)
        {
            for (int f=1; f<=10; f++)
            {
                System.out.print(f + e + " ");
            }   
            System.out.println(); 
        }
    }
}
import java.util.Scanner;
公营课程
{
公共静态void main(字符串参数[])
{

对于(int e=0;e请在第二个循环中尝试:

for(int f=e;f<=10;f++)
两个循环就足够了

外部循环运行了八次,你已经开始工作了

但是,您的内部循环总是运行10次,这不是您想要的。您希望内部循环先运行10次,然后仅运行9次,然后仅运行8次等。这里的技巧是更改该内部循环的开始或结束值,如下所示:

for (int e=0;e<8;e++) {
    for (int f=e+1; f<=10; f++) {
        ...
    } 
}

for(int e=0;e我想这就是你要找的

for(int e=1;e<9;e++) {
    for(int f=e;f<=10;f++) {
        System.out.print(f+" ");
    }
    System.out.println();
}

for(int e=1;e3个循环是严重的过度杀伤力。这可以用一个循环和两个计数器来完成

public class LoopProgram {
  static final int LIMIT_1 = 8;
  static final int LIMIT_2 = 10;

  public static void main(String[] args) {
    int a = 1, b = 2;
    while(b <= (LIMIT_1 + 1)) {
      System.out.print(a);
      if(a < LIMIT_2) {
        System.out.print(" ");
        a++;
      } else {
        System.out.println();
        a = b;
        b++;
      }
    }
  }
}
公共类循环程序{
静态最终整数限值_1=8;
静态最终整数极限_2=10;
公共静态void main(字符串[]args){
INTA=1,b=2;
而(b您只需要两个循环:
外部计数器将运行八次,内部计数器将从外部计数器的值开始运行(这使得每行计数最多为10,但始终从最后一行+1的第一个值开始),并在计数器小于10时运行

诸如此类:

for (int i = 0; i < 8; i++) {
    for (int e = i; e < 10; e++) {
        //print e + 1
    } 
}
for(int i=0;i<8;i++){
对于(int e=i;e<10;e++){
//打印e+1
} 
}

您必须打印e+1,这样您的行就不会从0开始,而是从1开始,一直到10。

这更多的是解释如何为您自己解决这类问题。在for循环的最常见情况下,您应该问自己关于索引变量的三个问题:

  • 我希望它具有的第一个值是什么
  • 在什么条件下,我想进行另一次迭代
  • 它应该如何从一个迭代到另一个迭代
  • 对于您的内部循环,答案如下:

  • e

  • 下面是我应该怎么做的

    for (int i = 1; i <= 8; i++) {
            for (int j = i; j <= 10; j++) 
                System.out.print(j + " ");
            System.out.println();
    }
    

    用于(int i=1;i为什么您需要第三个循环?这会给您带来什么好处?还有,为什么您要在循环中添加
    f
    e
    ?这毫无意义。数字不会停止,因为您正在打印
    f+e
    ,这将上升到
    17
    ,因为
    e
    循环中的最大数字是
    7
    a对于
    f
    的nd是
    10
    …你只需要在你的内部循环中设置
    f=e
    ,然后只打印
    f
    。那么你就可以开始了。如果我在f+e的加法中去掉e,它会在10处停止,但会丢失它所取的增量。就像它这样打印:1234568910(x8)…我还没来得及写出一个恰当的提示,就有五个人给出了答案。加油,伙计们。哦,我现在明白了!谢谢!
    for (int i = 1; i <= 8; i++) {
            for (int j = i; j <= 10; j++) 
                System.out.print(j + " ");
            System.out.println();
    }