go語言非常靈活,只要為物件實現了相應的方法就可以把他看成實現了某個介面,類似於durk type,
為fibonacci實現read方法,就可以像讀取檔案一樣,去讀取下乙個fibonacci值。
示例**:
ackage mainimport
(
"fmt""
io""bufio""
strings""
strconv")
func fibonacci() intgen
}type intgen func() int //定義乙個func型別,返回int型別
func (g intgen) read(p byte) (n int, err error)
//s := fmt.sprintf("
%d\n
", next)
s := strconv.itoa(next) + "\n"
return strings.newreader(s).read(p) //利用strings的newreader方法來實現read介面
}func printfilecontents(reader io.reader)
}func main()
go語言的斐波那契數列fibonacci
package main import fmt 單純的兩個數字相加的函式 func add x,y int int fibonacci 函式會返回乙個返回 int 的函式。func fibonacci s1,s2 int func int func main 這裡是利用go的閉包。go 函式可以是閉...
Fibonacci數列C語言
fibonacci數列的遞推公式為 fn fn 1 fn 2,其中f1 f2 1。當n比較大時,fn也非常大,現在我們想知道,fn除以10007的餘數是多少。輸入包含乙個整數n。輸出一行,包含乙個整數,表示fn除以10007的餘數。在本題中,答案是要求fn除以10007的餘數,因此我們只要能算出這個...
指數級計算複雜度 呼叫Fibonacci函式次數
指數級計算複雜度 計算呼叫次數 include long fibonaccicalltimes long n int main void return 0 long fibonaccicalltimes long n else enter an integer satrt 0 enter an in...