# Native Code > برنامه نویسی با C > برنامه نویسی با زبان C و ++C > سوال: فیبوناچی به روش بازگشتی

## sr2m72

سلام دوستان، میخوام یه برنامه بنویسم که یک سری فیبوناچی را به روش بازگشتی واسم چاپ کنه.
کسی کدش رو داره بهم بده(C++‎)
ممنون میشم.

----------


## #target

روش که مشخصه 
عدد صفر و اول برابر یک . و برای دومی و بالاتر مقدار عدد فیبوناچی برابر با جمع دو تای قبلی 

#include <iostream.h>
int Fib(int n)
{
	if (n >= 2)
		return Fib(n-1) + Fib(n-2); // مقدار برابر با جمع دو مقدار قبلي
	else
		return 1;
}

int main()
{
	for ( int i = 1 ; i < 10 ; i++)
		cout << Fib(i) << " - ";
}

----------


## sr2m72

ممنون داداش.
میشه برنامه رو طوری تغییر بدین که یک عدد از ورودی بگیره و فیبوناچی تا آن عدد رو چاپ کنه.

----------


## #target

چرا نمیشه ! 
همون حلقه من از یک تا ده رفتم شما بجای ده یک عدد از کاربر بگیر بذار تو متغیر بعد حلقه رو از یک تا اون متغیر ببر
int k;
cin >> k;
for ( int i = 1 ; i < k ; i++)
        cout << Fib(i) << " - ";

----------


## sr2m72

داداش ممنونم از کمکت.
موفق باشی

----------


## parham gh

bad joor karam gire azizan,seri fibonanchi ba metodhaye bazgashti be zabane si sharp C#‎ mikhastam,kole barname az aval ta akhar,khodam neveshtam vali vaghti midamesh be barname nevis chanta khata mide.lotfan komakam konid

----------


## parham gh

bad joor karam gire azizan,seri fibonanchi ba metodhaye bazgashti be  zabane si sharp C#‎‎ mikhastam,kole barname az aval ta akhar,khodam  neveshtam vali vaghti midamesh be barname nevis chanta khata mide.lotfan  komakam konid

----------


## #target

فارسی بنویس ! 
تابعی که نوشتم داخل سی شارپم میشه استفاده کرد .

----------


## meisam12

سلام
تابع بازگشتی فیبونانچی بدین صورت پیاده سازی می گردد.

#include <iostream.h>
int Fib(int n)
{
    if ( n == 1 || n == 2 )
        return 1;
    else
        return Fib(n-1) + Fib(n-2);
       
}
 
int main()
{
   int i=0;
   cin>>i;
   cout << Fib(i);
}

----------

