This is what i have created, it looks like everything is there. But when i try to make it run, it gives errors saying that it can't convert parameter one from double* to double*[] and others like can't convert double* to int* don't really now how to fix this problem. could someone please help in making sure i wrote it correctly and telling me how to repair the errors. Thank you.
#include <iostream>
#include <iomanip>
using namespace std;
void arrSelectSort(double *[], int);
void showArrPtr(double *[], int);
void showAverage(double , int);
int main()
{
double *scores, //To dynamically allocate an array
total=0, //Accumulator
average; //To hold the averge scores
int numScores; //To hold the number of test scores
//Get the number of test scores.
cout << "How many test scores will you be inputing?";
cin >> numScores;
//Dynamically allocate an array large enough to hold that many
//test scores
scores = new double[numScores];
//Get the test score for each test
cout << "Enter the test scores below.\n";
for (int count = 0; count < numScores; count++)
{
cout << "Test score #" << ( count + 1 ) << ": ";
cin >> scores[count];
while (scores <=0)
{
cout << "Zero or negative numbers not accepted.\n";
cout << "Test Score #" << (count + 1) << ": ";
cin >>scores[count];
}
}
//Calculate the total scores
for (int count = 0; count < numScores; count++)
{
total += scores[count];
}
//sort the elements of the array pointers
arrSelectSort ( scores, numScores );
//Will display them in sorted order.
cout << "The test scores in ascending order are: \n";
showArrPtr ( scores, numScores );
showAverage( total, numScores );
//Free memory.
delete [] scores;
scores = 0;
return 0;
}
void arrSelectSort(double *array[], int size)
{
int startScan, minIndex;
int *minElem;
for (startScan = 0; startScan < ( size - 1 ); startScan++)
{
minIndex = startScan;
minElem = array[startScan];
for (int index = startScan + 1; index < size; index++)
{
if ( *(array[index] ) < *minElem)
{
minElem = array[index];
minIndex = index;
}
}
array[minIndex] = array[startScan];
array[startScan] = minElem;
}
}
void showArrPtr(double *array, int size)
{
for (double count=0; count< size; count++)
cout << *(array[count]) << " ";
cout << endl;
}
void showAverage(double total, int numScores)
{
float average;
//Calculate the average
average = total / numScores;
//Display the results.
cout << fixed << showpoint << setprecision(2);
cout << "Average Score: " << average << endl;
}