Traccia 2- Scrivere un programma che carichi due vettori X e Y di interi, li fonda in un unico vettore Z e ordini il vettore in modo crescente. Si visualizzi il risultato ottenuto. In entrambi i casi si utilizzino i puntatori e le variabili dinamiche. #include <iostream>#include <string>using namespace std;int x[100],y[100],z[200];int n,m,d,k;int *p,*q,*r;void carica (int *z,int d){ int j,k; for (j=0;j<d;j++) {cout << “inserisci il numero \t”; cin >> *(z+j); cout << endl;} cout << “—- fine carica —-“<<endl;}void fondi (int *a,int *b,int *c,int n1,int m1, int d1){ int k; for (k=0;k<n1;k++) *(c+k)=*(a+k); d1=m1+n1; for (k=n1;k<d1;k++) *(c+k)=*(b+k-n1);}void ordina(int *c,int d1){ int i,j,tmp; int *d; d=c ; for (i=0;i<d1-1;i++){ for (j=i+1;j<d1;j++ ){ if (*(c+i)>*(d+j)) { tmp=*(c+i); *(c+i)=*(d+j); *(d+j)=tmp;} }}}int main () { cout << “Dimensione primo vettore:\n”; cin >> n; p=x; carica(p,n); cout << “Dimensione secondo vettore:\n”; cin >> m; q=y; carica(q,m); r=z; d=m+n; fondi(p,q,r,n,m,d); ordina(r,d); cout << “stampa del vettore fuso e ordinato \n”<< endl; cout << “———————\n”; for (k=0;k<d;k++) cout << *(r+k) << “\t”; cout << “\n————- Fine —————–“<< endl; return 0;} Facebook Twitter Pinterest
Tu devi essere registrato per visualizzare questo articolo.
Esegui la registrazione per accedere a questo contenuto.