Salvee qualcuno saprebbe dirmi dati due vettori e le loro due dimensioni come faccio a copiare gli elementi di v2 nel primo vettore???vi prego datemi una mano,saluto.
Salvee qualcuno saprebbe dirmi dati due vettori e le loro due dimensioni come faccio a copiare gli elementi di v2 nel primo vettore???vi prego datemi una mano,saluto.
è un vettore stile C o uno STD del C++. Devi appendere o sovrascrivere gli elementi ?
ciao
sergio
ad esempio se ho un v1(1,5,7,3,4,6) e un v2(8,4,6,7,2,1) il vettore v1 deve essere formato da (1,1,2,3,4,4,5,6,6,7,7,8).poi a ordinarli lo so fare il problema è inserire quelli di v2 in v1.
Se usi i vector della STL non ci vuole veramente niente; diverso è il discorso se usi gli array veri e propri.
"Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)
"Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)
http://xvincentx.netsons.org/programBlog
se devi appendere v2 in v1 prima di tutto devi cambiare la dimensione del vettore v1 da size_vi a size_v1 + size_v2, per poter contenere tutto.
Per far questo devi crearti prima un vettore di appoggio che abbia la dimensione size_v1+size_v2 copiare in questo tutto v1 e quindi tutto v2
codice:... v = new int [size_v1 + size_v2]; for (int i = 0; i < size_v1; ++i) v[i] = v1[i]; for (int i= 0; i < size_v2; ++i) v[i + size_v1] = v2[i]; // in v hai il merging dei due vettori ...
grazie questa parte qua gia l'avevo fatta ma ora per la copiatura che codice devo fare???
io per copiare i valori avevo pensato cosi:
void inserisci(int v1[],int v2[],int n1,int n2,int vett[])
{
int i;
int j;
j=n1+n2;
for (i=0;i<n1;i++)
vett[i]=v1[i];
for (i=0;i<n2;i++)
{vett[j] = v2[i];
if(vett[j]<v2[i])
{vett[i+1]=v2[i];}
else
{i++;}
}}
io farei un gran memcpy
"Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)
"Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)
http://xvincentx.netsons.org/programBlog
Cioè cosa sarebbe scusa?
No MP tecnici (non rispondo nemmeno!), usa il forum.