[程式] SAS巨集問題
[軟體程式類別]: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
→
06/20 11:58, , 1F
06/20 11:58, 1F
→
06/20 11:59, , 2F
06/20 11:59, 2F
→
06/20 12:00, , 3F
06/20 12:00, 3F
還是跑不出來..如果要在TITLE顯示而不是LOG視窗的話該怎麼寫?
※ 編輯: a88241050 來自: 163.13.225.161 (06/20 17:27)
推
06/21 23:44, , 4F
06/21 23:44, 4F
討論串 (同標題文章)