Salve, un altra ricorsione questa volta almeno per me un po piu complessa dove provo a compilare ma non mi stampa l'array all'inverso.
la traccia dice cosi:
– Dato un vettore di interi, costruire (con una funzione ricorsiva) un secondo vettore che contiene gli
stessi elementi del primo ma in ordine inverso.
Esempio: se A = [1,2,3,4,5], il vettore costruito dovrà essere B = [5,4,3,2,1].*/
codice:# include <iostream> using namespace std; bool costruzione (int [],int [], int ,int); void stampa (int []); const int n=5; int main () { int a[n]={1,2,3,4,5}; int b[n]={0}; if (costruzione (a,b,4,0)) cout<<endl; stampa (b); return 0; } bool costruzione (int a[],int b[], int i, int j) { if (i==n-1) return true; if (a[i]!=b[j]) return false; return costruzione (a,b,i-1,j+1); } void stampa (int b[]) { for (int j=0;j<n;j++) cout<<b[j]; cout<<endl; }

Rispondi quotando
prova un po' a modificare il codice se poi non riesci chiedi pure.
