简单图形的输出_Java语言程
3.5.4 简单图形的输出
【例3-26】 编程显示以下图形(共N行,N由键盘输入)。
程序运行结果:略。
分析与思考:(1)设N=5
第1行 4个空格=5-1 1个“*”=2*行号-1
第2行 3个空格=5-2 3个“*”=2*行号-1
第3行 2个空格=5-3 5个“*”=2*行号-1
第4行 1个空格=5-4 7个“*”=2*行号-1
第5行 0个空格=5-5 9个“*”=2*行号-1
由此归纳出:第i行的空格数N-i个;第i行的“*”数是2i-1个。
(2)打印图形的程序结构:
模仿例3-26:从键盘输入h值,输出h行用*号组成的菱形。例如,输入h=4,输出的图形如下:
提示:打印菱形图形的程序结构:
【例3-27】 打印数字魔方。要求:从键盘输入m,输出m行的数字方阵。例如,输入m=5,输出的图形如下:
程序运行结果:略。
分析与思考:(1)关键是要找到输出行Aij与行i和j的关系。
(2)第j行的第一个数字为j,之后依次递增,但以m为模:Aij=(i+j-2)%m+1。模仿例3-27:打印数字三角形。输入高h,输出如下图形:
提示:(1)第i行打印m-i+1个数字。
(2)若A1,1=1,则Ai+1,1=Ai,1+i(i≥1)。
(3)若已知Ai,1,则Ai,j+1=Ai,j+i+j(j≥1)。