#Top half of triangle
for rows in range (5):
for row in range (12):
print("-", end='')
print()
for row in range (5):
stars=0
while stars<=row:
print("*", end='')
stars=stars+1
print()
for row in range(5):
star=4
while star>=row:
print("*", end='')
star=star-1
print()
1631 次
2 に答える
3
shape1 = [12*'-' for i in range(5)] # segments of rectangle
shape2 = [i*'*' + (5-i)*' ' for i in range(1,5+1)] # segments of 1st triangle
shape3 = [(5-i)*' ' + i*'*' for i in range(1,5+1)] # segments of 2nd triangle
for line in zip(shape1, shape2, shape3):
print(" ".join(line))
EDIT:要求された冗長バージョン(ただし、ここにはpython 3がありません。次のコードはpython 2.xで機能するため、印刷手順を少しやり直す必要があります):
for line in range(1, 5+1): # for each line
for c in range (12): # print a bit of the first shape
print '-',
print " ",
for c in range (line) : # a bit of the second
print '*',
for c in range (5-line):
print ' ',
print " ",
for c in range (5+1-line): # and a bit of the third
print '*',
#for c in range (line):
# print ' ',
print
于 2010-04-02T04:26:35.753 に答える
0
まず第一に、最初の print ステートメントは構文的に間違っていprint("-", end='')
ます。 end='' とは何かを尋ねる構文エラーがスローされます。
それにもかかわらず、問題が改行にある場合は、print ステートメントの最後にコンマ (',') を付けて改行をスキップすることでいつでも修正できます。次に例を示します。
for i in range(5):
print "Hello, World!",
于 2010-04-02T04:28:56.973 に答える