双体系项目部寒假部分作业(一)

(选做题)问题描述。利用字母可以组成一些美丽的图形,下面给出了一个例子:

ABCDEFG

BABCDEF

CBABCDE

DCBABCD

EDCBABC

这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。

输入格式:输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。


package com.stx.p5;

import java.util.Arrays;
import java.util.Scanner;

/**
 * @Author HanLin
 * @Date 2021/2/10 14:54
 * @Version 1.0
 */

public class test05 {
    /*
     * 我们先把样式代码换成 数字看看
     * ABCDEFG   1234567 第一行 1 234567
     * BABCDEF   2123456 第二行 21 23456
     * CBABCDE   3212345 第三行 321 2345
     * DCBABCD   4321234 第四行 4321 234
     * EDCBABC   5432123 第五行 54321 23
     *
     * 换成数字就很快找到了规律,因为A 的ASCLL是65 那么我们只需要把开头数据改成65就可以了
     * */
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String str = scanner.nextLine();
        String[] ints = str.split(" ");

        System.out.println("收到的数据:" + Arrays.toString(ints));
        //收到数据后 直接 嵌套循环来一波
        //j为行数
        for (int j = 1; j <= Integer.parseInt(ints[0]); j++) { //输出左半 ASCll从 65开始 for (int m = (64 + j); m >= 65; m--) {
                System.out.print((char) m);
            }
            //输出右边 ASCll从 66开始
            for (int k = 1; k <= (Integer.parseInt(ints[1] )- j); k++) {
                System.out.print((char) (k + 65));
            }
            System.out.print("\n");
        }
    }
}
点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注