C++ の本で、「配列に数値が出現する回数をカウントする関数を作成する」という練習問題を見つけました。すべて問題ありません。プログラムは動作しています。しかし、演習では、関数は再帰的であるべきだとも言っています。
このように機能する再帰関数を作成するにはどうすればよいですか?
#include <iostream>
int count(int number, int array[], int length)
{
int counter = 0;
for(int i = 0; i < length; i++)
if(array[i] == number)
counter++;
return counter;
}
int main()
{
int numbers[10] = {3,4,1,2,4,5,6,5,4,5};
int number_to_search = 5;
std::cout << number_to_search << " appears "
<< count(number_to_search, numbers, 10)
<< " times in the array.";
return 0;
}