Nu virker den! og der burde ikke være en fejl nu.
#include<iostream>
using namespace std;
class Fibonacci
{
private:
int FibonacciTal;
int length;
int *fibonacciData;
public:
Fibonacci() {}
~Fibonacci() {}
void Koer(int slutTal, int startVaerdi, bool skriv);
};
void Fibonacci::Koer(int slutTal, int startVaerdi, bool skriv)
{
int j = 0;
int lastI = 0;
fibonacciData = new int[slutTal];
for(int i=0;j<slutTal;j++)//de kommende sætninger udrenger fibonacci
{
if(i==0 && j==1)
i++;
if (j==0)
{
FibonacciTal = 0;
}
else
FibonacciTal = i + lastI;
if(skriv==true)
{
if(FibonacciTal>=startVaerdi)
{
cout<<"Tallene der plusses "<<i<<"+"<<lastI<<endl;
cout<<"Fibonacci taller "<<FibonacciTal<<endl;
}
}
fibonacciData[j+1];
if(j==0)
fibonacciData[0+1]=0;
else
fibonacciData[j+1] = FibonacciTal;
lastI = i;
i = FibonacciTal;
length = j;
}
int nrFibo;
cout<<"skriv et fibonacci nr"<<endl;
cin>>nrFibo;
cout<<"Tallet er "<<fibonacciData[nrFibo]<<endl;
delete [] fibonacciData;
fibonacciData = 0;
}
int main()
{
int slutNummer;
int startTal;
int igen;
int mulighed;
Fibonacci bonacci;
cout<<"Vil du have nogle fibonacci tal udskrevet eller vil du vælge nogen der skal udskrives?"<<endl;
cout<<"(1 for første mulighed (0 for anden)"<<endl;
cin>>mulighed;
if(mulighed==1)
{
cout<<"Hvor mange fibonacci tal skal skrives ?"<<endl;
cin>>slutNummer;
cout<<"Hvad skal fibonacci tallet starte ved"<<endl;
cin>>startTal;
cout<<"\n\n\n"<<endl;
bonacci.Koer(slutNummer, startTal, true); //sidste værdi er om tallene skal udskrives
cout<<"Vil du prøve igen?(1 for ja) (0 for nej)"<<endl;
cin>>igen;
if(igen==1)
{
while(igen==1)
{
cout<<"Hvor mange fibonacci tal skal udskrives?"<<endl;
cin>>slutNummer;
cout<<"Hvad skal fibonacci tallet starte ved?"<<endl;
cin>>startTal;
cout<<"\n\n\n"<<endl;
bonacci.Koer(slutNummer, startTal, true); //sidste værdi er om tallene skal udskrives
cout<<"Vil du prøve igen?(1 for ja) (0 for nej)"<<endl;
cin>>igen;
}
}
}
if(mulighed==0)
{
cout<<"Hvor mange tal skal du kunne vælge imellem at vælge?"<<endl;
cin>>slutNummer;
cout<<"\n\n\n"<<endl;
bonacci.Koer(slutNummer, 0 , false);
cout<<"vil du prøve igen?(1 for ja) (0 for nej)"<<endl;
cin>>igen;
if(igen==1)
{
while(igen==1)
{
cout<<"Hvor mange tal skal du kunne vælge imellem?"<<endl;
cin>>slutNummer;
cout<<"\n\n\n"<<endl;
bonacci.Koer(slutNummer, 0, false);
cout<<"Vil du prøve igen(1 for ja) (0 for nej)"<<endl;
cin>>igen;
}
}
}
return 0;
}
har ændret den lidt så man skal skrive hvor mange fibonacci tal der skal udskrives ikke hvor meget den skal køre til. så hvis man skriver 10 får man 10 fibonacci tal det vil sige til 55
Indlæg senest redigeret d. 21.03.2010 06:59 af Bruger #15732