i want to add prime number 2 to 10000 using sas
data prime;
array p{10000} _temporary_ ;
do i=1 to 10000;
p{i}=i;
end;
do i=2 to int(sqrt(10000));
if p{i} ne . then do;
do j=i+1 to 10000;
if mod(p{j},p{i})=0 then p{j}=.;
end;
end;
end;
do i=1 to 10000;
if p{i} ne . then do;prime=p{i};output;end;
end;
run;
data prime;
array p{10000} _temporary_ ;
do i=1 to 10000;
p{i}=i;
end;
do i=2 to int(sqrt(10000));
if p{i} ne . then do;
do j=i+1 to 10000;
if mod(p{j},p{i})=0 then p{j}=.;
end;
end;
end;
do i=1 to 10000;
if p{i} ne . then do;prime=p{i};output;end;
end;
run;
This could get you faster .
data prime; array p{10000} _temporary_ ; do i=1 to 10000; p{i}=i; end; do i=2 to int(sqrt(10000)); if p{i} ne . then do; do j=i to 10000 by p{i}; if mod(p{j},p{i})=0 and i ne j then p{j}=.; end; end; end; do i=1 to 10000; if p{i} ne . then do;prime=p{i};output;end; end; run;
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.