0.4 - 0.3 ≠0.1 ?
data d1; a = 0.4; b = 0.3; c = a - b; if c = 0.1 then flg=1; else flg=0; put flg; run;
2chには,「SASは2進数で計算をおこなうため0.1000000000001みたいなことがおきてるわけよ。きちんとRound関数使いなさい」との指示が。
data d1; a = 0.4; b = 0.3; c = round(a - b , 0.000001); /* 桁数はお好みで */ if c = 0.1 then flg=1; else flg=0; put flg; run;
いやあ,SASさわって10年になるけど知らなかった。。