Tak jak mówiłem w komentarzach, złoty podział dostaniesz, gdy podzielisz przez siebie dwie kolejne liczby Fibonacciego. Oczywiście trzeba pamiętać, aby zamienić je na double, bo inaczej dostaniesz tylko część całkowitą liczby.
Na Twoim kodzie wyglądałoby to tak:
#include <iostream>
#include <iomanip>
using namespace std;
long long fib(int n)
{
if(n<3)
return 1;
else
return fib(n-2)+fib(n-1);
}
int main()
{
int n;
cout<<"Podaj n: ";
cin>>n;
cout << n << " wyraz ciągu ma wartosc: " << fib(n) << "\n";
cout << "Zloty podzial: " << setprecision(10) << fixed << (double)fib(n)/(double)fib(n-1) << "\n";
return 0;
}
Dla n = 40 wynik już bardzo przypomina liczbę Phi.