2014-10-01 31 views
0

我需要在sml中編寫一個函數,它需要一個數字並確定它是否是斐波那契數。 我已經做了斐波那契FUNC函數來確定一個數字是否在fibonacci中或不在sml中?

fun fib 1=0 
    | fib 2=1 
    | fib n= fib (n-1)+fib(n-2); 

,但我想不出第一個?你有什麼想法?

+0

寫一個函數來生成斐波那契數列。如果生成的最後一個數字是數字本身,那麼它是一個斐波那契數。向我們發送您的代碼。 – Gergely 2014-10-13 13:10:15

回答

0

這可能會幫助你。

fun isfib 0 = true 
    | isfib x = 
    let 
     fun help (i,j) = if j >= x then x = j else help (j,j+i) 
    in 
     help (0,1) 
    end 

我創建,直到我看到大於或等於i有興趣的數目的數字,前生成的序列的輔助函數,然後我測試以查看是否該Fibonacci數等於x。

相關問題