Ciao a tutti, sono nuovo, frequento il primo anno di ingegneria al politecnico e ho l'esame di informatica A, qualcuno saprebbe compilare il seguente codice?
Ricorsione-2
Consideriamo un vettore di interi che contiene in ogni cella un intero positivo da associare al peso, in grammi, di una pallina per decorare un albero di natale. La prima e l’ultima cella del vettore contengono i pesi delle palline sul primo livello dell’albero. La seconda e la penultima cella del vettore contengono i pesi delle palline sul secondo livello dell’albero, ecc.
Diciamo che il vettore rappresenta un albero di natale se la somma dei pesi della coppia di palline su ogni livello è sempre maggiore o uguale alla somma di tutte le palline nei livelli superiori e
la differenza di peso tra le due palline sullo stesso livello non supera i 5 grammi.
Scrivere un sottoprogramma ricorsivo che dato un vettore di interi verifichi se può rappresentare un albero di natale o meno, restituendo la somma del peso palline in caso affermativo e -1 in caso contrario.
Scrivere un programma main(), che acquisisca da tastiera una sequenza di N numeri positivi e verifichi la funzionalità del sottoprogramma precedente invocandolo con un argomento che sia un vettore dinamico contenente solo i numeri pari acquisiti da tastiera.
Esempio:
vet[5] == {8, 4, 2, 4, 6} // ok, ritorna 24
vet[5] == {4, 8, 2, 6, 4} // NO, ritorna -1
vet[5] == {12, 2, 2, 8, 12} // NO, ritorna -1
vet[4] == {4, 4, 6, 8} // ok, ritorna 22