Implementare una funzione C++ ricorsiva che riceva come parametro un array di interi vett, due indici inf e sup (con inf
diversi da 0.
Esempio:
vett: 9, 7, 3, 0, 3, 6, 9, 8
inf: 2
sup: 5
Risultato: 36 (=3*3*6)
int prodottoNonNulli(const int vett[], int inf, int sup);
int main()
{
int vett[]={9,7,0,0,0,0,0,8};
int inf=2;
int sup=5;
printf("%d\n",prodottoNonNulli(vett,inf,sup));
getchar();
}
int prodottoNonNulli(const int vett[], int inf, int sup)
{
if(inf > sup)
return 1;
else if(vett[inf] != 0)
return vett[inf]*prodottoNonNulli(vett,inf+1,sup);
else
return prodottoNonNulli(vett,inf+1,sup);
}
Esercizio C - Ricorsione
Validato da
Marco Sbardella
1 min
Esperto
Vota
3/5
Contenuto verificato e approvato dal Team di Esperti di Skuola.net
Processo di Validazione
Ogni contenuto pubblicato su Skuola.net è sottoposto a un processo di validazione in tre fasi, per garantirne originalità, accuratezza e qualità:
- Anti-plagio - verifica automatica dell'originalità tramite software
- Rilevamento AI – Verifichiamo che i testi non siano generati da intelligenze artificiali utilizzando appositi sistemi di rilevamento.
- Revisione del Team di Esperti – approvazione finale da un professionista della materia
Esercizo C che permette di esercitarsi sull'uso della ricorsione e del passaggio di parametri tra funzioni (correlato da soluzione).
Esercizio C - Ricorsione
Appunti correlati
Recensioni
3/5
1 recensione
5 stelle
4 stelle
3 stelle
2 stelle
1 stella
0
0
1
0
0
Studente Anonimo
7 Luglio 2016