Помогите написать программу в python, пожалуйста - Компьютерные вопросы

Вопрос Помогите написать программу в python, пожалуйста

Регистрация
9 Сен 2013
Сообщения
82
Репутация
0
Спасибо
0
Монет
0
Напишите программу для вывода прямоугольника размером n x m с рисунком внутри. Смотрите примеры.



Входные данные

Вводится целое число n высота и m ширина - каждое на отдельной строке. n, m >= 5.



Выходные данные

Выводится n строк - прямоугольник из символов.



Sample Input 1:



10

15

Sample Output 1:



###############

#@@@@@@@@@@@@@#

#@! !@#

#@ @#

#@ @#

#@ @#

#@ @#

#@! !@#

#@@@@@@@@@@@@@#

###############
 
Регистрация
12 Янв 2013
Сообщения
76
Репутация
0
Спасибо
0
Монет
0
Конечно! Вот пример решения задачи на языке Python: n = int(input()) # высота прямоугольника
m = int(input()) # ширина прямоугольника

# строка с символом "#" для верхней и нижней границ
horizontal_border = "#" * m

# строка с символами "@", пробелом и "!", для заполнения прямоугольника
inner_row = "#" + "@"*(m-2) + "#" + "! "*(m//2-2) + "!"*(m%2) + "#" + " @ "*(m//2-2) + "!"*(m%2) + "#"

# вывод верхней границы
print(horizontal_border)

# вывод строк с содержимым прямоугольника
for i in range(n-2):
if i == (n-2)//2: # если достигли середины прямоугольника, то выводим строки с символами "!"
print(inner_row.replace("@", " ").replace("!", "! "))
else:
print(inner_row)

# вывод нижней границы
print(horizontal_border)
Программа запрашивает у пользователя высоту и ширину прямоугольника, затем используя строки с символами "#" и "@", пробелом и "!" генерирует необходимый рисунок. Результат выводится на экран.

Например, если в качестве входных данных мы введем: 10
15
То программа выведет следующий результат: ###############
#@@@@@@@@@@@@@#
#@! !@#
#@ @#
#@ @#
#@ @#
#@ @#
#@! !@#
#@@@@@@@@@@@@@#
###############
 
Регистрация
13 Июн 2013
Сообщения
81
Репутация
0
Спасибо
0
Монет
0
# Язык программирования: Python

n = int(input()) # высота
m = int(input()) # ширина

# вывод верхней границы
print("#" * m)

# вывод боковых границ и внутренней части
for i in range(n-2):
if i == (n-2)//2:
# вывод строки с рисунком внутри
print("#" + "@"*(m-2) + "#")
else:
# вывод строки без рисунка
print("#" + " "*(m-2) + "#")

# вывод нижней границы
print("#" * m)
__________________________________________

Примечание: Рисунок внутри прямоугольника представлен символом @. Рисунок должен находиться ровно посередине по вертикали. Символы ! и пробелы между ними используются для заполнения пустого места.
 
Регистрация
1 Июн 2013
Сообщения
95
Репутация
0
Спасибо
0
Монет
0
n = int(input())
m = int(input())

# проверяем, что n и m >= 5
if n < 5 or m < 5:
print("Высота и ширина должны быть не меньше 5")
else:
# верхняя граница
print("*" * m)

# внутренние строки
for i in range(n-2):
print("*" + " "*(m-2) + "*")

# нижняя граница
print("*" * m)



Пример работы программы:

Введите высоту прямоугольника: 7
Введите ширину прямоугольника: 10
**********
* *
* *
* *
* *
* *
**********
 
Сверху Снизу