Invalid types 'double[int]' for array subscript (on cout line)

Need help:
int main()
{
double fibonacci, n;
cout << "Enter the number of fibonacci numbers:";
cin >> n;
fibonacci = FibLoop(n);
for (int i = 0; i<n; i++)
cout << fibonacci[i] << " ";
return 0;
}


double FibLoop(int n){
double origValue = 0, currValue, nextValue;
double *fiboList = new double[n];
for (int i = 0; i <= n; i++) {
if (i = 0){
currValue = 0;
fiboList[i] = currValue;
}
if (i = 1){
currValue = 1;
fiboList[i] = currValue;
}
else{
nextValue = origValue + currValue;
origValue = currValue;
currValue = nextValue;
fiboList[i] = currValue;
}

return *fiboList;
}
}



Last edited on
Look at this snippet:
1
2
3
4
   double fibonacci, n;
   ...
   for (int i = 0; i<n; i++)
      cout << fibonacci[i] << " ";


You declare fibonacci as a single double, but you're trying to print an array.

Please use code tags when posting code.
Thank you so much and sorry I will use them next time.
Topic archived. No new replies allowed.