编写一个"banner"函数,该函数的输入为大写字母
题目:编写一个"banner"函数,该函数的输入为大写字母,输出为一个字符数组,该数组以图像化的方式表示该字母。
《
编程
珠玑》上提到当要
输入
的
数据
很多,且没有
规律
时,
可以
考虑编写一个格式信函发生器(
for
m letter generator)用于
解析
格式信函
模板
(form letter schema)。将数据从
控制
层分离的好处在于:
避免每次针对不同的数据编写不同的代码;当需要改变一些公用文本的输出方式时,直接编辑模板即可,并不需要对数据进行修改。
题目要求:输入一个字母,输出一个字符数组,该数组要以图像的方式将该字母的大写打印出来。
对于26个字母,每个字母的外形并没有必然规律可循,最直接
的
方法
是编写26个函数,针对特定的字母编写特定的打印程序,这是个体力活,代码数量将非常巨大。
联想
上面的格式信函编程,可以考虑为字母的外形
设计
一个定制模板,自己规定一套模板编写的格式,然后写一个解析程序,每次打印字母时,只需解析字母对应的模板即可,这样主要的工作量就花在每个字母模板的编写上,当然模板的编写是相当简单的,将字母图形转化为相应的模板格式即可。例如: 一个字母可以利用length = 12, width = 9的矩阵来表示
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |