全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1988 9
2013-08-12
打印杨辉三角(Pascal's triangle),

%MACRO TRIANGLE(LINENo);
    %do i=1 %to &lineno;
        %let str=;
        %do j=1 %to &i;
            %if &j=1 or &j=&i %then  
                %let x&i.y&j=1;
            %else
                %do;
                %let upline=%eval(&i-1);
                %let up1=%eval(&j-1);
                %let x&i.y&j=%eval(&&x&upline.y&up1+&&x&upline.y&j);
                %end;
            %let str=&str%qsysfunc(repeat(%str( ),%eval(5-%length(&&x&i.y&j))))&&x&i.y&j;
        %end;
        %let str=%qsysfunc(repeat(%str( ),%eval((&lineNo-&j+1)*3)))%str(&str);
        %put %str(&str);
    %end;
%MEND;
%TRIANGLE(15);


纯宏程序打印完全数、完美数(Perfect number)
%macro divisor(Num,print=0);
        %local allDivisor ;
        %do Divisor=1 %to %eval(&Num/2+1);
        %if  %sysfunc(mod(&Num,&divisor))=0 %then %let allDivisor=&alldivisor+&divisor;
        %end;
        %if &print %then %put  &allDivisor;
        %eval(0&allDivisor)
%mend;



%macro complete(N);
        %local one;
        %do  one=1 %to &n;
        %if &one=%divisor(&one) %then %put one=&one %divisor(&one,print=1);
        %end;

%mend;

%complete(1000);



纯宏程序打印相亲数(Amicable)

%macro divisor(Num,print=0);
        %local allDivisor ;
        %do Divisor=1 %to %eval(&Num/2+1);
        %if  %sysfunc(mod(&Num,&divisor))=0 %then %let allDivisor=&alldivisor+&divisor;
        %end;
        %if &print %then %put  &allDivisor;
        %eval(0&allDivisor)
%mend;

%macro love(N);
        %local one anotherone;
        %do  one=1 %to &n;
        %let anotherOne=%divisor(&one);
        %if   %divisor(&anotherOne)=&one and &one ne &anotherOne  %then %put one=&one %divisor(&one,print=1) anotherone=&anotherone %divisor(&Anotherone,print=1);
        %end;
%mend;
data _null_;
        call symput('ahuigefromtime',put(time(),time8.));
run;

%love(1500);

data _null_;
        diff=time()-input("&ahuigefromtime",time8.);
        put '################ time used :' diff time8.;
run;



》》》》》》》》》》》》》》》》》》》》》》》》
ahuige


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2013-8-12 11:18:51
赞一个!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-8-12 11:31:13
赞一个,学术水平
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-8-12 11:45:06
小宝爱波1314 发表于 2013-8-12 11:31
赞一个,学术水平
借花献佛啊,哈哈
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-8-12 18:31:56
看到程序中的ahuige了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-8-12 20:09:03
Eternal0601 发表于 2013-8-12 18:31
看到程序中的ahuige了
好像是位SAS前辈。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群