sas编程 1找出100以内所有由两个不同质数相乘的数。2如果一个数恰好等于它的因子之和,(比如,6=1+2+3;)则称该数为“完全数”。 请你编程找出100以内的完全数。

第一问只想到用do一个个试,但是结果不对。
data c(drop=i) d(drop = k);

do n=3 to 100 by 2;
do i=2 to n-1;
if mod(n,i)=0 and i^=n-1 then leave;
if i=n-1 then output ;
end;
end;

求指点第一问和第二问的具体思路。

do j=3 to 100 by 2;
do k=2 to n-1;
if mod(j,k)=0 and k^=j-1 then leave;
if k=j-1 then output ;
end;
end;

s= n * j;
if s < 100 ;
output ;
run;