Salve, mnemonicamente mi sono fatto lo schema dello stack per questo esercizio, e non risco a capire perchè non funziona!!
Si tratta di verificare con una bool ricorsiva se un array è ordinato in ordine crescente.
non ci sono errori ma mi va in crash!codice:#include <iostream> #include <cstdlib> using namespace std; bool m(int, int); bool verifica(int a[],int n) { if (n==1) return true; if(a[n]>a[n-1]) return verifica(a,n--); else return false; } int main() { int n=5; int aa[]={4,5,6,7,8}; if(verifica(aa,n)) cout<<"si è ordinato "<<'\n'; return 0; }
l'idea mia è che se l'array ha dimensione 1 è ordianto, poi gli passo sempre lo stesso array, e verifico ogni volta se l'elemento successivo è maggiore del precedente.
Ovviamnte scalo n, fino alla via di guga