用于在Python中创建直角三角形的嵌套循环代码

mefy6pfw  于 2022-11-21  发布在  Python
关注(0)|答案(9)|浏览(198)

教授给了我们一个执行正方形的简单代码,我们需要添加/更改代码以输出直角三角形,如下所示。这只是一个循环代码中的一个简单循环,但我无法找到任何关于用Python创建形状的提示或帮助,否则代码看起来非常混乱/困难。我需要一个简单的解释,说明我需要做什么以及为什么需要进行这些更改。
(在Python中创建直角三角形的嵌套循环代码)
执行平方的给定代码:

画正方形

size = input('Please enter the size: ')
chr  = raw_input('Please enter the drawing character: ')

row = 1
while row <= size:
    # Output a single row
    col = 1
    while col <= size:
        # Output a single character, the comma suppresses the newline output
        print chr, 
        col = col + 1

    # Output a newline to end the row
    print '' 

    row = row + 1
print ''

需要输出的形状.....

x 
x x 
x x x 
x x x x 
x x x x x 
x x x x x x 
x x x x x x x

再一次,这只是一个简单的代码解释,这是一个Python课程的介绍。

syqv5f0l

syqv5f0l1#

只需将while col <= size:更改为while col <= row:
这将打印出Xrow数量。
如果row1,则输出为:X轴
如果row2,则输出为:X X
如果row3,则输出为:X X X
如果row4,则输出为:X X X X

lg40wkob

lg40wkob2#

下面是一些代码:

size = int(raw_input("Enter the size: ")) #Instead of input, 
#convert it to integer!
char = raw_input("Enter the character to draw: ")
for i in range(1, size+1):
    print char*i #on the first iteration, prints 1 'x'
    #on the second iteration, prints 2 'x', and so on

结果:

>>> char = raw_input("Enter the character to draw: ")
Enter the character to draw: x
>>> size = int(raw_input("Enter the size: "))
Enter the size: 10
>>> for i in range(1, size+1):
        print char*i

x
xx
xxx
xxxx
xxxxx
xxxxxx
xxxxxxx
xxxxxxxx
xxxxxxxxx
xxxxxxxxxx

同样,避免在Python 2中使用input,因为它会计算作为 code 传递的字符串,这是不安全的,也是一种糟糕的做法。
希望这对你有帮助!

xfb7svmp

xfb7svmp3#

编码:

def triangle(i, t=0):
    if i == 0:
        return 0
    else:
        print ' ' * ( t + 1 ) + '*' * ( i * 2 - 1 )
        return triangle( i - 1, t + 1 )
triangle(5)

输出量:

* * * * * * * * *
   * * * * * * *
     * * * * *
       * * * 
         *
rqdpfwrv

rqdpfwrv4#

values = [0,1,2,3]
for j in values:
 for k in range (j):
  print "*",;
 print "*";

1.定义数组
1.开始第一个for循环,逐一初始化变量j中数组值
1.启动第二个(嵌套)for循环,以初始化变量k中变量j的ranje
1.结束第二个(嵌套的)for循环以打印 * as par初始化的j的范围赋值给k即如果范围是1则打印一个 *
1.结束第一个for循环,并打印 * 表示没有初始化的数组

gmxoilav

gmxoilav5#

for i in range(1,8):
    stars=""
    for star in range(1,i+1):
        stars+= " x"
    print(stars)

输出量:

x
x x
x x x
x x x x
x x x x x
x x x x x x
x x x x x x x
3vpjnl9f

3vpjnl9f6#

我刚在实验室拿到这个,想把我的解决方案贴出来

chrter = input('Input Character ', )
tri_height = int(input('Input Triangle Height ', ))

new_chrter = ''
for i in range(1, tri_height+ 1):
new_chrter += chrter + ' '
print(new_chrter)

5n0oy7gb

5n0oy7gb7#

def pattStar():
     print 'Enter no. of rows of pattern'
     noOfRows=input()
     for i in range(1,noOfRows+1):
             for j in range(i):
                     print'*',
             print''
yzxexxkh

yzxexxkh8#

for x in range(10,0,-1):
  print x*"*"

输出:

**********
*********
********
*******
******
*****
****
***
**
*
ej83mcc0

ej83mcc09#

您可以通过简单地使用以下代码来获得它:

size = input('Please enter the size: ')
chr  = raw_input('Please enter the drawing character: ')
i=0
str =''
while i< size:
        str = str +' '+ chr
        print str
        i=i+1

相关问题