an exercise;
I want to write a recursive function that rotates left an integer array, i.e. the given array
1 2 3 4
will be
2 3 4 1
after the function executed.
for this I write
But i couldn't handle with the base condition I think. Actually this code givesCode:#include <iostream> #include <iomanip> using namespace std; int vArray[] = {1,2,3,4,5,6,7,8,9}; const int vsize = 9; void rotateLeft(int foo[], int size) { if ( foo[1] == NULL ) foo[0] = *(foo - size); else{ foo[0] = foo[1]; rotateLeft(&foo[1], --size); } } int main() { rotateLeft(vArray, vsize); cout << "Element" << setw( 13 ) << "Value" << endl; for(int i=0; i<vsize; ++i) cout << setw( 7 ) << i << setw( 13 ) << vArray[ i ] << endl; return 0; }
How can i take the value of first element and equalize the value of last element to it?Code:Element Value 0 2 1 3 2 4 3 5 4 6 5 7 6 8 7 9 8 9



LinkBack URL
About LinkBacks


