java - 帕斯卡三角形正确格式化java

标签 java formatting pascals-triangle

所以我目前正在做一项我似乎无法完成的作业。好吧,我已经完成了一切,但想要额外的学分。我一直在网上浏览,但似乎无法真正找到我正在寻找的内容。

public class PascalTester
{
  public static void main(String[] args)
  {
    Scanner kb = new Scanner(System.in);

    System.out.println("Welcome to the Pascal's Triangle program!");
    System.out.println("Please enter the size of the triangle you want");

    int size = kb.nextInt();

    int[][] myArray = new int[size][size];

    myArray = fillArray(myArray); 

    //myArray = calculateArray(myArray);

    printArray(myArray); //prints the array

}

private static int[][] fillArray(int[][] array)
{
    array[0][1] = 1;

    for (int i = 1; i < array.length; i++)
    {
        for (int j = 1; j < array[i].length; j++)
        {
            array[i][j] = array[i-1][j-1] + array[i-1][j];
        }
    }

    return array;
}

private static void printArray(int[][] array)
{
    for (int i = 0; i < array.length; i++)
    {
        for (int j = 0; j < array[i].length; j++)
        {
            if(array[i][j] != 0)
            System.out.print(array[i][j] + " ");
        }
        System.out.println();
    }

}

}

我现在遇到的唯一问题是正确设置输出格式,使其看起来像实际的三角形。此时任何建议都会非常有帮助。提前致谢

最佳答案

解决此问题的一种方法是,假设所有数字都格式化为相同的宽度,则将该问题视为使行居中的问题。

Java 编码留给读者作为练习,但本质上是:

for lineText : triange lines 
   leadingSpacesCount = (80/2) - lineText.length(); 
   print " " x leadingSpacesCount + lineText

关于java - 帕斯卡三角形正确格式化java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14371775/

相关文章:

recursion - Scheme中的尾递归帕斯卡三角形

java-每隔一段时间调用一个函数

java - Android AsyncTask,处理不可用的服务器

java - 比较输入文件列表中的数字

java - 帮助 : Java web app framework like ASP. 网络

python - 帕斯卡三角形通过递归

html - 在 Rails 中,如何在文本区域中允许一些 html?

c# - 如果语句突然被 Visual Studio 2010 在下一行格式化

Excel - 可变长度数字中前导零的数量可变?

C++ 帕斯卡三角形