Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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_Increment - Fatal编程技术网

Java 基于用户输入的具有增量值的循环

Java 基于用户输入的具有增量值的循环,java,loops,increment,Java,Loops,Increment,我有一项任务是关于基于用户输入的循环中的增量值 任务是在控制台中生成以下行 * ** *** **** ***** 行数由用户输入决定。也就是说,如果用户输入2,它会给出以下输出: * ** 我目前的代码是: import static javax.swing.JOptionPane.*; public class loop1 { public static void main(String[] args){ int current_line = 0;

我有一项任务是关于基于用户输入的循环中的增量值

任务是在控制台中生成以下行

*
**
***
****
*****
行数由用户输入决定。也就是说,如果用户输入2,它会给出以下输出:

*
**
我目前的代码是:

import static javax.swing.JOptionPane.*;
public class loop1 {
    public static void main(String[] args){
        int current_line = 0;
        String input_line = showInputDialog("type here ");
        int target_line = Integer.parseInt(input_line);
        while (current_line != target_line){
            String sign = "*";
            System.out.println(sign);
            current_line ++;
        }
    }
}

但我似乎无法让星号(*)的数量在每次运行时都增加。如何实现这一点?

这里实际上需要两个循环,但只有一个。您有一个
while
循环来打印星号,但您还需要一个循环来增加每次打印的星号数

某些伪代码可能如下所示:

For (int i = 1 to whatever value the user entered):
    For (int j = 1 to i):
        Print an asterisk
int numLines = Integer.parseInt(showInputDialog("type here "));
for(int numAsterisks = 0; numAsterisks < numLines; numAsterisks++) {
    for(int i = 0; i < numAsterisks; i++) {
        System.out.print("*");
    }
    System.out.println(); // Start a new line
}
实际代码如下所示:

For (int i = 1 to whatever value the user entered):
    For (int j = 1 to i):
        Print an asterisk
int numLines = Integer.parseInt(showInputDialog("type here "));
for(int numAsterisks = 0; numAsterisks < numLines; numAsterisks++) {
    for(int i = 0; i < numAsterisks; i++) {
        System.out.print("*");
    }
    System.out.println(); // Start a new line
}
int numLines=Integer.parseInt(showInputDialog(“在此处键入”);
对于(int-numAsterisks=0;numAsterisks
这里实际上需要两个循环,但只有一个。您有一个
while
循环来打印星号,但您还需要一个循环来增加每次打印的星号数

某些伪代码可能如下所示:

For (int i = 1 to whatever value the user entered):
    For (int j = 1 to i):
        Print an asterisk
int numLines = Integer.parseInt(showInputDialog("type here "));
for(int numAsterisks = 0; numAsterisks < numLines; numAsterisks++) {
    for(int i = 0; i < numAsterisks; i++) {
        System.out.print("*");
    }
    System.out.println(); // Start a new line
}
实际代码如下所示:

For (int i = 1 to whatever value the user entered):
    For (int j = 1 to i):
        Print an asterisk
int numLines = Integer.parseInt(showInputDialog("type here "));
for(int numAsterisks = 0; numAsterisks < numLines; numAsterisks++) {
    for(int i = 0; i < numAsterisks; i++) {
        System.out.print("*");
    }
    System.out.println(); // Start a new line
}
int numLines=Integer.parseInt(showInputDialog(“在此处键入”);
对于(int-numAsterisks=0;numAsterisks
您需要一个嵌套循环。外部循环的每次迭代(即您已经拥有的循环)将打印一行,内部循环的每次迭代将为当前行打印一个星号。

您需要一个嵌套循环。外部循环的每次迭代(即您已经拥有的循环)将打印一行,内部循环的每次迭代将为当前行打印一个星号。

您可以通过使用嵌套for循环使其更简单。将循环修改为:

for (int i=0;i<target_line;i++) {
    for (int j=0;j<=i;j++) {
        System.out.print("*");
    }
    System.out.println();
}

for(int i=0;i您可以通过使用嵌套for循环使其更简单。将您的循环修改为:

for (int i=0;i<target_line;i++) {
    for (int j=0;j<=i;j++) {
        System.out.print("*");
    }
    System.out.println();
}

for(int i=0;i每次打印一个'*'-符号。
您不一定需要两个循环。您可以将符号放在循环之外,并且可以在每次迭代中使用string.concat(“*”)添加一个星号。串联实际上意味着将两个字符串合并为一个字符串,因此您可以将上一次迭代中的符号与新符号合并

int current_line = 0;
String input_line = showInputDialog("type here ");
int target_line = Integer.parseInt(input_line);
String sign = "*";
while (current_line != target_line){
    sign.concat("*");
    System.out.println(sign);
    current_line ++;
}

每次打印一个“*”-签名。 您不一定需要两个循环。您可以将符号放在循环之外,并且可以在每次迭代中使用string.concat(“*”)添加一个星号。串联实际上意味着将两个字符串合并为一个字符串,因此您可以将上一次迭代中的符号与新符号合并

int current_line = 0;
String input_line = showInputDialog("type here ");
int target_line = Integer.parseInt(input_line);
String sign = "*";
while (current_line != target_line){
    sign.concat("*");
    System.out.println(sign);
    current_line ++;
}

(在这个问题中,从(;;)
循环的
开始会更容易。)我真的建议看一下这就是我要使用的。(在这个问题中,从(;;)
循环的
开始会更容易。)我真的建议看一下这就是我要使用的。