The program needs to ask for n and then output the first n terms of the Fibonacci sequence.

exp.
n = 6
1, 1, 2, 3, 5, 8
1+1 =2
2+1=3
3+2=5
5+3=8

My origional program used a nested for loop.
I am not sure if that is right to use in this type a situation.
I would like suggestions to make it work.

#include <iostream>


using namespace std;
int main ()
{
int fOne = 1;
int fTwo = 1;
int fThree = 2;
long fN;
long fNN;


cout << "How many n terms do you want in the sequence: ";
cin >> fN;


for ( fN = 1 ; fN >= 3 ; fN++ )
{
for (fNN = 1; fNN >= fN; fNN++)
fNN = (fN - 1) + (fN - 2);
cout << fN;
}
}

Recommended Answers

All 11 Replies

You have some mistakes in this code:

cin >> fN;

for ( fN = 1 ; fN >= 3 ; fN++ )

As you introduce fN from the standard input, why are you initializing it in the for loop? More, if you are initializing fN = 1, then the condition in for loop fN >= 3 is never accomplished.

Then, for the Fibonacci series, as I know, every term of the series, starting with the third term, is the sum of the 2 preceding terms. In a vector, this should be a[n] = a[n-1] + a[n-2], right?
Or, in the for loop

for (fNN = 1; fNN >= fN; fNN++)
    fNN = (fN - 1) + (fN - 2);
cout << fN;

you are adding the same term, subtracting from it first 1, then 2..this is not exactly what you want...

Here you have some sample code:

#include <iostream> 

using namespace std;
int main ()
{
int a[128];
int fN;
int i;

a[0]=1;
a[1]=1;

cout << "How many n terms do you want in the sequence: ";
cin >> i;

for ( fN = 2 ; fN <= i ; fN++ )
{
a[fN]=a[fN-1]+a[fN-2];
cout << a[fN] <<"\n";
}
}

It has some limitations (you can't enter a value >128, for example), but I hope you get the idea.

Okay, when I ran this program, I saw one error:
1. I did not see the first two ones in the Fibonacci sequence.

Also, can you tell me that the a and the i means in this program??

>1. I did not see the first two ones in the Fibonacci sequence.
Probably because those values weren't printed. They're in the generated sequence though. frrossk's program kind of sucks anyway.

>Also, can you tell me that the a and the i means in this program??
a is an array that holds each number in the sequence and i is the expected length of the sequence.

> Nov 3rd 2004
> 2 Minutes Ago
Lets see, 2 and a half years.
Now, what was your question again?

I don't see a problem resurrecting the thread in this case.

hey i have this code..... n it works

 # include <iostream.h>
  void main ()
  {
  int x=0, y=1, b, n=0,ter;

  cout<<"Enter The number of terms";
  cin>>ter;
  cout<<x<<" "<<y<<" ";

        while (n<ter-1)
        {
          b=x+y;
          cout<<b<<" ";
          x=y;
          y=b;

          n++;
        }

  }
commented: spoon feeding thread necro :P +0

you do realize this thread is almost 6-years old... the OP has probably completely forgotten about it by now.

LOL. wht can i say .. i just started c++ and made this prog today.!

LOL. wht can i say .. i just started c++ and made this prog today.!

Say you're sorry, don't do it again, and Read the Member Rules!!! Violating the rules will get you banned from the site.

thank you princess it realy worked

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.