Viết chương trình in dãy số Fibonanci.

Yêu cầu:

Viết chương trình in dãy số Fibonanci nhỏ hơn giá trị N. Biết rằng:
f(0) = f(1) = 1
f(n) = f(n – 1) + f(n – 2)

Thuật toán:

– Cách 1: dùng đệ quy

– Cách 2: dùng công thức f(n) = f(n – 1) + f(n – 2)

Code:

/************************************************************
* Author: VNCODING
* History
* 2014/03/18        first create    VNCODING
*************************************************************/
#include "stdio.h"
#include "conio.h"
#define F0    1

void main()
{
    int N = 0;
    int Fn;
    int Fn1, Fn2;
    Fn1 = Fn2 = F0;

    do
    {
        printf("\nNhap vao so nguyen duong N: ");
        scanf("%d", &N);
    }
    while(N <= 1);

    printf("\nFibonanci :\t%d\t%d", Fn1, Fn2);
    while(Fn1 + Fn2 < N)
    {
        Fn = Fn1 + Fn2;
        printf("\t%d", Fn);
        Fn1 = Fn2;
        Fn2 = Fn;
    }
    getch();
}

Kết quả:

Nhap vao so nguyen duong N: 100
Fibonanci : 1 1 2 3 5 8 13 21 34 55 89

Be the first to comment

Leave a Reply