سلام. من برنامه زیر رو نوشتم که میخواستم n رو دریافت میکنه و n جمله اول دنباله فیبوناچی رو نمایش بده.

#include<iostream.h>
#include<conio.h>
long unsigned int fibo(int);
void main(){
clrscr();
int n;
cin>>n;
fibo(n);
getch();
}
//****************************************
long unsigned int fibo(int n){
if(n==1||n==2)
{cout<<"\t"<<1;
return 1;
}
cout<<"\t"<<fibo(n-1)+fibo(n-2);
return fibo(n-1)+fibo(n-2);
}

ولی مشکل من اینه که برنامه میاد خط
cout<<"\t"<<fibo(n-1)+fibo(n-2);
رو میخونه بعد که میره خط بعدی دوباره مقادیر
fibo(n-1) و fibo(n-2)
رو بدست میاره
برای مثال خروجی برای
n=3
باید بشه 1.1.2
اما خروجی رو میده 1.1.2.1.1