I keep getting these errors: Error 1: error C2664: \'void countNumber(int,int)\'
ID: 654891 • Letter: I
Question
I keep getting these errors:
Error 1: error C2664: 'void countNumber(int,int)' : cannot convert argument 1 from 'int [100]' to 'int'
Error 2: error C2664: 'void displayResults(int)' : cannot convert argument 1 from 'int [100]' to 'int'
What am I doing wrong?
#include<iostream>
using namespace std;
void countNumber(int, int);
void displayResults(int);
int main()
{
int number;
int array[100];
do
{
cout << "Enter a one-digit number or 10 to exit: ";
cin >> number;
if (number < 0 || number > 10)
cout << "The value " << number << " is not valid." << endl;
countNumber(array, number);
} while (number != 10);
displayResults(array);
return 0;
}
//
void countNumber(int array[], int number)
{
switch (number)
{
case 0: array[0]++;
break;
case 1: array[1]++;
break;
case 2: array[2]++;
break;
case 3: array[3]++;
break;
case 4: array[4]++;
break;
case 5: array[5]++;
break;
case 6: array[6]++;
break;
case 7: array[7]++;
break;
case 8: array[8]++;
break;
case 9: array[9]++;
break;
}
}
//
void displayResults(int array[])
{
for (int i = 0; i < 10; i++)
{
if (array[i] > 0)
cout << "You entered " << array[i] << " ," << i << "(s)" << endl;
}
}
Explanation / Answer
Ans:check out this programm below
replace this line void countNumber(int, int);
with this line void countNumber(int[], int);
now execute the programm
#include<iostream>
using namespace std;
void countNumber(int[], int);
void displayResults(int);
int main()
{
int number;
int array[100];
do
{
cout << "Enter a one-digit number or 10 to exit: ";
cin >> number;
if (number < 0 || number > 10)
cout << "The value " << number<< " is not valid." << endl;
countNumber(array, number);
} while (number != 10);
displayResults(array);
return 0;
}
//
void countNumber(int array[], int number)
{
switch (number)
{
case 0: array[0]++;
break;
case 1: array[1]++;
break;
case 2: array[2]++;
break;
case 3: array[3]++;
break;
case 4: array[4]++;
break;
case 5: array[5]++;
break;
case 6: array[6]++;
break;
case 7: array[7]++;
break;
case 8: array[8]++;
break;
case 9: array[9]++;
break;
}
}
//
void displayResults(int array[])
{
for (int i = 0; i < 10; i++)
{
if (array[i] > 0)
cout << "You entered "<< array[i] << " ," << i << "(s)" << endl;
}
}