gpt4 book ai didi

java - 如何用 Java 将这张数字表打印到控制台?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:37:29 25 4
gpt4 key购买 nike

要求一个自然数n,我想以这种格式打印到控制台:

                1
2 1
3 2 1
4 3 2 1
5 4 3 2 1
.
.
.
n . . . 5 4 3 2 1

输入 4,这是我目前所拥有的:

    1
21
321
4321

我想在数字之间添加一个空格。这是我的代码:

import java.util.Scanner;
public class PatternTwo {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int userInput;
System.out.println("Please enter a number 1...9 : ");
userInput = in.nextInt();
String s="";
int temp = userInput;
for(int i=1; i<=userInput; i++ ) {

for (int k= userInput; k>=i; k-- ) {
System.out.printf(" ");
}

for(int j =i; j>=1; j-- ) {
System.out.print(j);
}


System.out.println("");
}

}

}

最佳答案

在要打印的数字前面加一个空格,并将上面的空格加倍,这样就不是金字塔了。像这样:

import java.util.Scanner;
public class PatternTwo {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int userInput;
System.out.println("Please enter a number 1...9 : ");
userInput = in.nextInt();
String s="";
int temp = userInput;
for(int i=1; i<=userInput; i++ ) {

for (int k= userInput; k>i; k-- ) { // <- corrected condition
System.out.printf(" ");
}

for(int j = i; j>=1; j-- ) {
System.out.print(j);

// check if not 1 to avoid a trailing space
if (j != 1) {
System.out.print(" ");
}
}


System.out.println("");
}

}

}

编辑

感谢/u/shash678我更正了我的解决方案以删除所有不必要或错误的空格

关于java - 如何用 Java 将这张数字表打印到控制台?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55182916/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com