Python 关于while-true循环 i=float(原始输入(“输入i”)) Pd=int(原始输入(“输入Pd”)) 尽管如此: 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 如果e
在第一次迭代中,e的值是-229.22788463,那么您就打破了循环 从Python文档中:Python 关于while-true循环 i=float(原始输入(“输入i”)) Pd=int(原始输入(“输入Pd”)) 尽管如此: 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 如果e,python,loops,while-loop,iteration,Python,Loops,While Loop,Iteration,在第一次迭代中,e的值是-229.22788463,那么您就打破了循环 从Python文档中: break语句与C中的语句一样,从for或while循环中的最小包围圈中分离出来 根据你的问题: 需要一个迭代#当Pd为P1 P2和P3之和时,应小于1 我想你应该通过以下公式计算e: i = float (raw_input("Enter i")) Pd = int (raw_input("Enter Pd")) while True: P1= (i-6.95)/(2*9.68*0.000
break
语句与C中的语句一样,从for
或while
循环中的最小包围圈中分离出来
根据你的问题:
需要一个迭代#当Pd为P1 P2和P3之和时,应小于1
我想你应该通过以下公式计算e:
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)
不过还不清楚。也许你只是想让你的if语句:
e = Pd - (P1 + P2 + P3)
如果(P1+P2+P3)
这是干什么用的:i=i+0.1(i)
--0.1是一个浮点数,你不能把它当作函数调用喂,它不工作。答案仍然是800.619834711981.973434535946.634615385。显然,把它们加在一起是不够的
if (P1 + P2 + P3) < Pd: