Ho corretto il passo base e ho cambiato la condizione dell'if perchè anche la seconda espressione deve sommare M[i+1].
Qual'è il parametro che manca?! Non mi sembra .. ho messo la matrice M, la sua dimensione e l'indice i.
codice:
bool parialternati(int M[], int dim, int i){
if(i==dim) //passo base
return false;
if(M[i] + M[i+1]%2==0 && M[i+1] + M[i+2]%2!=0) //passo ricorsivo
return true;
return parialternati(M[], dim, ++i);
}
La prima invocazione nel main per la funzione deve essere:
parialternati(M, dim, 1);
Come prima invocazione ho assegnato i a 1 passando un 1 direttamente nella funzione. Cosi' facendo non bisogna obbligatoriamente specificare i=1 nell'inizializzazione del main, vero?