2015-06-05 3 views
0

Я новичок в Python. Я с трудом разрешающую мою проблему:Вложенные циклы «Для» в Python: Заказ T

Использование вложенной для петель, распечатайте прямоугольный треугольник символа T на экран, где треугольник является один символ в ширину в самом узком месте и семи символов в ширину в самом широком месте:

T 
TTT 
TTTT 
TTTTT 
TTTTTT 
TTTTTTT 

и

 T 
    TT 
    TTT 
    TTTT 
    TTTTT 
TTTTTT 
TTTTTTT 

Любая идея?

+3

Попробуйте сделать свою домашнюю работу самостоятельно первым. Если у вас возникнут вопросы, ваш учебник, учитель, одноклассники и Google будут рады помочь. Если они не могут помочь (они могут), спросите SO. – TigerhawkT3

+0

Огромное спасибо :) – JamesCornel

+0

Английский не мой первый язык. И я здесь новый. Я надеюсь, что сообщество поможет мне улучшить мои знания в области английского языка и моих программных навыков. – JamesCornel

ответ

4

Я не буду писать код для вас, но я могу дать вам несколько советов:

  • вложенных циклов означает цикл внутри другого цикла, в этом случае одна петля для переборе последовательных строк, то второй является печать символов в каждой строке
  • второй пример нужен такой же, как первый, но вы также должны проверить индекс внутреннего контура и решить, следует ли печатать пробел или символ «T»
+0

спасибо за ваш совет;) – JamesCornel

0

Я надеюсь, что вы уже получили ответ :)

шаблон # 1

def triangle(n): 
    for i in range(1, n +1): 
     print ('T' * i).rjust(n, ' ') 

triangle(7) 

##Results >>> 

     T 
    TT 
    TTT 
    TTTT 
    TTTTT 
TTTTTT 
TTTTTTT 

шаблон # 2

def triangle1(n): 
    for i in range(1, n +1): 
     print ('T' * i) 

triangle1(7) 

# Results >>>> 
T 
TTT 
TTTT 
TTTTT 
TTTTTT 
TTTTTTT 

поколения шаблон, используя только для циклов

Здесь я попытался генерировать с помощь только для циклов и будет очень обобщенным способом. Целенаправленно я не использовал никаких доступных функций, поэтому вы всегда можете оптимизировать его.

Pattern # 1

def triangle(n): 
    # Iterate through number of columns 
    for i in range(1, n +1): 
     s = "" 
     # Iterate through number of rows 
     for j in list(range(i)): 
      s += "T" 
     print s 

triangle(7) 

Pattern # 2

def triangle1(n): 
    # Iterate through number of columns 
    for i in range(1, n +1): 
     s = "" 
     # Iterate through number of rows 
     for j in list(range(i)): 
      blank = "" 
      # Generate 'blank spaces' 
      for k in (range(n - i)): 
       blank += " " 
      # Generate 'T' 
      s += "T" 
     print blank + s 

triangle1(7) 
+0

Вы можете получить эти результаты, используя вложенные петли, а также - чтобы вы были хорошим упражнением для вас. :) –

+0

@JamesCornel - Код примера работает для вас? –

+0

это работа :) спасибо вам большое :) – JamesCornel

Смежные вопросы