/* Matrice Programma a cura di Vincenzo Capuano. I diritti sul programma sono riservati all'autore. Per informazioni: enzocap@interfree.it - www.sitoserio.it/cpp */ #include #include class matrice{ int **p; int r,c; public: matrice(int riga,int colonna); //costruttore ~matrice(); //distruttore matrice(const matrice &ob1); //costruttore di copie void riempi(); //input void visual(); //output void operator=(const matrice &ob); //overloadig op. di assegnamento matrice operator++(); //incremento valori di una matrice matrice operator+(const matrice &ob); //somma di due matrici friend matrice operator+(const matrice &ob,const int &x); friend matrice operator+(const int &x,const matrice &ob); }; matrice::matrice(int riga,int colonna) { int i,j; r=riga; c=colonna; p=new int*[r]; for(i=0;i>p[i][j]; } } void matrice::visual() { int i,j; for(i=0;i>r; cout<<"\n inserisci il numero di colonna: "; cin>>c; matrice A(r,c); cout<<"\n-Riempimento-"; A.riempi(); A.visual(); do { cout<<"\n digita 1 per continuare: "; cin>>rip; } while(rip!=1); cout<<"\n -costruttore di copie-"; matrice B(A); B.visual(); do { cout<<"\n digita 1 per continuare: "; cin>>rip; } while(rip!=1); cout<<"\n -incremento di 1-"; ++A; A.visual(); cout<<"\n -incremento manuale-"; cout<<"\n digita il valore: "; cin>>val; B=B+val; B.visual(); cout<<"\n\n -somma delle due matrici incrementate-"; matrice S(r,c); S=A+B; S.visual(); cout<<"\n\n Vuoi continuare ancora?"; cout<<"\n (si=1,no=altro): "; cin>>rip; } while(rip==1); }