小编stu*_*der的帖子

在Java中查找同时包含三角形数字和星号的数字

这是我被分配的问题:

所谓的"星号"s是由下式定义的数:s = 6n(n-1)+ 1其中n是星号的索引.因此,前六个(即n = 1,2,3,4,5和6)星号是:1,13,37,73,121,181

相反,所谓的"三角形数"t是从1到n的数字之和:t = 1 + 2 + ... +(n-1)+ n.因此,前六个(即n = 1,2,3,4,5和6)三角形数字为:1,3,6,10,15,21

编写一个Java应用程序,该应用程序生成int类型的所有值的列表,这些值都是星号和三角形号.

解决此问题时,您必须编写并使用至少一个函数(例如isTriangeNumber()isStarNumber()determineTriangeNumber()determineStarNumber()).此外,您必须只使用此处提供的公式来解决问题.

tl; dr:需要输出星号和三角数的值.

不幸的是,我只能得到结果在无限循环中输出值'1',即使我在while循环中递增1.

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

    int n=1;            
    int starNumber = starNumber(n);
    int triangleNumber = triangleNumber(n);

    while ((starNumber<Integer.MAX_VALUE)&&(n<=Integer.MAX_VALUE))
    {
        if ((starNumber==triangleNumber)&& (starNumber<Integer.MAX_VALUE))
                {
                    System.out.println(starNumber);
                }
        n++;
    }
  }


public static int starNumber( int n)
{
    int starNumber;
    starNumber= (((6*n)*(n-1))+1);
    return starNumber;

}
public static int …
Run Code Online (Sandbox Code Playgroud)

java methods while-loop

2
推荐指数
1
解决办法
3209
查看次数

标签 统计

java ×1

methods ×1

while-loop ×1