你好,你这个代码其中问题很多。注意到你的heavy_wayfact中的数据初始时全部为零。$ J) Q6 D6 m/ ~ {, W/ W
- int s = duniform(1,7);
+ k: Z. H& j0 U& `7 G! m) m - Table L_way = Table("heavy_way");
! t5 L3 d( Q' N) |6 Q( [ - Table L_factway = Table("heavy_wayfact");3 ^) w$ `5 g. ^0 s5 R r$ \
3 k; c; F* E- q4 `: s- int x = 0;
; G. w4 l( Y2 a9 S" o - int index =0;) V0 U0 I0 a' t4 D2 L% o# R
- double m = 0;
: Y S. O8 }* F4 _ - for(int i=1;i<L_way.numRows;i++)
! y; f s9 a" a D- w - {
5 N# H( R' i1 S8 I c/ I$ x - double flowrate = L_way[i][s];
* B) D& k& U* f5 V3 a0 S( i4 r - double lfact = L_factway[i][s]; // 每次你这样都是为0,因为你没改变过( k7 {: z3 T8 T G* J
- if(flowrate!=0) // 找到非0值
3 T& u, h j# _* B* O' V: P - {
. a, F d4 F( H% R, P2 B& O+ V - index++;- x1 `; V+ _0 l( C- E7 ]
- if(index==1) // 当找到第一个flowrate值不为0
& L/ q9 Q3 N2 I5 `5 O" t9 [4 d - {7 G, F9 H. ]1 X% L
- x=i;
; A# z& j' L, |& c e. k - m=lfact/flowrate; // m还是0,因为lfact始终为03 K; W* O; m( Y6 q
- }
# v. ^3 D( T, ] - if(m>lfact/flowrate) // 所以这个条件始终是没用的7 J `9 d- j) j- r5 c5 n( ^
- {
- y' ]5 u1 l4 J' |6 j2 o+ I - x=i;7 T3 \: y8 U7 Q
- m=lfact/flowrate;
3 s5 e0 P, u7 c$ \6 T) l - }) v t% N& g) H
- }0 W+ k* r! P" J9 U* O
- }
复制代码 |