Java 蓝桥杯 字母图形

题目描述

利用字母可以组成一些美丽的图形,下面给出了一个例子:

ABCDEFG

BABCDEF

CBABCDE

DCBABCD

EDCBABC

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

输入
输入描述:
输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。
输入样例:
5 7

输出

输出描述:
输出n行,每个m个字符,为你的图形。
输出样例:
ABCDEFG
BABCDEF
CBABCDE
DCBABCD
EDCBABC

解题思路

因为是找规律的题,它又给了数字,我们就可以把字母换成他们对应的ASCII码值,就像这样:
97 98 99 100 101 102 103
98 97 98 99 100 101 102
99 98 97 98 99 100 101
100 99 98 97 98 99 100
101 100 99 98 97 98 99
可以发现它们的值就是它们所在行和列差的绝对值+A的ASCII值 接下啦就是两个for循环的事情啦。

代码

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int m = scanner.nextInt();
        int n = scanner.nextInt();
        for (int i = 0; i < m; i++) { //行循环
            for (int j = 0; j< n; j++) { //列循环
                char x = (char)(Math.abs(i - j) + 'A'); //单个字母的值
                System.out.print(x);
            }
            System.out.println();//每输入完一行 换行
        }
    }
}

流程图

Created with Raphaël 2.3.0 开始 定义m,n来接收行和列的值 定义i=0 定义j=0 i<m i累加 j<n 计算每个位置的ASCII码值并转化为字母 并输出 换行 j累加 结束 yes no yes no
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

future furuer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值