Python3实现打印任意宽度的菱形代码

时间:2021-05-22

我就废话不多说了,还是直接看代码吧!

width = 11 #注意宽度必须位奇数for i in range(-width//2,width//2+1): prespace=i if i>0 else -i print(' '*prespace+'*'*(width-prespace*2))

运行结果:

* *** ***** ******* ******************** ********* ******* ***** *** *

补充知识:Python打印高度为2 * n + 1,宽度为 2 * n + 1的菱形,输出一个由'*'组成的菱形,空白的地方用'.'表示。

很感谢百度和各类的问答平台,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()

以上这篇Python3实现打印任意宽度的菱形代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章