Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 20, 2009 17:11:41

ilalexey
От:
Зарегистрирован: 2009-02-20
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

нужно зациклить код

Подскажите пожалуйста, как сделать цикл.
Я не силён в програминге – из того что знаю хватило только на это.
Нужен цикл. “while” или еще чего – не в курсе, с помощью чего это решается.
В данной проге я должен ввести известные значение dd, L4 и L5.
У меня имеется приблизительное значение DO – ввожу его во второй строчке.
В 12строчке получаю новое значение DO.
Надо взять то, что получилось в 12 строчке и вставить во вторую строчку. Опять просчитать. Делать это необходимо до тех пор, пока значения в 2 и 12 строчках не станет одинаковым.

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

from math import *
DO=55.9957974644 ##строчка 2
print “old DO =”,DO
L4=30.280
L5=36.775
dd=7
def main(DO):
AP=acos(DO/(2*L5))
AS=acos(DO/(2*L4))
APS=AP-AS
dDO=((tan(AP)-tan(AS)-dd/DO)/APS-1)*DO
DO=DO+dDO ##строчка 12
print “new DO =”,DO
print “dDO =”,dDO
main(DO)

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



Офлайн

#2 Фев. 20, 2009 17:30:12

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

нужно зациклить код

Используй тег
И чуть чуть пояснее опиши задачу, а то лень считать строки в коде.



Офлайн

#3 Фев. 20, 2009 17:47:36

ilalexey
От:
Зарегистрирован: 2009-02-20
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

нужно зациклить код

from math import *
DO=55.9
print "old DO =",DO
L4=30.280
L5=36.775
dd=7
def main(DO):
AP=acos(DO/(2*L5))
AS=acos(DO/(2*L4))
APS=AP-AS
dDO=((tan(AP)-tan(AS)-dd/DO)/APS-1)*DO
DO=DO+dDO
print "new DO =",DO
print "dDO =",dDO
main(DO)
Результат выглядит сейчас так:
old DO = 55.9
new DO = 55.9961223367
dDO = 0.0961223366778

дальше я копирую вручную значение “new DO” и вставляю в вторую строчку.
Надо, чтобы это происходило циклом и останавливалось когда значения олд и нью равны,
т.е. в данном случае это 55.9957974644=55.9957974644



Офлайн

#4 Фев. 20, 2009 17:50:24

ilalexey
От:
Зарегистрирован: 2009-02-20
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

нужно зациклить код

п.с.: что-то не понял как нумерацию строк высветить..



Офлайн

#5 Фев. 20, 2009 17:55:53

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

нужно зациклить код

a=0
b=20
def do():
global b
b-=1
while a<>b:
do()
тип того? Уж извини, готового решения твоей задачи давать не буду…



Отредактировано (Фев. 20, 2009 17:57:58)

Офлайн

#6 Фев. 20, 2009 18:01:21

ilalexey
От:
Зарегистрирован: 2009-02-20
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

нужно зациклить код

может и оно - попробую разобраться.
спасибо большое и на том!



Офлайн

#7 Фев. 20, 2009 18:02:50

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

нужно зациклить код

Самое главное, поими логику работы примера, а там уж…



Офлайн

#8 Фев. 20, 2009 18:10:39

ilalexey
От:
Зарегистрирован: 2009-02-20
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

нужно зациклить код

так вот да.. ещёбы не плохо и язык знать чуть больше..
Отец инженер на пенсии досих пор на калькуляторе щитает - решил блин помочь)



Офлайн

#9 Фев. 20, 2009 18:44:30

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

нужно зациклить код

За пару недель возможно освоишься :)



Офлайн

#10 Фев. 20, 2009 21:36:32

ilalexey
От:
Зарегистрирован: 2009-02-20
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

нужно зациклить код

)
за пару лет ещё не освоился..
вы хорошего мнения обо мне



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version