最近学python自己找了点题目练手:
题目:边长为n的单位矩阵,画出矩形中最大菱形。n为奇数
源码:
num = int(input("请输入矩形边长:"))
n=y=1
m=int((num+1)/2)
for i in range(1,num+1):
while n<=num:
if (i==1)or(i==num):
print('#',end=' ')
elif (n==1 or n==num) and(i!=0 and i!=num):
print('#',end=' ')
elif (n==(m-(i-1))) or (n==(m+(i-1))):
print('#',end=' ')
elif (i>m)and((n==(i-m+1))or(n==(m+num-i))):
y+=1
print('#', end=' ')
else:
print(' ',end=' ')
n+=1
else:
n=1
print()
i+=1
运行结果: