你好,你这个代码其中问题很多。注意到你的heavy_wayfact中的数据初始时全部为零。
# B7 [- k& a8 X$ t) D1 h4 k$ T- int s = duniform(1,7);
9 C2 L" O+ G l2 L3 d/ | - Table L_way = Table("heavy_way");
3 l& j- [ ^/ T$ X8 ? - Table L_factway = Table("heavy_wayfact"); ^9 G/ K1 x: m9 }, \) h n
- ! U$ T5 L. J) S+ B. g6 R/ ]' F
- int x = 0;
& N: y4 d! J1 E% ~ - int index =0;, ^. I3 B1 b" u
- double m = 0;) Y1 T) A6 ~8 P2 `+ q
- for(int i=1;i<L_way.numRows;i++)5 `6 Z0 ] ?! G0 i# H$ G' f
- {2 b; K: ]" H$ g
- double flowrate = L_way[i][s];
/ R4 v0 R0 R5 m - double lfact = L_factway[i][s]; // 每次你这样都是为0,因为你没改变过
* m4 O; B B4 g5 G- s9 C% _4 c4 a - if(flowrate!=0) // 找到非0值6 v" V. H6 h2 y( T1 E$ b% \0 B
- {
* }' k* f8 M/ G1 q - index++;
c( p2 I& [$ M3 \+ x) J. p - if(index==1) // 当找到第一个flowrate值不为09 q+ S) Y3 w" R8 \0 p3 S9 B4 ?$ N
- {
o( }( Y% ^0 Q, E9 M - x=i;
& c' e$ X# L) q+ Y4 k2 M4 z - m=lfact/flowrate; // m还是0,因为lfact始终为0! j Q2 t" }0 t/ y! V' P/ G& r8 T
- }+ w3 u" Y H6 q! |
- if(m>lfact/flowrate) // 所以这个条件始终是没用的
0 r- \/ `0 P( o- s' M3 P - {
/ E% i. Z w9 D, a6 C- A0 f' F - x=i;
3 k- R+ ?! Q; x+ b( A$ e - m=lfact/flowrate;* ~9 M9 c6 [* B" D2 j/ n% B @
- }
$ S1 s9 K: P( t8 ^" O# S - }
( |. U. @. S! }% M/ w - }
复制代码 |