【问题标题】:How to print number in triangle pattern using java如何使用java以三角形图案打印数字
【发布时间】:2017-03-21 08:13:22
【问题描述】:

我正在尝试打印如下所示的数字模式

条件是当用户输入 6 时只显示前三行,如果用户输入 3 则只显示前两行。

class Star 
{
    public static void main(String[] args) 
    {
        int i,  j;
        for(i=1; i<=6; i++)
        {
            for(j=1; j<i; j++)
            {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}
1
3 2
6 5 4
10 9 8 7

提前致谢:)

【问题讨论】:

  • 请阅读How to Ask 并在下次适当地格式化您的问题。
  • 如果用户输入5,程序应该怎么做?
  • 如果要打印数字,为什么要打印代码*?您尝试为自己实际执行此作业是什么?因为该代码来自不同的作业,所以您似乎是在要求我们为您完成作业。
  • Manish,我建议你阅读:An open letter to students with homework problems.
  • 抱歉发帖不当。实际上我是新来的@Pang,如果用户输入 5,那么前三行也应该显示。我正在为自己绑定这个作业。

标签: java eclipse


【解决方案1】:

我创造了这样的东西:

/**
 * Created by maciej.brzozowski.83@gmail.com on 2017-04-02.
 */
class Star
{
    public static void main(String[] args)
    {
        int userValue = 6;
        int counter = 1;

        for(int i=1; i<=userValue; i++)
        {
            for(int j=1; j<i; j++)
            {
                System.out.print(counter-j+" ");
            }
            System.out.println();
            counter +=i;
        }
    }
}

输出模式是:

1 
3 2 
6 5 4 
10 9 8 7 
15 14 13 12 11 

我已经更改了一点您的代码 - 我添加了“计数器”,对我来说,这是实现您想要的最简单的方法。 对我来说你也应该换行

i<=userValue

i<=userValue+1

因为用户想要打印 6 行但在您的代码中只打印 5

所有的 cmets 都是用 BrokenEnglish 写的 :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多