2014-10-01 62 views
-6

我的输出是:如何去除两个三角形之间的空间?

55555 
4444 
    333 
    22 
    1 

    22 
    333 
4444 
55555 

PLZ帮我这个代码(我该如何移除两个三角形之间的空间?)

public class series { 
    public static void main (String args[]){ 
    Scanner in=new Scanner(System.in); 
    int n=in.nextInt(); 
    if((n>=1 && n<=9)){ 
    for(int i=0;i<=n;i++){ 
    //spacing logic 
     for(int s=0; s < i; s++){ 
      System.out.print(" "); 
     } 
     //main logic: loop1 
     for(int j=n ; j > i; j--){ 
      System.out.print(n-i); 
     } 
     System.out.println(); 
     } 
     for(int i=2;i<=n;i++){ 
     //spacing logic 
     for(int s=n;s>i;s--){ 
      System.out.print(" "); 
     } 
     //main logic: loop2 
     for(int j=1;j<=i;j++){ 
      System.out.print(i); 
     } 
     System.out.println(); 
     } 
    } 
    else{ 
     System.out.println("Invalid Input"); 
    } 
    } 
} 
+6

有点格式化的功夫,可能是? – njzk2 2014-10-01 20:26:20

+0

@fvu你能不能提交未完成的编辑?它迫使我们那些试图正确地缩进代码的人打包并重新开始。 – Rainbolt 2014-10-01 20:33:54

回答

1

在第一个for循环。不要把我< = n,但我<ñ和空间将消失。试图找出自己为什么这是。

正确格式化(也删除了输入扫描仪行)。

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

     int n=5; 
     if((n>=1 && n<=9)){ 
      for(int i=0;i<n;i++){ 
       //spacing logic 
       for(int s=0; s < i; s++){ 
        System.out.print(" "); 
       } 
       //main logic: loop1 
       for(int j=n ; j > i; j--){ 
        System.out.print(n-i); 
       } 
       System.out.println(); 
      } 

      for(int i=2;i<=n;i++){ 
       //spacing logic 
       for(int s=n;s>i;s--){ 
        System.out.print(" "); 
       } 
       //main logic: loop2 
       for(int j=1;j<=i;j++){ 
        System.out.print(i); 
       } 
       System.out.println(); 
      } 
     } else{ 
      System.out.println("Invalid Input"); 
     } 
    } 
} 
+0

谢谢你....这是一个很大的帮助 – VBQ 2014-10-02 17:22:10

相关问题