题目描述
根据输入的四个参数:a,b,c,f 参数,画出对应的矩形。
前两个参数a,b 为整数,依次代表矩形的高和宽;
第三个参数c 是一个字符,表示用来填充的矩形符号;
第四个参数f 为整数,0 代表空心,否则代表实心。
具体例子请见样例。
输入
第一行:a,b,c,f。
输出
一个矩形。
样例输入1
7 7 @ 0
样例输出1
@@@@@@@
@ @
@ @
@ @
@ @
@ @
@@@@@@@
提示
3≤a≤100。
5≤b≤100。
c 是一个可见的字符。
0≤f≤100。
来源/分类
每日一题 循环结构
完整代码如下:
a,b,c,d=map(str,input().split())
if int(d)==0:
for i in range(int(b)):
print(c,end="")
space=' '
e=int(b)-2
f=int(b)-4
print('\n{}{}{}'.format(c,space*e,c))
for j in range(int(a)-3):
print(c,space*f,c)
for k in range(int(b)):
print(c,end="")
else:
for l in range(int(b)):
print(c,end="")
space=c
print('\n{}'.format(space*int(b)))
for m in range(int(a)-3):
print(space*int(b))
for n in range(int(b)):
print(c,end="")
代码解释:
”a,b,c,d=map(str,input().split()) “,让用户输入a,b,c,d四个参数,并将其转换为字符串。
“if int(d)==0:
for i in range(int(b)):
print(c,end="")
space=' '
e=int(b)-2
f=int(b)-4
print('\n{}{}{}'.format(c,space*e,c))
for j in range(int(a)-3):
print(c,space*f,c)
for k in range(int(b)):
print(c,end="") “,判断d是否为0,如果是,则先打印一行长度为b,单元为c的字符串。然后换行,打印一个字符c,空e个空格(设置space=’ ‘,space*1即为一个空格),再接着打印一一个字符串(这样第二行首尾都为字符c,而中间为空格)。
循环第二行的格式a-3次。循环结束后,打印一行与第一行相同的字符串,即为最后一行。
”else:
for l in range(int(b)):
print(c,end="")
space=c
print('\n{}'.format(space*int(b)))
for m in range(int(a)-3):
print(space*int(b))
for n in range(int(b)):
print(c,end="") “,如果d不为0,则先打印一行长度为b,单元为c的字符串。然后换行,打印一行与第一行相同的字符串。循环第二行的格式a-3次。循环结束后,打印一行与第一行相同的字符串,即为最后一行。
运行效果展示:
(声明:以上内容均为原创)