#include <bits/stdc++.h>
using namespace std;
int main( )
{
int NumsToCal = 5 ;
cout << "How many numbers would you like to calculate?" << endl;
cin >> NumsToCal;
cout << " This program will calculate " << NumsToCal << " Fibonacci Numbers at a time" << endl;
int Num1 = 0 , Num2 = 1 ;
char WantMore = '\0 ' ;
cout << Num1 << " " << Num2 << " " ;
do
{
for ( int Index = 0 ; Index < NumsToCal; ++ Index)
{
cout << Num1 + Num2 << " " ;
int Num2Temp = Num2;
Num2 = Num1 + Num2;
Num1 = Num2Temp;
}
cout << "Do you want more numbers (y/n)? " << endl;
cin >> WantMore;
if ( WantMore == 'y' ) {
Num1 = 0 ;
Num2 = 1 ;
cout << "How many numbers would you like to calculate?" << endl;
cin >> NumsToCal;
cout << Num1 << " " << Num2 << " " ;
}
} while ( WantMore == 'y' ) ;
cout << "Goodbye!" << endl;
return 0 ;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBtYWluKCkKeyAKICAgIGludCBOdW1zVG9DYWwgPSA1OwoKICAgIGNvdXQgPDwgIkhvdyBtYW55IG51bWJlcnMgd291bGQgeW91IGxpa2UgdG8gY2FsY3VsYXRlPyIgPDwgZW5kbDsKICAgIGNpbiA+PiBOdW1zVG9DYWw7CgogICAgY291dCA8PCAiIFRoaXMgcHJvZ3JhbSB3aWxsIGNhbGN1bGF0ZSAiIDw8IE51bXNUb0NhbCA8PCAiIEZpYm9uYWNjaSBOdW1iZXJzIGF0IGEgdGltZSIgPDxlbmRsOwoKICAgIGludCBOdW0xID0gMCwgTnVtMiA9IDE7CiAgICBjaGFyIFdhbnRNb3JlID0gJ1wwJzsKICAgIGNvdXQgPDwgTnVtMSA8PCAiICIgPDwgTnVtMiA8PCAiICIgOwoKICAgIGRvIAogICAgewogICAgICAgIGZvciggaW50IEluZGV4ID0gMDsgSW5kZXggPCBOdW1zVG9DYWw7ICsrSW5kZXgpCiAgICAgICAgewogICAgICAgICAgICBjb3V0IDw8IE51bTEgKyBOdW0yIDw8ICIgIjsKCiAgICAgICAgICAgIGludCBOdW0yVGVtcCA9IE51bTI7CiAgICAgICAgICAgIE51bTIgPSBOdW0xICsgTnVtMjsKICAgICAgICAgICAgTnVtMSA9IE51bTJUZW1wOwogICAgICAgIH0KICAgICAgICBjb3V0IDw8ICAiRG8geW91IHdhbnQgbW9yZSBudW1iZXJzICh5L24pPyAiIDw8IGVuZGw7CiAgICAgICAgY2luID4+IFdhbnRNb3JlOwogICAgICAgIAogICAgICAgIGlmICggV2FudE1vcmUgPT0gJ3knICkgewogICAgCQlOdW0xID0gMDsKICAgIAkJTnVtMiA9IDE7CiAgICAJCWNvdXQgPDwgIkhvdyBtYW55IG51bWJlcnMgd291bGQgeW91IGxpa2UgdG8gY2FsY3VsYXRlPyIgPDwgZW5kbDsKICAgIAkJY2luID4+IE51bXNUb0NhbDsKICAgIAkJY291dCA8PCBOdW0xIDw8ICIgIiA8PCBOdW0yIDw8ICIgIiA7CgkJfQoKICAgIH0gd2hpbGUgKFdhbnRNb3JlID09ICd5Jyk7CgogICAgICAgIGNvdXQgPDwgIkdvb2RieWUhIiA8PCBlbmRsOwoKICAgIHJldHVybiAwOwp9