很感谢百度和各类的问答平台,CSDN在其中占得多数的,帮我解决了一道又一道的难题,所以我来报恩来了。分享我做过的题,得到的知识点,希望可以帮助到在代码世界里苦苦挣扎又不能放弃的同类人。
今天分享我昨天做过的一道题,折磨我两天,但是大佬只用了两分钟。说实在的,还是读书太少。
1.给出一个n,请小明帮忙打印高度为2 * n + 1,宽度为 2 * n + 1的菱形。每次输入一个整型n(1 <= n <= 30)。输出一个由’*‘组成的菱形,空白的地方用’.'表示。
大佬讲用线性规划,控制直角坐标法。
如图:
n=int(input(""))
for i in range(2*n+1):
for j in range(2*n+1):
if i<=j+n and i>=j-n and i<=3*n-j and i>=n-j:
print("*",end="")
else:
print(".",end="")
print()
2.给出一个n,打印4个边长为n的等腰直角三角形,分别分布在(2 * n + 1) * (2 * n + 1) 的正方形的四个角落
每次输入一个整型n(1 <= n <= 30)。输出一个由’.‘组成的菱形,空白的地方用’*'表示。
for i in range(2*n+1):
for j in range(2*n+1):
if i<=j+n and i>=j-n and i<=3*n-j and i>=n-j:
print(".",end="")
else:
print("*",end="")
print()