繁体   English   中英

颠倒的星号三角形

[英]Reverse upside-down asterisk triangle

我正在尝试使用嵌套的for循环向用户询问整数,然后程序将输出一个倒置的倒置三角形,其底数带有星号,然后逐渐减小。 应该看起来像这样:

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

我有的代码:

def pattern():
  integer = requestInteger("Please enter a number")
  for number in range(0, integer):
    for variable in range(integer, 0, -1):
      if variable - 1 > number:
        sys.stdout.write(' ')
      else:
        sys.stdout.write('*')
  sys.stdout.write('\n')

输出此:

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

我不太确定如何更改我的for循环来完成这项工作,并且我已经尝试了一段时间,因此非常感谢您的帮助。

我的看法是这样的:

def pattern():
    integer = int(raw_input("Please enter a number"))
    for number in range(0, integer):
        print " " * number + "*" * (integer - number)

这是家庭作业吗(嵌套循环是必需的)? 提示: *运算符可以很容易地用for循环替换。

您可以使用reversed range

u=int(raw_input('Number:'))
for i in reversed(range(1,u)):
    print ' '*(u-i),'*'*i

我知道这是一个很漫长的时间,但是我想分享我对这个问题的看法。

def pattern(size):
    for i in reversed(range(1, size+1)):
        print("*" * i)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM