gpt4 book ai didi

java - 用循环完成三角形

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:29:26 24 4
gpt4 key购买 nike

我正在尝试在 Java 中创建一个看起来像这样的带有循环的右三角形:

     +
/|
/ |
/ |
/ |
+----+

程序需要将 args 作为 int 来确定三角形每条边的大小。到目前为止,这是我的代码:

public static void main(String[] args) {
int x = Integer.parseInt(args[0]);
for (int i = 0; i <= x; i++) {
for (int j = x; j >= i; j--) {
System.out.print(" ");
}
System.out.println("/");
}

System.out.print("+");
for (int j = 0; j < x; j++) {
System.out.print("-");
}
System.out.print("+");
}

目前的结果是这样的

     /
/
/
/
+---+

那么我该如何处理呢?我尝试了一些 for 循环的组合,但到目前为止,它经常打印出一团乱七八糟的形状,而不是实际的三角形。

最佳答案

您快完成了:在打印 '/' 的嵌套循环中,将 println 替换为 print。添加第二个循环,打印 x-j 空格,然后打印 |。最后,在进入第一个循环之前添加一条语句打印+。就是这样!

要优化您的代码,请考虑编写辅助方法:

void printN(String str, int numTimes) {
// Prints numTimes copies of str
}

这样您就可以将多个循环“混入”到单个 printN 调用中。例如,

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

会变成

printN(" ", x-i);

关于java - 用循环完成三角形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16453675/

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