Форум сайта python.su
Если это квадрат из текстовых исмволов ‘*’ в консоли, то код таков
Вот функция, где единственный аргумент n - длина стороны квадрата
def kvadrat(n):
s = ‘*’*n + ‘\n’ + ('*' + ‘ ’*(n-2) + ‘*’ + ‘\n’)*(n-2) + ‘*’*n
return s
А юзать следующим образом:
print kvadrat(10)
Офлайн
у меня на экране так примерно
def kvadrat(n):
s = ‘*’*n + ‘\n’ + ('*' + ‘ ’*(n-2) + ‘*’ + ‘\n’)*(n//3) + ‘*’*n
return s
Офлайн
даже так:
def kvadrat(n):
s = '*'*n + '\n' + ('*' + ' '*(n-2) + '*' + '\n')*(int(n/2.5)) + '*'*n
return s
Офлайн
Поскольку, действительно, на разных экранах такое будет по разному (и в зависимости от настроек), так что я поставил своей целью считать длину стороны в количестве звездочек, а не в единицах длины… По-моему, главное принцип…=)
Офлайн
да я не спорю))
Офлайн
izekia
В связи с таким подходом у меня возникает вопрос, можно ли как-то програмно вычислить этот коэффициент, чтоб максимально реальный квадрат получить (не подбирая вручную) ?
Отредактировано (Июль 28, 2008 18:31:47)
Офлайн
По отношению ширины символа/высоты строки.
PS: ребята, не ведитесь на женские имена типа Настя/Катя. В многих случаях это ленивый студент **ческого факультета у которого проблема с лабами. Этакий психологический ход.
Я уже не говорю, что могло бы хватить мозгов нормально и человеческим языком формулировать просьбу и не где попало.
Отредактировано (Июль 28, 2008 18:44:47)
Офлайн
Да ладно, это все повод для разминки ума. %)
import time
import turtle
import math
def zvezda5():
razmer = 20
turtle.up()
turtle.forward((razmer/2)/(math.sin(36)))
turtle.right(-18)
turtle.down()
for x in xrange(5):
turtle.forward(razmer)
turtle.right(144)
turtle.up()
turtle.right(198)
turtle.forward((razmer/2)*math.sin(36))
turtle.right(180)
turtle.speed('fast')
turtle.degrees()
turtle.up()
turtle.left(90)
for x in xrange(4):
for x in xrange(5):
turtle.forward(25)
turtle.left(90*x)
zvezda5()
turtle.right(90*x)
turtle.right(90)
time.sleep(15)
Отредактировано (Июль 28, 2008 18:48:24)
Офлайн
Супер решение!!
Жаль отвалилась рейтинговая система - некуда плюсик поставить :)
Офлайн
офигенно…..
Офлайн