如何打印诸如ASCII艺术作品之类的层次字符?

时间:2019-07-16 01:09:06

标签: java

我想找到最好的打印方法。

我已经尝试使用五个println语句,但是我认为这不是最好的解决方法。所以我设法使用了两个循环,但是有没有办法只使用一个循环?

    import java.util.*;
    public class Solution {
        public static void main(String[] args){
            Scanner s = new Scanner(System.in);
            char c = s.next().charAt(0);
            for(int i = 1; i <= 5; i++){
                for (int j = 1; j <= 9; j++){
                    if ((i==1 && (j==1 || j==2 || j==3 || j==4 || j==6 || j==7 || j==8 || j==9)) || (i==2 &&(j==1 || j==2 || j==3 || j==7 || j==8 || j==9)) || (i==3 && (j==1 || j==2  || j==8 || j==9)) || (i==4 && (j==1 || j==9)))
                        System.out.print("+" + " ");
                    else if((i==1 && j==5) || (i==2 && (j==4 || j==5 || j==6)) || (i==3 && (j==3 || j==4 || j==5 || j==6 || j==7)) || (i==4 && (j==2 || j==3 || j==4 || j==5 || j==6 || j==7 || j==8)))
                        System.out.print(c + " ");
                    else
                        System.out.print(c + " ");
                }       System.out.println();
            }
        }
    }

    INPUT
    #
    OUTPUT
    ++++#++++
    +++###+++
    ++#####++
    +#######+
    #########

0 个答案:

没有答案