你好,你这个代码其中问题很多。注意到你的heavy_wayfact中的数据初始时全部为零。
2 x ?" v! q' D) @1 L$ w- int s = duniform(1,7);
' d' r: b" }3 @1 N/ Y; |% Y" z6 W - Table L_way = Table("heavy_way");" N: X8 ~) R2 \3 d* R3 Z
- Table L_factway = Table("heavy_wayfact");+ e% T* s7 }% e# h
5 ]) K3 _" g. Q, c" V0 F- int x = 0;9 G- s- G$ I& I4 s% i; }
- int index =0;
) ?$ v8 l$ C5 |* ?' M$ S - double m = 0;
+ g4 P! V5 H" v. q' P; [9 x- x a - for(int i=1;i<L_way.numRows;i++)
/ n0 {- ?/ S8 ^; W - {" X! p8 L7 Q3 {2 j- U1 W
- double flowrate = L_way[i][s];
1 k8 A8 F' y/ j5 h6 S5 B - double lfact = L_factway[i][s]; // 每次你这样都是为0,因为你没改变过
8 N2 K) n; ?" m - if(flowrate!=0) // 找到非0值
- t- G/ A) K0 H9 _1 \ - {- r e( O. o6 V. [7 B6 d8 H% q
- index++;: t( X% n/ u9 e
- if(index==1) // 当找到第一个flowrate值不为0
$ o4 E) [9 ]( U8 E, s - {
( U8 j- m7 P- v6 K! b - x=i;
3 A* {7 F2 H9 {* I% q - m=lfact/flowrate; // m还是0,因为lfact始终为0
% M) t* }9 Q. F* k" q - }
. d" q+ m' w5 {: { - if(m>lfact/flowrate) // 所以这个条件始终是没用的$ R6 P; e$ X* S3 { b
- {
" h6 [' a) @3 V$ J$ K+ _9 O5 n - x=i;. A A/ f6 K2 \' |% K; ?! P2 J
- m=lfact/flowrate;
1 R; e8 h" Y+ w4 c' o3 C5 p; C - }
3 g, o0 k9 J6 R- J, q - }4 n$ h* v5 h U$ d, E. F6 x
- }
复制代码 |