15 พฤศจิกายน 2550

ลำดับ Fibonacci

ดูที่ กูเกิ้ลด็อกอ่านง่ายกว่าเยอะ

ที่นี่เลย http://docs.google.com/Doc?id=dcntsjcf_5hkkjct

วันนี้ได้ไปอ่านเรื่อง ลำดับ fibonacci จากเว็บ kanid มาฝาก
เพื่อคนที่สนใจเืรื่องนี้โดยเฉพาะที่มีการยกเรื่องราว ของฟังก์ชั้น
ที่สามารถเรียกตัวเองได้มาสอนกันใันชั้นเรียน

ขอยกตัวอย่าง code ภาษา c ที่รู้้จักกันดีละกันนะครับ
ตัวอย่างนี้จะเป็นแนวคิดที่ค่อนข้างตรงๆกับหลักจากสูตรคณิตศาสตร์
เป็นการแบ่งงาน แบบ Divide and conquer
int fibo (int n){

if(n<=2){

return 1;

} else {

return fibo(n-2)+fibo(n-1);

}

}

มีโค๊ด อีกแบบนึงนะครับที่ทำให้มีการ print ตัวเลขออกมาใน code เลย
ไม่ต้องนำค่าที่ return จาก function ไป print อีกที แต่เท่าที่ดูๆเหมือนกับว่า
ไม่ใช่หลักการของ Divide and Conquer เพราะไม่ได้อาศัยหลักการ การแบ่งงานกันทำ

อันนี้ใครพอรู้บ้างก็ตอบกันหน่อยนะครับ



void printfibo (int first, int sec,int n){

if(n>0){
printf("%d,"first);
printfibo(sec,first+sec,n--);
}

ไม่มีความคิดเห็น: