Here's my little piece treasure.
This post has been edited by jimblumberg: 01 August 2012 - 03:58 PM
Reason for edit:: Added missing Code Tags, Please learn to use them.
Posted 31 July 2012 - 05:20 PM
#include <iostream>
using std::cout;
int Fib(int i)
{
int value = 0;
if(i < 1) return 0;
if(i == 1) return 1;
return Fib(i-1) + Fib(i - 2);
}
int main()
{
int i = 0;
while(i < 45)
{
cout << Fib(i) << endl;
i++;
}
return 0;
}
This post has been edited by jimblumberg: 01 August 2012 - 03:58 PM
Reason for edit:: Added missing Code Tags, Please learn to use them.
Posted 01 August 2012 - 06:15 PM
#include <iostream>
#include <math.h>
int fib(int n) {
static const double phi = 1.618033;
static const double sr5 = 2.236067;
return ceil(((pow(phi,n) - pow(phi-sr5,n)) / sr5));
}
int main() {
for (int i = 0; i < 10; i++)
std::cout << fib(i) << std::endl;
return 0;
}
#include <iostream>
#include <math.h>
unsigned long long fib(int n) {
static const double phi = 1.618033988749;
static const double sr5 = sqrt((double)5.0);
return ceil(((pow(phi,n) - pow(phi-sr5,n)) / sr5));
}
int main() {
for (int i = 1; i < 53; i++)
std::cout << i << " " << fib(i) << std::endl;
return 0;
}
This post has been edited by Aphex19: 01 August 2012 - 07:39 PM
Reason for edit:: Added spoiler tags
Posted 01 August 2012 - 06:47 PM
Posted 01 August 2012 - 07:11 PM
This post has been edited by jon.kiparsky: 01 August 2012 - 07:13 PM
Posted 01 August 2012 - 07:14 PM
GWatt, on 02 August 2012 - 02:44 AM, said:
jimblumberg, on 02 August 2012 - 02:47 AM, said:
This post has been edited by Aphex19: 01 August 2012 - 07:16 PM
Posted 01 August 2012 - 07:16 PM
Posted 01 August 2012 - 07:23 PM
Quote
Quote
This post has been edited by jimblumberg: 01 August 2012 - 07:24 PM
Posted 01 August 2012 - 07:56 PM
int Fib(int Place){
unsigned long OldValue = 0;
unsigned long Value = 1;
unsigned long Hold;
if(i < 1){return(0);}
for(int n = 1; n < Place;n++)
{
Hold = Value;
Value+=OldValue;
OldValue = Hold;
}
return(Value);
}
This post has been edited by jimblumberg: 01 August 2012 - 08:03 PM
Reason for edit:: Added spoiler tags
Posted 01 August 2012 - 08:58 PM
double fib(int place){
static double* lookup = NULL;
if(lookup == NULL){
lookup = new double[300];
lookup[0] = 0;
lookup[1] = 1;
for(int i = 2; i < 300; ++i){
lookup[i] = lookup[i - 1] + lookup[i - 2];
}
}
if(place < 300){
return lookup[place];
}
return fib(place - 1) + fib(place - 2);
}
Posted 02 August 2012 - 11:26 AM
This post has been edited by IngeniousHax: 02 August 2012 - 11:28 AM
Posted 02 August 2012 - 11:59 AM
long f(int x, int c, long n)
{
return x == 0 ? c : f(x-1,n,c+n);
}
long Fib(int x)
{
return f(x,0,1);
}
|
|
Query failed: connection to localhost:3312 failed (errno=111, msg=Connection refused).
|
