作者a88241050 (再回頭已是百殘身)
看板Statistics
標題[程式] SAS巨集問題
時間Thu Jun 20 09:34:48 2013
[軟體程式類別]:SAS
[程式問題]:資料處理
[軟體熟悉度]:中
[問題敘述]:昨天考的一題,寫出一個巨集程式,把輸入的錢數換成錢的張數
EX:輸入487 跑出"領出487元,換得100元4張,50元1張,10元3張,5元1張,1元2張
[程式範例]:
%MACRO test(money);
DATA final;
N=&money;
RUN;
DATA final2;
SET final;
a=INT(N/100);
b=INT((N-100*a)/50);
c=INT((N-100*a-50*b)/10);
d=INT((N-100*a-50*b-10*c)/5);
e=N-100*a-50*b-10*c-5*d;
LABEL N='領出錢數' a='100元張數' b='50元張數' c='10元張數' d='5元張數' e='1元
張數';
RUN;
PROC PRINT DATA=final2 LABEL;
TITLE"領出 &&money 元,換得100元 &a 張,50元 &b 張,10元 &c 張,5元 &d 張,1元 &e
張";
RUN;
%MEND;
%test(487)
執行結果:
領出 487 元,換得100元 &a 張,50元 &b 張,10元 &c 張,5元 &d 張,1元 &e 張
Obs 領出錢數 100元張數 50元張數 10元張數 5元張數 1元張數
1 487 4 1 3 1 2
我現在問題是a,b,c,d,e不是巨集變數,所以標題的張數不會隨著輸入的N值變動
可是a,b,c,d,e是由N所產生的,不知道怎麼把他弄到巨集裡
因為剛學巨集,有些指令還不太熟,希望有人能指點一下,3Q
--
╱
ψjhyfish \ ╲
[jhyfish@ptt]
∕
▃▂▁ \▂▃ ﹨
絕望先生 ﹎﹎﹎
/
◤˙.◥▍
▋◤.˙◥ \
【小森霧】 ─ 家裡蹲少女
◤|
▃▂▄ ◥ ▄▂▃ |
◣ ﹊﹊﹊
\◥ \
◣′〞 ︵ 〝‵◢/
◤/
▆▅▄▃▂▁▂▃▄▆▇█
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.13.225.21
1F:→ JeanYCY:%LET a=%eval(&money/100); 06/20 11:58
2F:→ JeanYCY:%PUT 領出 &money 元,換得100元 &a 張; 06/20 11:59
3F:→ JeanYCY:結果出現在 LOG 06/20 12:00
還是跑不出來..如果要在TITLE顯示而不是LOG視窗的話該怎麼寫?
※ 編輯: a88241050 來自: 163.13.225.161 (06/20 17:27)
4F:推 tew:call symputx 06/21 23:44