fork download
  1. import random
  2.  
  3. def draw_cool_tree(height):
  4. # Символы для украшений
  5. ornaments = ['o', '@', '*', '*', '*'] # Звездочек больше, чтобы игрушки были реже
  6.  
  7. # 1. Звезда на макушке
  8. print(' ' * (height - 1) + 'W')
  9.  
  10. # 2. Крона с украшениями
  11. for i in range(2, height + 1):
  12. spaces = ' ' * (height - i)
  13.  
  14. # Генерируем ряд иголок с украшениями
  15. row = ""
  16. for _ in range(2 * i - 1):
  17. # Шанс 20%, что вместо иголки будет игрушка
  18. if random.random() < 0.2:
  19. row += random.choice(['o', '@', '0'])
  20. else:
  21. row += '^' # Используем ^ вместо * для эффекта хвои
  22.  
  23. # Добавляем немного "снега" по бокам
  24. left_snow = '*' if random.random() < 0.1 else ' '
  25. right_snow = '*' if random.random() < 0.1 else ' '
  26.  
  27. print(left_snow + spaces + row + spaces + right_snow)
  28.  
  29. # 3. Мощный ствол
  30. for _ in range(2):
  31. print(' ' * (height - 2) + "|_|_|")
  32.  
  33. # Запуск: сделаем елку побольше
  34. draw_cool_tree(15)
Success #stdin #stdout 0.15s 14264KB
stdin
Standard input is empty
stdout
              W
              ^@^              
             @^^o^            *
            @^o^^o^            
           ^^^^^^^@^           
          o^^^^@^^^^^          
         ^^@@o@^^^^^^^         
*       ^^^^^^^^^^^^^^^        
*      ^^^^^^^^^^^^^^^^^       
      ^^^^^^@^^^0^^^^^^^0      
     ^^^^o^^^^^^^^^^^@^^^^     
    ^^00o^^^^^^^^o^^@^^^^^^    
   0^o^0^@^^0^^^^00^^^^^0^^^   
  ^^^^^^^^^^o0^^^@^^^^o^^^^^^  
 o^^^^@^^^^^^^@^^^^^^^^^^@@^o^ 
             |_|_|
             |_|_|