题目:输出如图所示的图案。
网上复制的程序:
from sys import stdout
for i in range(4):
for j in range(2 - i + 1):
stdout.write(' ')
for k in range(2 * i + 1):
stdout.write('*')
print('')
for i in range(3):
for j in range(i + 1):
stdout.write(' ')
for k in range(4 - 2 * i + 1):
stdout.write('*')
print('')
在这个基础上,可以进行修改。
因为输出是向左靠齐的,所以可以根据每一行开始的空格数与行数的关系进行修改。
修改:
for i in range(4):
for j in range(3-i):
stdout.write(' ')
for k in range(2 * i + 1):
stdout.write('*')
print('')
输出:
第一行的输出有左边的空格数为3,因为python里序号从0开始,所是在第一个rang处是(3-i)。
每加一行,空格减少一个。
之后在通过stdout.write在空格后面写入 * 号。
* 号有(2i+1)个。
for循环,每结束一次,就用一个print进行换行。
from sys import stdout
for i in range(4):
for j in range(3-i):
stdout.write(' ')
for k in range(2 * i + 1):
stdout.write('*')
print('')
for i in range(3):
for j in range(i+1):
stdout.write(' ')
for k in range(2 * (2-i) + 1):
stdout.write('*')
print('')
输出:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)