Как решить задачу про пингвинов?

Всем привет)
Начал изучение Python в Coursera и столкнулся с задачей про пингвинов. В теории про начало изучение языка все понятно, но вот задача поставлена таким образом, что мне теорию не применить на практике.
Собственно вот суть задачи:
Напишите программу, которая по данному числу N от 1 до 9 выводит на экран N пингвинов. Изображение одного пингвина имеет размер 5×9 символов, между двумя соседними пингвинами также имеется пустой (из пробелов) столбец. Разрешается вывести пустой столбец после последнего пингвина. Для упрощения рисования скопируйте пингвина из примера в среду разработки
Формат ввода
Вводится натуральное число.
Формат вывода
Выведите ответ на задачу.
Примечания
Учтите, что вывод данных на экран производится построчно, а не попингвинно.
Не забудьте, что для вывода бекслеша надо написать два бекслеша подряд.
Тест 1
Входные данные:
3

Вывод программы:
_~_ _~_ _~_
(o o) (o o) (o o)
/ V \ / V \ / V \
/( _ )\ /( _ )\ /( _ )\
^^ ^^ ^^ ^^ ^^ ^^

Тест 2
Входные данные:
1

Вывод программы:
_~_
(o o)
/ V \
/( _ )\
^^ ^^

Спасибо, только начал что-то понимать, а тут ступор, а останавливаться не хочу.
  • Вопрос задан
  • 25412 просмотров
Пригласить эксперта
Ответы на вопрос 5
AnnTHony
@AnnTHony
Интроверт
linux = ('_~_', '(o o)', '/ V \\', '/( _ )\\', '^^ ^^')
linux_count = 5
for part in linux:
    print('  '.join(['{0:^7s}'.format(part)] * linux_count))
Ответ написан
@trofimovdev
Python
linux = ('_~_', '(o o)', '/ V \\', '/( _ )\\', '^^ ^^')
linux_count = int(input())
for part in linux:
    print('  '.join(['{0:^7s}'.format(part)] * linux_count))


P.S.: Модифицировал решение Антона.
Ответ написан
Комментировать
@jupyter
Такой ответ не катит?
number_of_penguins = input()  # не меньше 1 и не больше 9
print('   _~_    ' * int(number_of_penguins))
print('  (o o)   ' * int(number_of_penguins))
print(' /  V  \\  ' * int(number_of_penguins))
print('/(  _  )\\ ' * int(number_of_penguins))
print('  ^^ ^^   ' * int(number_of_penguins))

5c8c6d8023c52072966237.jpeg
Ответ написан
@rudenkodigital
Я тоже только начал этот курс, и вот такое решение подобрал. Правда оно туповатое.
a= '   _~_     '
b= '  (o o)    '
c= ' /  V  \   '
c1='/(  _  )\  '
c2='  ^^ ^^    '
d= int(input())
print(a*d)
print(b*d)
print(c*d)
print(c1*d)
print(c2*d)
Ответ написан
@gyladti
Я прошел этот курс недавно, что хочу сказать материал объясняют более менее нормально, но вот с проверкой решений на курсе большая беда, вы можете решить задачу у себя, а проверка покажет обратное в баллах из 100. И попробуй догадаться в чем ошибка, pep8 это или слишком долгий скрипт, а иной раз задачи скопированы наполовину и не объясняется как должен происходить ввод или вывод данных. Противоречивые чувства от курса, даже не знаю советовать ли вам продолжать его.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы