对应SAS BASE 123 题 Q-111
question111.png
理解or 的实现逻辑
- if a=1 or a=2 then [commands....]
指判断以下条件:
a=1 或 a = 2
当以上条件表达式(expression)返回值为1(true)时执行commands
- if a=1 or 2 then [commands...]
指判断以下条件:
a=1 或 2=2
当以上条件表达式(expression)返回值为1(true)时执行commands
比如,当a=5时,此时执行逻辑为:
- 判断a=1, 返回false;
- 判断 2=2, 恒等式,返回true;
- 计算or 的值为最终的返回值,即返回值=false||true = true;
4.执行if 后的commands
所以,无论a的实际值为多少,均会执行command 结果。
实验是检验真理的唯一标准;
data aa;
input name $ num;
if num =3 or 5 then put name num;
cards;
lili 1
mary 3
mark 5
tt 3
sum 2
bibib 3
;
run;
返回结果:
results.png
可以看到所有obs 均有log输出结果.
上述条件语句修改为
if num = 3 or num= 5 then put name num;
返回结果:
results.png
只有 num=3 或 num=5的值输出
over.
网友评论