好难,虽然输出结果差不多qwq
查看原帖
好难,虽然输出结果差不多qwq
749028
QAQ5楼主2024/7/24 09:29
def isEven(num):
    if num % 2 == 0:
        return True
    else:
        return False
class midStarRow:
    rowLen = 5
    def __init__(self,midStarNum:int):
        if midStarNum >= midStarRow.rowLen:
            result = '*'*midStarRow.rowLen
        else:
            if isEven(midStarRow.rowLen):
                if isEven(midStarNum):
                    mid = '*'*midStarNum
                    wing = ' '*(int((midStarRow.rowLen - midStarNum) / 2))
                    result = wing + mid + wing
                else:
                    midStarNum -= 1
                    if midStarNum == 0:
                        result = ''
                    else:
                        mid = '*'*midStarNum
                        wing = ' '*(int((midStarRow.rowLen - midStarNum) / 2))
                        result = wing + mid + wing
            else:
                if isEven(midStarNum):
                    mid = '*'*int(midStarNum / 2) + ' ' + '*'*int(midStarNum / 2)
                    wing = ' '*int((midStarRow.rowLen - (midStarNum + 1)) / 2)
                    result = wing + mid + wing
                else:
                    mid = '*'*midStarNum
                    wing = ' '*int((midStarRow.rowLen - midStarNum) / 2)
                    result = wing + mid + wing
        self.mySelf = result

row1 = midStarRow(1)
row2 = midStarRow(3)
row3 = midStarRow(4)
row4 = midStarRow(3)
rowEnd = midStarRow(1)
print(row1.mySelf)
print(row2.mySelf)
print(row3.mySelf)
print(row4.mySelf)
print(rowEnd.mySelf)
2024/7/24 09:29
加载中...