Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 15, 2021 21:29:29

Witch
Зарегистрирован: 2021-09-15
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

for i in range. Вышивка крестиком

Добрый день Нужно написать программу, чтобы при вводе 6 получился вот такой рисунок



6
XXXXXX
XXXXX
XXXX
XXX
XX
X


Я написала следующее:
  
X = "X"
n = int(input())
space = " "
for i in range(0, n+1):
  print ( i * space, X*n)
  n -= 1
  i += 1

Компьютер не принимает, потому что в начале строчки образуется пробел
   6
XXXXXX
XXXXX
XXXX
XXX
XX
X




А как избавиться от этого пробела? Если убрать i * space, то пробел исчезает, но получается вот так:
6
XXXXXX
XXXXX
XXXX
XXX
XX
X
То есть, мне нужно эту фигуру как-то отразить по вертикали…


Отредактировано Witch (Сен. 16, 2021 11:01:02)

Офлайн

#2 Сен. 16, 2021 02:08:33

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9716
Репутация: +  842  -
Профиль   Отправить e-mail  

for i in range. Вышивка крестиком

Используй тег code, чтобы точно отображать код и вывод
Этот для кода на питоне

[code python] 
здесь код на питоне
[/code]
Этот для вывода
[code]
здесь текст вывода
[/code]

Witch
Добрый день Нужно написать программу, чтобы при вводе 6 получился вот такой рисунок
6
XXXXXX
XXXXX
XXXX
XXX
XX
X
  
>>> def f():
...     n = int(input())
...     for i in range(n, 0, -1):
...         print('X' * i)
... 
>>> f()
6
XXXXXX
XXXXX
XXXX
XXX
XX
X
>>>



Отредактировано py.user.next (Сен. 16, 2021 02:14:00)

Офлайн

#3 Сен. 16, 2021 10:57:37

Witch
Зарегистрирован: 2021-09-15
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

for i in range. Вышивка крестиком

py.user.next
Используй тег code, чтобы точно отображать код и вывод Этот для кода на питоне
Спасибо - не знала .Ну, вот теперь благодаря вашему совету, все правильно показывает)))). А то я замучилась вчера редактировать)) Никак рисунки нормально не отображались))
Ваш код, к сожалению тоже не подходит, потому что он тоже дает обратный рисунок)) Мне нужно его отражение по вертикали - чтобы крестики исчезали в начале строки, а не в конце. Потому я туда space и леплю))

Извините, это вчера из-за настроек форума рисунки неправильно печатались))

Отредактировано Witch (Сен. 16, 2021 11:09:21)

Офлайн

#4 Сен. 16, 2021 11:09:13

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

for i in range. Вышивка крестиком

 n=6
for i in range(n, 0, -1):
    print(str.rjust('X'*i, n))
>>>
XXXXXX
 XXXXX
  XXXX
   XXX
    XX
     X
>>> 



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Отредактировано PEHDOM (Сен. 16, 2021 11:11:11)

Офлайн

#5 Сен. 16, 2021 11:11:10

Witch
Зарегистрирован: 2021-09-15
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

for i in range. Вышивка крестиком

PEHDOM
Спасибо))) Ну, вот мне уже подсказали))

Офлайн

#6 Сен. 16, 2021 11:39:58

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9716
Репутация: +  842  -
Профиль   Отправить e-mail  

for i in range. Вышивка крестиком

  
>>> def f():
...     n = int(input())
...     for i in range(n, 0, -1):
...         print(' ' * (n - i) + 'X' * i)
... 
>>> f()
6
XXXXXX
 XXXXX
  XXXX
   XXX
    XX
     X
>>>



Отредактировано py.user.next (Сен. 16, 2021 11:41:35)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version