Форум сайта python.su
0
Ребят, я только начинаю осваивать Питон, подскажите пожалуйста
Не понимаю по какому принципу, когда меняешь местами инструкции в циклах, меняются и полученные значения.
Например:
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
Отредактировано AlexSSpirit (Июнь 9, 2012 16:43:06)
Офлайн
4
Смотрите внимательно блок. В первом случае вы сперва находите F, выводите значения, потом делаете новое С. Во втором случае делаете С, перед выводом значений.
Офлайн
0
F=1.8*C+32
print (C,F)
C=dC+C #Без этой С, цикл бесконечно выводит одни и те же значения, но какие функции выполняет эта инструкция, и почему она ставится ниже print (C,F)?
Офлайн
4
AlexSSpiritВсе потому, что значение С в этом случае не меняется и всегда будет равно -20, а блок инструкции while будет выполнятся пока выражение С<=40 истинно. (то есть пока С не станет больше 40 будет бесконечный цикл)
C=dC+C #Без этой С, цикл бесконечно выводит одни и те же значения
Офлайн
0
Видимо не правильно обьясняю вещь, которую хочу понять.
Почему при:
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
?
Офлайн
568
AlexSSpiritГде в этом коде отступы?
print ('————-')
C=-20
dC=5
while C<=40:
F=1.8*C+32
print (C,F)
C=dC+C #
Офлайн
0
AlexSSpirit
Видимо не правильно обьясняю вещь, которую хочу понять.
Почему при:
F=1.8*C+32
C=dC+C
print (C,F)
Результат заканчивается на 45 104.0
Ведь, в условии написано C<=40
Офлайн