B:字母塔

B:字母塔

(输入文件: B.in 输出文件: estdout. pc2)
小明刚开始学习程序设计,这几天对输出各种各样的字符图形产生了浓厚的兴趣。他现
               A
             BAB
          CBABC
        DCBABCD
      EDCBABCDE
   FEDCBABCDEF
GFEDCBABCDEFG
在想输出如下图所示的1~26层中任何种层数字母塔:

输入数据:

输入数据有多组,每组一个整数t表示想输出的字母塔层数。

输出数据:

对应每组输入数据,判断n值是否满足n∈[1, 26],如果满足输出对应字母塔,否则输
出层数错误信息: The value of 1 is error!.并重新输入n值。

样例输入:

3
28
9

样例输出:

    A
  BAB
CBABC
The value of n is error!
                 A
               BAB
            CBABC
         DCBABCD
       EDCBABCDE
      FEDCBABCDEF
   GFEDCBABCDEFG
 HGFEDCBABCDEFGH
IHGFEDCBABCDEFGHI


Java代码

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		int n;

		Scanner input = new Scanner(System.in);
		while(true) {
			try {
				n = input.nextInt();
				if(n>=1 && n <= 26) {
					show(n);
				}else {
					System.out.println("The value of n is error!");
				}
			} catch (Exception e) {
				break;
			}
		}




	}

	private static void show(int n) {
		for(int i = 0; i < n; i++) {

			for(int j = 0; j < n-i-1; j++) {
				System.out.print(" ");
			}
			for(int j = 0; j <= i; j++) {
				System.out.print((char)('A'+i-j));
			}

			for(int j = 0; j < i; j++) {
				System.out.print((char)('A'+j+1));
			}
			System.out.println();
		}

	}

}

猜你喜欢

转载自blog.csdn.net/qq_40794973/article/details/83821670