pycharm用线性代数的方式打印空心三角形

先看结果:
pycharm用线性代数的方式打印空心三角形_第1张图片
再看代码:

kg=[' ']
xh=['*']
for i in range(1,6):
    for j in range(0,5-i):
        print(kg[0],end='')
    print('*',end='')
    for n in range(0,int(2*i-3+(1-(i-1.5)*((i-1.5)**2)**(1/2)/(i-1.5)** 2)/2)):
        if i==5:
            kg[0]=xh[0]
        print(kg[0], end='')
    if i!=1:
        print('*',end='')
    print()

原理:

大部分人看不懂

在这里插入图片描述
(csdn打星号会默认注释,所以汉字代替)
这是个什么,这行代码其实是an=0,1,3,5,7数列的推导式,用线性代数推导
先定义两个列表,一个是存一个空格,另一个存"星号",第一行第五行比较特殊,第一行只有一个“星号”,所以 if i!=1,不然会在第一行打印两个星号,最后一行需要把带有星号的列表赋值给带空格的字符串,这样最后一行也就全部变成了星号,中间按数列打印空格
所以,线性代数这门数学工具也要好好学

你可能感兴趣的:(pycharm用线性代数的方式打印空心三角形)