- #1
sandy.bridge
- 798
- 1
Homework Statement
Hey all. I have code that is supposed to delete the offset determined by the user and shift the elements after that offset to the left. My code works fine except for one problem: if the index is zero it terminates. I will post my code, and if anyone can see why it is giving me this problem, I would greatly appreciate it!
The Attempt at a Solution
PHP:
#include <iostream>
using namespace std;
int arrayA(int theArray[],int size)
{
cout << "Array: " << '{';
int i = 0;
while (i < size)
{
cout << theArray[i];
if (i < size-1){cout << ',';}
i++;
}
cout << '}' << endl << "Want to delete something (y/n)? ";
char ansr;
cin >> ansr;
if (ansr == 'y')
{
cout << "Offset to delete? ";
int offset;
cin >> offset;
return offset;
}
else if (ansr == 'n')
{
cout << "Goodbye!";
}
return 0;
}
int arrayB(int theArray2[], int size, int offset)
{
if ((offset >= size)||(offset < 0)){ cout << "Sorry, cannot delete that." << endl; return size;}
for (int m = offset + 1; m < size; m++)
{
theArray2[m-1]=theArray2[m];
}
size--;
return size;
}
int main() {
int N = 10;
int y;
int fling[]={1,2,3,4,5,6,7,8,9,10};
do{
y = arrayA(fling, N);
N = arrayB(fling, N, y);
}while ((N > 0)&&(y != 0));
return 0;
}