C語言斐波那契數列程式



斐波那契數列透過相加兩個前一項來生成後續項。斐波那契數列始於兩個數字 − F0 和 F1。F0 和 F1 的初始值分別可以取為 0、1 或 1、1。

斐波那契數列滿足下列條件 −

Fn = Fn-1 + Fn-2

因此,斐波那契數列可能如下所示 −

F8 = 0 1 1 2 3 5 8 13

或 −

F8 = 1 1 2 3 5 8 13 21

演算法

此程式的演算法非常簡單 −

START
   Step 1 → Take integer variable A, B, C
   Step 2 → Set A = 0, B = 0
   Step 3 → DISPLAY A, B
   Step 4 → C = A + B
   Step 5 → DISPLAY C
   Step 6 → Set A = B, B = C
   Step 7 → REPEAT from 4 - 6, for n times
STOP

虛擬碼

procedure fibonacci : fib_num
   
   IF fib_num less than 1
      DISPLAY 0
      
   IF fib_num equals to 1
      DISPLAY 1
      
   IF fib_num equals to 2
      DISPLAY 1, 1
      
   IF fib_num greater than 2
      Pre = 1,
      Post = 1,
      
      DISPLAY Pre, Post
      FOR 0 to fib_num-2
         Fib = Pre + Post
         DISPLAY Fib
         Pre = Post
         Post = Fib
      END FOR
   END IF

end procedure

實現

此演算法的實現如下 −

#include <stdio.h>

int main() {
   int a, b, c, i, n;

   n = 4;

   a = b = 1;
   
   printf("%d %d ",a,b);

   for(i = 1; i <= n-2; i++) {
      c = a + b;
      printf("%d ", c);
      
      a = b;
      b = c;
   }
   
   return 0;
}

輸出

程式輸出應如下所示 −

1 1 2 3
mathematical_programs_in_c.htm
廣告
© . All rights reserved.