AlexSSpirit
Июнь 9, 2012 16:23:45
Ребят, я только начинаю осваивать Питон, подскажите пожалуйста
Не понимаю по какому принципу, когда меняешь местами инструкции в циклах, меняются и полученные значения.
Например:
print ('————-')
C=-20
dC=5
while C<=40:
F=1.8*C+32
print (C,F)
C=dC+C #Без этой С, цикл бесконечно выводит одни и те же значения, но какие функции выполняет эта инструкция, и почему она ставится ниже print (C,F)?
print ('————-')
-20 -4.0
-15 5.0
-10 14.0
-5 23.0
0 32.0
5 41.0
10 50.0
15 59.0
20 68.0
25 77.0
30 86.0
35 95.0
40 104.0
print ('————-')
C=-20
dC=5
while C<=40:
F=1.8*C+32
C=dC+C
print (C,F)
print ('————-')
-15 -4.0
-10 5.0
-5 14.0
0 23.0
5 32.0
10 41.0
15 50.0
20 59.0
25 68.0
30 77.0
35 86.0
40 95.0
45 104.0
Romiss
Июнь 9, 2012 16:36:17
Смотрите внимательно блок. В первом случае вы сперва находите F, выводите значения, потом делаете новое С. Во втором случае делаете С, перед выводом значений.
AlexSSpirit
Июнь 9, 2012 16:45:48
F=1.8*C+32
print (C,F)
C=dC+C #Без этой С, цикл бесконечно выводит одни и те же значения, но какие функции выполняет эта инструкция, и почему она ставится ниже print (C,F)?
Romiss
Июнь 9, 2012 16:54:25
AlexSSpirit
C=dC+C #Без этой С, цикл бесконечно выводит одни и те же значения
Все потому, что значение С в этом случае не меняется и всегда будет равно -20, а блок инструкции while будет выполнятся пока выражение С<=40 истинно. (то есть пока С не станет больше 40 будет бесконечный цикл)
AlexSSpirit
Июнь 9, 2012 18:02:54
Видимо не правильно обьясняю вещь, которую хочу понять.
Почему при:
F=1.8*C+32
C=dC+C
print (C,F)
Результат заканчивается на 45 104.0
Ведь, в условии написано C<=40
И если хочешь например чтобы цикл рузльтат начинался, со вбитого значения
C=-20
То получается обязательно порядок инструкций должен быть таковой:
F=1.8*C+32
print (C,F)
C=dC+C
?
FishHook
Июнь 11, 2012 20:50:47
AlexSSpirit
print ('————-')
C=-20
dC=5
while C<=40:
F=1.8*C+32
print (C,F)
C=dC+C #
Где в этом коде отступы?
Предположим, это мой код, а не Ваш, Вы сможете это понять? Я не способен.
tibs
Июнь 12, 2012 21:10:47
AlexSSpirit
Видимо не правильно обьясняю вещь, которую хочу понять.
Почему при:
F=1.8*C+32
C=dC+C
print (C,F)
Результат заканчивается на 45 104.0
Ведь, в условии написано C<=40
С=40 и он заходит в цикл. Потом ты увеличиваешь на dc и после этого печатаешь C, которое уже стало 45.