Math SAS中双重不等式的解释

Math SAS中双重不等式的解释,math,sas,logical-operators,Math,Sas,Logical Operators,我写 do while(A我认为它从左到右计算: (A <= B) <= C (A我认为它从左到右计算: (A <= B) <= C (A这在数据步骤中可以正常工作,但在PROC IML中不起作用 1189 data _null_; 1190 a = 10; 1191 b = 10; 1192 c = 15; 1193 1194 do while(a<=b<=c); 1195 put b=; 1196 b = b + 1; 1

我写


do while(A我认为它从左到右计算:

(A <= B) <= C

(A我认为它从左到右计算:

(A <= B) <= C

(A这在数据步骤中可以正常工作,但在PROC IML中不起作用

1189  data _null_;
1190  a = 10;
1191  b = 10;
1192  c = 15;
1193
1194  do while(a<=b<=c);
1195      put b=;
1196      b = b + 1;
1197      /*Abort if this runs away*/
1198      if b > 20 then
1199          stop;
1200  end;
1201  run;

b=10
b=11
b=12
b=13
b=14
b=15
NOTE: DATA statement used (Total process time):
      real time           0.00 seconds
      cpu time            0.00 seconds

1203  proc iml;
NOTE: IML Ready
1204  a = 10;
1205  b = 10;
1206  c = 15;
1207  file log;
1208
1209  do while (a<=b<=c);
1210      put "B=" b;
1211      b = b+1;
1212
1213      if b>20 then stop;
1214  end;
B=       10
B=       11
B=       12
B=       13
B=       14
B=       15
B=       16
B=       17
B=       18
B=       19
B=       20
1215  quit;
NOTE: Exiting IML.
NOTE: PROCEDURE IML used (Total process time):
      real time           0.00 seconds
      cpu time            0.01 seconds
1189数据\u空\u;
1190A=10;
1191b=10;
1192 c=15;
1193

1194 do while(a这与您在数据步骤中预期的一样有效。它在过程IML中不起作用

1189  data _null_;
1190  a = 10;
1191  b = 10;
1192  c = 15;
1193
1194  do while(a<=b<=c);
1195      put b=;
1196      b = b + 1;
1197      /*Abort if this runs away*/
1198      if b > 20 then
1199          stop;
1200  end;
1201  run;

b=10
b=11
b=12
b=13
b=14
b=15
NOTE: DATA statement used (Total process time):
      real time           0.00 seconds
      cpu time            0.00 seconds

1203  proc iml;
NOTE: IML Ready
1204  a = 10;
1205  b = 10;
1206  c = 15;
1207  file log;
1208
1209  do while (a<=b<=c);
1210      put "B=" b;
1211      b = b+1;
1212
1213      if b>20 then stop;
1214  end;
B=       10
B=       11
B=       12
B=       13
B=       14
B=       15
B=       16
B=       17
B=       18
B=       19
B=       20
1215  quit;
NOTE: Exiting IML.
NOTE: PROCEDURE IML used (Total process time):
      real time           0.00 seconds
      cpu time            0.01 seconds
1189数据\u空\u;
1190A=10;
1191b=10;
1192 c=15;
1193
做某事