Dovrei risolvere questo esercizio:
Si scriva un programma che legga in input una matrice e verifichi se esiste un percorso sulla matrice dalla prima all'ultima riga, formato tutto da elementi pari a 1.
Il percorso deve passare esattamente una volta per ciascuna riga.
Dopo aver fatto l'inserimento della matrice mi son bloccato...non so come andare avanti :/
Dovrei svolgerlo senza usare le funzioni, help me!!
EDIT: cercando su internet ho trovato soluzioni solo con le funzioni..ma essendo che non le ho ancora fatte non le capisco..ad esempio questo codice
int percorso(int mat[N][M], int i, int j)
{
int risp;
if (mat[i][j] == 1)
{
if (i==N-1)
{
risp = 1;
}
else if ((j>0 && percorso(mat, i+1, j-1)) || percorso(mat, i+1, j) || (j<M-1 && percorso(mat, i+1, j+1)))
{
risp = 1;
}
else
{
risp = 0;
}
}
else
{
risp = 0;
}
return(risp);
}
tradotto in un codice normale senza funzione come diventa?