Ciao a tutti. Ho un problema con questo programma in c++ . Devo riempiere due vettori (uno per volta) con l'indice preso in input (l'ho fatto). il problema sorge quando devo fare l'ordinamento con il bubble sort. qualcuno mi potrebbe dare una mano, per favore? GRAZIE A CHI MI AIUTERA'
ps: non so come funziona il Code(mi dice attivo), è la prima volta che scrivo
int main() {
int num;
int i;
int vett[size];
int vett2 [size];
int vett3 [size];
int riemp,riemp2,max;
srand(time(NULL));
i=0;
do {
cout<<"Inserisci quanti numeri deve avere il vettore: ";
cin>>num;
}while (size<=0);
for(i=0;i<num;i++)
cout<<"Ho generato i numeri: "<<rand()%10<<endl;
do {
cout<<"Inserisci quanti numeri deve avere il vettore: ";
cin>>num;
}while (size<=0);
for(i=0;i<num;i++) //riempimento
cout<<"Ho generato il numero: "<<rand()%10<<endl;
//ciclo di copia
for(i=0;i<num;i++)
vett2
=vett;
cout<<"\n\n inzia il bubble Sort\n\n";
for(i=0;i<size-1;i++){
cout<<"Il vettore e' cosi' adesso:"<<endl;
for(int k=0;k<size-i;k++)//ciclo di visualizzazione
cout<<"il "<<k+1<<"^ elemento vale: "<<vett2[k]<<endl;
for(int j=0;j<size-1-i;j++){//ciclo interno
cout<<"Confronto "<<vett2[j]<<" con "<<vett2[j+1]<<endl;
if (vett2[j]>vett2[j+1]){//confronta ogni elemento con il successivo
cout<<"effettuo lo scambio"<<endl;
int tmp=vett2[j+1];
vett2[j+1]=vett2[j];
vett2[j]=tmp;
}else
cout<<"non effettuo lo scambio"<<endl;
for(int k=0;k<size-i;k++)//ciclo di visualizzazione
cout<<vett2[k]<<" ";
}
cout<<"\nIl vettore e' cosi' adesso:"<<endl;
for(int k=0;k<size;k++)//ciclo di visualizzazione
cout<<"il "<<k+1<<"^ elemento vale: "<<vett2[k]<<endl;
}
//vett3 che contiene gli elementi uguali di vett1 e vett2
int riemp3 = 0, j, k = 0;
int vett3[max];
for(i=0; i<riemp; i++){
for(j=0; j<riemp2; j++){
if(vett==vett2[j]){
vett3[k] = vett;
riemp3++;
k++;
}
}
}
cout<<'\n'<<"Il vett3 e'composto da: ";
for(i=0; i<riemp3; i++){
cout<<vett3<<' ';
}
return 0;
}
lascio il link https://onlinegdb.com/BkMfp-BX