data s;
do i =.1 to .9 by .1;
a=i;
output;
end;
data t;
do i =.1,.2,.3,.4,.5,.6,.7,.8,.9;
b=i;
output;
end;
data p;
merge s t;
by i;
proc print;
run;
|

data s;
do i =.1 to .9 by .1;
a=i;
a1=put(i,hex16.);
output;
end;
data t;
do i =.1,.2,.3,.4,.5,.6,.7,.8,.9;
b=i;
b1=put(i,hex16.);
output;
end;
data p;
merge s t;
by i;
proc print;
var i a b a1 b1;
run;
|

數值
|
浮點運算值
|
0.2+0.1
|
0011111111010011001100110011001100110011001100110011001100110100
|
0.3
|
0011111111010011001100110011001100110011001100110011001100110011
|
-
盡量使用整數
data s;
do j = 1 to 9;
i=j/10;
output;
end;
|
-
如果使用小數時,盡量不要用累進的方式
data t;
do i =.1,.2,.3,.4,.5,.6,.7,.8,.9;
output;
end;
|
-
如果用累進的方式,可以使用round函數
data s;
do j =.1 to .9 by .1;
i=round(j,.1);
output;
end;
|