作者joyce618 (joy)
站內Statistics
標題Re: [程式] 想請問如何利用sas推導費波那切數列^^
時間Mon May 9 23:04:34 2011
※ 引述《joyce618 (joy)》之銘言:
: ------------------------------------------------------------------------
: [軟體程式類別]:sas
: [程式問題]:資料處理
: [軟體熟悉度]:
: 低(1~3個月)
: [問題敘述]:想利用sas推導Fibonacci數列
: 出來的格式想要為
: n F
: 0 1
: 1 1
: 2 2
: 3 3
: 4 5
: 5 8
: ...
: 300 XXX
: 基本上n=0及n=1時,直接設定F=1
: 從n=2開始,F值是前兩項數字加總,也就是F(2)=F(0)+F(1)依此類推下去一直到n=300
: [程式範例]:目前能想到的是利用迴圈進行運算
不好意思,雖然已經有大人回答我的問題了,
不過因為實在還沒學到矩陣的語法,
所以小妹比較想要知道能不能用目前學到的語法進行推導
剛剛小妹研究了一下目前學到語法
小妹打算先將格式擴展如下
n F Fa
0 1
1 1 1
2 2 1
3 3 2
4 5 3
也就是說雖然n=0及1時的F是直接設定的
但是小妹先在n=1時多設一個變數,使Fa=上一個F
而到n=2以後,F=上一個F與Fa相加,Fa=上一個F
依此類推下來
因此小妹用這個想法另外整理出其他寫法,但是還是跑不出結果
可以麻煩各位大人幫小妹看一下語法嗎
麻煩各位了
小妹另外想出的寫法如下:
DATA Fabo;
DO n=0 to 1;
IF n=0 then F=1;
ELSE IF n=1 then F=Fa=1;
ELSE IF n>2 then DO;
RETAIN lastF;
RETAIN lastFa;
F=lastF+lastFa;
Fa=lastF;
output;
lastF=F;
lastFa=Fa;
END;
END;
OUTPUT;
PROC PRINT;
RUN;
非常感謝各位的幫忙^^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.43.114.192