i = float (raw_input("Enter i"))
Pd = int (raw_input("Enter Pd"))
while True:
P1= (i-6.95)/(2*9.68*0.0001)
P2= (i-7.051)/(2*7.378*0.0001)
P3= (i-6.531)/(2*1.04*0.001)
e= Pd-P1-P2-P3
if e<=1 :
F1=9.68*0.0001*P1*P1 + 6.95*P1 + 749.55
F2=7.738*0.0001*P2*P2 + 7.051*P2 + 1285
F3=1.04*0.001*P3*P3 + 6.531*P3 + 1531
F= F1+F2+F3
print 'Total cost F is {0}\n'.format(F)
print P1
print P2
print P3
break
else :
i=i + 0.1(i)
我寫了一個簡單的while循環來計算電源需求和發電。引入電力需求Pd#和增量成本。我可以計算每個發電機輸出P1 P2和P3。有一個迭代需要#這是什麼時候Pd- P1 P2和P3的和應該小於1。關於while循環
當我通過輸入i = 8.5和pd = 2500運行它時,結果是800.619834711981.973434535,946.634615385。這意味着#這件事從來沒有迭代,因爲這三者的總和不是2500.
有人可以告訴我爲什麼不迭代,我的真正的循環有什麼問題。
這是什麼了:'I = I + 0.1(I)' - 0.1是一個浮點數,你不能把它作爲一個功能 – lenik 2013-03-24 04:03:35