gpt4 book ai didi

python - 在金字塔内创建金字塔

转载 作者:太空宇宙 更新时间:2023-11-04 01:51:01 25 4
gpt4 key购买 nike

我有一个编程练习,我们必须创建一个程序,根据迷你三角形之一的给定高度(用户输入)在金字塔图形内生成金字塔。

我已经成功地创建了顶层金字塔,但是当涉及到后续层时我遇到了困难,金字塔变得不合适了。

这是我到目前为止一直在做的事情:

h = int(input())
for r in range (1, h+1):
for i in range(1,h+1):
if r == 1:
print (((" " * ((((h * 2) - 1) * h) - h - i + 1)) + ("*" * (i * 2 - 1)))*(r*2-1))
else:
print (((" " * ((((h * 2) - 1) * h) - h - i + 1 - (r*2-1))) + ("*" * (i * 2 - 1)))*(r*2-1))

这应该是 'h' 为 3 时的预期输出

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

但我得到的是这个:

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

最佳答案

这是您可以使用的函数。定义构成金字塔的各个组件有助于找出要使用的正确公式。

def pyramid(h = 1): 
pyr = ['']*h
base = 2*h - 1
for i in range(h):
pyr[i] = " " * (h-i-1) + "*"*(2*i+1) + " " * (h-i-1)
for i in range(h):
for j in range(h):
print(" " * base * (h-i-1) + pyr[j]*(2*i+1) + " " * base * (h-i-1))

示例 h = 4

>>> pyramid(4)
*
***
*****
*******
* * *
*** *** ***
***** ***** *****
*********************
* * * * *
*** *** *** *** ***
***** ***** ***** ***** *****
***********************************
* * * * * * *
*** *** *** *** *** *** ***
***** ***** ***** ***** ***** ***** *****
*************************************************

关于python - 在金字塔内创建金字塔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58041384/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com