usando namespace std; 
  const int SIZE = 10; 
 
 int FindMax (int lista [] , int current_index , int highest_index ); 
 
 int main () { } 
 
 
 2 
 Defina a função FindMax depois que a função principal para pesquisar uma matriz de forma recursiva para o valor máximo . Este passos função através da matriz, compara os valores e, finalmente, retorna o índice do maior inteiro : 
 
 int main () { } 
 
 
 
 int FindMax (lista int [ ,"] , int current_index , int high_index ) { } 
 
 
 3 
 Configurar um caso base recursiva na função FindMax . Esta declaração irá parar a recursão quando o fim da lista é atingido : 
 
 int FindMax (int lista [] , int current_index , int high_index ) { 
 
 if ( current_index == TAMANHO ) {return high_index ; 
 } } 
 
 4 
 Defina a ação de busca recursiva na função FindMax . As declarações if-else sempre manter esse high_index mantém o valor do índice do número inteiro mais alto na lista: 
 
 int FindMax (int lista [] , int current_index , int high_index ) { 
 
 se ( current_index == TAMANHO ) {return high_index ;} 
 
 else if ( lista [ high_index ] < lista [ current_index ] ) {return FindMax (lista, (index + 1) , current_index ); } else {return FindMax (lista, (index + 1) , high_index );}} 
 5 
 definir uma matriz com uma mistura aleatória de inteiros dentro da função principal : 
 
 int main () { 
 
 int arr [ 10 ] = { 3 , 2 , 6 , 7 , 10 , 45 , 8 , 99 , 0 , 11 } ; } 
 6 
 declarar um número inteiro função principal, e chamar a função FindMax para definir o valor desse inteiro para o índice do maior valor na lista : 
 
 # include  using namespace std; 
  const int TAMANHO = 10; 
 
 int FindMax (int lista [] , int current_index , int highest_index ); 
 
 int main () { int 
 
 arr [ 10] = {3 , 2 , 6 , 7 , 10 , 45 , 8 , 99 , 0 , 11 } ; 
 
 int maior = FindMax ( arr , 0 , 0 ) ; } 
 
 
 
 int FindMax (int lista [] , int current_index , int high_index ) { 
 
 if ( current_index == TAMANHO ) {return high_index ;} 
 
 else if ( lista [ high_index ] < lista [ current_index ] ) {return FindMax (lista, (index + 1) , current_index ); } else {return FindMax (lista, (index + 1) , high_index );}}