queste son le mie:
Esercizio 1
Dato un vettore di interi v[First..Last], scrivere una funzione ricorsiva lineare (non ricorsiva in coda) che, dato un valore elem, calcoli il numero di occorrenze di tale valore nel vettore v. La funzione deve avere il seguente prototipo int conta (int v[], int First, int Last, int elem); la funzione restituisce il numero di occorrenze.
Esercizio 2
Dati due valori interi positivi base ed exp, scrivere una funzione ricorsiva lineare che calcoli il valore di baseexp. La funzione deve avere il seguente prototipo int potenza (int base, int exp); la funzione restituisce il valore calcolato
le soluzioni che ho messo sono:
int conta (int v[], int First, int Last, int elem){
if(First
if(v[First]==elem)
return 1+conta(v,First+1,Last,elem);
else return 0+conta(v,First+1,Last,elem);
}else return 0;
}
int potenza (int base, int exp){
if(exp==0)return 1;
return base*potenza(base,exp-1);
}