我在下面有一些示例代码来打印Pascals Triangle。 (我在扫描仪上使用测试用例= 14)代码可以工作,但结果中有前导空格。如何删除三角形前面的这些空格?
import java.util.Scanner;
public class PascalsTriangle {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int rows = input.nextInt();
for(int i = 0;i<rows;i++) {
int pascal = 1;
System.out.format("%"+(rows-i)*2+"s","");)
for(int j=0;j<=i;j++) {
System.out.format("%4d", pascal);
pascal = pascal* (i - j) / (j + 1);
}
System.out.println();
}
}
}
答案 0 :(得分:0)
我认为正在发生的事情是你在4个字符串中输出你的数字&#39;这条线照看那部分;
String output = String.format("%4d", number);
以下内容会输出“&#39;”框左侧的数字。 - 虽然空白现在正在落后。
String output = String.format("%-4d", number);
这一切都取决于您将要使用的n的最大值。例如,您可以决定每个数字将占用4个字符(如果所有数字都是9999或更少 - 实际上,Pascal的三角形有20行,您需要至少5个字符)。然后,您需要调整在三角形的每一行中打印出的空格数。