Java使用for循环产生一系列数字

Dmi*_*riy 1 java eclipse acm-java-libraries

我正在尝试编写一组 for 循环,这些循环会产生以下一系列数字。我试图让我的循环在同一行上打印每个系列,每个术语之间有空格。我是 Java 新手,对如何完成它感到非常困惑。右侧是我增加计数的数字。

 1. 4  5  6  7  8  9  10                (+1)
 2. 6  5  4  3  2  1                    (-1)
 3. 2  4  6  8  10  12  14  16          (+2)  
 4. 19  17  15  13  11  9  7  5         (-2)
 5. 7  15  23  31  39                   (+8)
 6. 2  4  8  16  32  64                 (*2)
Run Code Online (Sandbox Code Playgroud)

这是我尝试完成它的方式的代码。我得到了第一行工作,但我想知道天气有一种简单的方法可以创建其余部分而无需重新复制程序。

import acm.program.*;

public class ppLoop extends ConsoleProgram {
    public void run()
    {
        {

        for(int row = 1; row < 2; row++)
        {
        print(" " + row + ". ");

        for (int col = 4; col < 11; col++)

            {
            print(row*col + " ");
            } //col values

            println( );
            } //row values

        }

    }
}
Run Code Online (Sandbox Code Playgroud)

我是 Java 新手,现在正在遍历 for 循环并尝试在 for 循环中完成此操作。如果有人可以帮助我,我将不胜感激。谢谢!编辑:这是当我增加行数时会发生什么。

在此处输入图片说明

编辑:这是我尝试完成的解决方案。感谢所有帮助过我的人。

import acm.program.*;
public class ppLoop extends ConsoleProgram
{
    public void run()
    {
        {
        for(int i = 1; i < 2; i++) // One iteration of outer loop
             {
               print(i + ". "); // print row number 1

                for (int j = 4; j < 11; j++) // loop for row 1   
                {
                   print(j + " ");
                } 
                println( );
                print((i + 1) + ". ");

                for (int j = 6; j > 0; j--) // loop for row 2
                {
                   print(j + " ");
                }
                println();
                print((i + 2) + ". ");

                for (int j = 2; j < 17; j = j + 2) // loop for row 3
                {
                   print(j + " ");
                }
                 println();
                print((i + 3) + ". ");

                for (int j = 19; j > 4; j = j - 2) // loop for row 4
                {
                  print(j + " ");
                }
                 println();
                print((i + 4) + ". ");

                for (int j = 7; j < 40; j = j + 8) // loop for row 5
                {
                  print(j + " ");
                }
                println();
                print((i + 5) + ". ");

                for (int j = 2; j < 65; j = j * 2) // loop for row 6
                {
                print(j + " ");
                }
                println();
             } 
        } //close outer loop
    } //close public run
} //close console program
Run Code Online (Sandbox Code Playgroud)

小智 5

您可以使用一系列嵌套循环来执行此程序。我已经完成了前三行。我拿出你的包裹,用了一个main方法。此外,您的缩进非常混乱。由于您的增量更改每一行,我不知道有什么方法可以使用 for 循环使其更短。

public class ppLoop{
   public static void main(String[] args)
   {
      {

         for(int i = 1; i < 2; i++) // One iteration of outer loop
         {
            System.out.print(i + ". "); // print row number

            // you can use the same variable for each inner loop    
            for (int j = 4; j < 11; j++) // loop for row 1   
            {
               System.out.print(j + " ");
            } 

            System.out.println( );
            System.out.print((i + 1) + ". ");
            for (int j = 6; j > 0; j--) // loop for row 2
            {
               System.out.print(j + " ");
            }

            System.out.println();
            System.out.print((i + 2) + ". ");
            for (int j = 2; j < 17; j = j + 2) // loop for row 3
            {
               System.out.print(j + " ");
            }
         } 
      }
   }
}
Run Code Online (Sandbox Code Playgroud)