Attaching what I've done; having a problem that the recursion sticks on the left recursive calls and can't continue to the right recursive calls. can't figure out how to return the recursion to the first position and continue the program to run towards the right recursive calls.
void minMax(int A[], int left, int right, int &min, int &max)
{
if (right == 0)
return;
if (A[(left + right) / 2] <= min)
min = A[(left + right) / 2];
if (A[((left + right) / 2)] >= max)
max = A[((left + right) / 2)];
if (right > 0)
minMax(A, left, (right - left) / 2, min, max);
if(left < right)
minMax(A, (right - left) / 2, right, min, max);
}