Java金字塔显示
所以这可能是一个愚蠢的问题,但是如何改变金字塔显示的方式呢?我知道为了得到这样的东西:Java金字塔显示,java,Java,所以这可能是一个愚蠢的问题,但是如何改变金字塔显示的方式呢?我知道为了得到这样的东西: 111111 11111 1111 111 11 1 你写 for(int i=1;i<=n;i++) { for(int j=i;j<n;j++) { System.out.print(" "+ n)} 非常简单:只要看看规则“1”和空格是如何在行中分布的。金字塔的高度:h行n:由h-n空格和n“1”s组成。只要将这些规
111111
11111
1111
111
11
1
你写
for(int i=1;i<=n;i++)
{
for(int j=i;j<n;j++)
{
System.out.print(" "+ n)}
非常简单:只要看看规则“1”和空格是如何在行中分布的。金字塔的高度:
h
行n
:由h-n
空格和n
“1”s组成。只要将这些规则转换成代码,它就应该能够工作
int n = 5;
for (int i = 0; i <= n; i++) {
System.out.println();
for (int j = i; j < n; j++) {
System.out.print(" " + n);
}
}
但那太乱了。它有两个循环。因此,让我们这样做:
String value = " 55555";
for (int i = 0; i < 5; i++) {
System.out.println(value.substring(i, i + 5));
}
只要确保
值字符串中有足够的空格,以便正确地生成子字符串。实际上,您发布的代码没有给出第一个结果。如果您尝试查看google或其他stackoverflow问题,请检查。看看这个。试着做一些修改,玩一玩。或者检查一下,您的第二个版本不会产生OP所需要的相同输出。请注意对齐。:)布莱,我会修好的。一秒钟,这是一种方法。另一种方法是在打印字符之前先打印n个空格。@Trobbins我知道,但我太懒了,没有做空格版本。此外,您还必须记住在打印空格后打印正确数量的字符。
static void staircase(int n) {
//int n = scanner.nextInt();
int size = n;
for (int i = 0; i <= size-1; i++){
for(int j = 5; j > i; j--){
System.out.print(" ");
}
for(int j = 0; j <= i; j++){
System.out.print("#");
}
System.out.println();
}
String value = " 55555";
for (int i = 0; i < 5; i++) {
System.out.println(value.substring(i, i + 5));
}
5
55
555
5555
55555
static void staircase(int n) {
//int n = scanner.nextInt();
int size = n;
for (int i = 0; i <= size-1; i++){
for(int j = 5; j > i; j--){
System.out.print(" ");
}
for(int j = 0; j <= i; j++){
System.out.print("#");
}
System.out.println();
}
#
##
###
####
#####
######