你好,你这个代码其中问题很多。注意到你的heavy_wayfact中的数据初始时全部为零。
0 K7 Z* L9 B2 q' X& A+ a- int s = duniform(1,7);
* ~+ S a# L$ D3 d - Table L_way = Table("heavy_way");$ O! o I3 o) ]- g
- Table L_factway = Table("heavy_wayfact");, q" Z9 h+ Q1 E5 m
6 U. P }- C" B' C7 y- int x = 0;
; o( s y" F; v4 {4 h G$ V8 g, J - int index =0;
; N/ T- p3 M7 G, w$ @/ _ - double m = 0;" y9 o y6 | \
- for(int i=1;i<L_way.numRows;i++)
! E# g/ t% M- d3 C - {" E5 z. N; F, A3 B6 m
- double flowrate = L_way[i][s];
. i3 k1 j6 ]! T& m+ S* [ - double lfact = L_factway[i][s]; // 每次你这样都是为0,因为你没改变过" h. N4 V0 k/ r# I2 a
- if(flowrate!=0) // 找到非0值
- L# E2 P& g# @) B+ `5 H2 k - {
( b f+ V0 Q1 u - index++;% h* }6 q5 q$ D3 P! T% p8 c4 o
- if(index==1) // 当找到第一个flowrate值不为0$ C: J* b, U" q8 x, g( F5 w
- {
6 B9 K$ Q0 U% Y) D# N - x=i;$ f& |4 Y, `% P; s2 ~: w8 X
- m=lfact/flowrate; // m还是0,因为lfact始终为0
) ^* `+ Q- X3 B; S9 O2 p. h - }% g- i& q( Y0 c7 K. ~
- if(m>lfact/flowrate) // 所以这个条件始终是没用的
" y- T9 `- l I* z0 \0 S9 c7 G( c- P - {' E" W/ }8 m! p' u1 J* ?
- x=i;
: a: E" Q- \; i+ e% n+ P6 q - m=lfact/flowrate;. S, O2 e3 u( \/ u ?
- }
" F& r/ o2 y V - }
/ r& U! ^: Y: L" X+ \9 a - }
复制代码 |