Quando le soluzioni di un esercizio sono considerate ricorsive?

P
Powner (5600 points)
24 68 85
asked Nov 25, 2017 in Funzionamento degli homework by Powner (5,600 points)
closed Nov 26, 2017 by andrea.sterbini
Nel pomeriggio il prof. Sterbini ha scritto in alcuni commenti che le soluzioni devono essere obbligatoriamente ricorsive. Niente di cui stupirsi, visto che l'homework è incentrato su questo topic. In più, ha sottolineato che i grader verranno aggiornati con dei controlli di ricorsività.

Quello su cui vorrei avere alcune delucidazioni (se qualcuno ne sa di più, altrimenti mi rivolgo direttamente ai moderatori) è come funzionano questi test, poiché in base al controllo potrei non passarlo. Ad esempio, nell'esercizio 1, il recursion test verrà eseguito solo sulle funzioni richiamate dal grader o a livello generale? Se io avessi scritto delle funzioni ricorsive esterne, non passerei i test?

Inoltre, è possibile non utilizzare la ricorsività nel caso in cui la soluzione più veloce (o più elegante) di un test non la richieda? Oppure ogni test deve essere risolto ricorsivamente?
386 views
closed with note: answered

2 Answers

Best answer
andrea.sterbini (172780 points)
513 935 1789
answered Nov 26, 2017 by andrea.sterbini (172,780 points)
selected Nov 26, 2017 by Powner
I test per la ricorsione verificheranno che tra le funzioni chiamate dal grader (direttamente o indirettamente) ci sia una chiamata ricorsiva (singola o mutua).

(ma forse è più semplice controllarli a mano)
P
Powner (5600 points)
24 68 85
commented Nov 26, 2017 by Powner (5,600 points)
Capito, la ringrazio per la risposta! I nuovi grader avranno questi test implementati?
andrea.sterbini (172780 points)
513 935 1789
commented Nov 26, 2017 by andrea.sterbini (172,780 points)
Se ci riesco sì, vorrei metterli come singoli test, uno per ciascuna funzione (e separati dai test di funzionamento) con un peso un po' più alto degli altri.
Se non ci riesco mi sfoglio i vostri programmi a mano, scriveteli decentemente.
P
Powner (5600 points)
24 68 85
commented Nov 26, 2017 by Powner (5,600 points)
Perfetto! (rofl)
LeonardoEmili (35740 points)
11 65 155
answered Nov 25, 2017 by LeonardoEmili (35,740 points)
Buonasera,
Guarda riguardo l'utilizzo o meno della ricorsione concordo con te che in alcuni casi esistono soluzioni alternative che possono risultare più vantaggiose, tuttavia per questo hw tutte le soluzioni devono essere elaborate via ricorsione.
Per quanto riguarda la ricorsione interna alla chiamata della funzione o esterna alla stessa immagino che il grader verificherà se la soluzione è stata elaborata attraverso "un processo ricorsivo", o almeno io l'ho interpretata così.
Ti auguro una buona serata
Leonardo Emili
P
Powner (5600 points)
24 68 85
commented Nov 25, 2017 by Powner (5,600 points)
La pensiamo allo stesso modo, cercavo una risposta più consapevole e attendibile per esserne sicuro, grazie comunque! :D
LeonardoEmili (35740 points)
11 65 155
commented Nov 25, 2017 by LeonardoEmili (35,740 points)
E di cosa! Fai benissimo