Sunteți pe pagina 1din 2

LUCRAREA DE LABORATOR 2 Alocai memorie dinamic pentru variabile i tablouri. Exemplul . Introducei un vector i inversai-l, schimbai elementele cu locul.

int main() { int& n=*new int(0); // dim. vector cout << "n="; cin >> n; int *v=new int[n]; // vectorul cu n elemente for(int i=0; i<n; i++) { cout << "v[" << i << "]="; cin >> v[i]; } cout << endl << "Vectorul are " << n << " elemente:\n\n"; for(int i=0; i<n; i++) { cout << v[i] << ' '; } cout << endl << endl; int r; for(int i=0; i<n/2; i++) { r=v[i]; v[i]=v[n-1-i]; v[n-1-i]=r; } cout << "Sirul inversat:\n\n"; for(int i=0; i<n; i++) { cout << v[i] << ' '; } cout << endl << endl; return 0; }

Re!olvai problemele "#. 1. Introducei un vector cu elemente double i ordonai-l cresctor. 2. Introducei un vector cu elemente float i calculai lungimea lui. 3. Introducei un vector i calculai norma lui: modulul coordonatei cu cea mai mare valoarea absolut. 4. Introducei un vector i calculai norma lui: suma valorilor absolute a coordonatelor. . Introducei 2 vectori de aceeai dimensiune i calculai suma lor ! "#i$%&#i$'(#i$ ). Exemplul 2. Introducei o matrice *trat i calculai urma matricei: suma elementelor de *e diagonala *rinci*al.
int main() { int& n=*new int(0); cout << "n="; cin >> n; // nr. linii = nr. coloane int **b = new int *[n]; // pointeri spre linii for(int i=0; i<n; i++) { b[i] = new int[n]; for(int j=0; j<n; j++) { cin >> b[i][j]; } // am introdus linia i

} // am introdus toata matricea cout << endl << endl << "Matricea initiala are " << n << " linii si " << n << " coloane:\n\n"; for(int i=0; i<n; i++) { for(int j=0; j<n; j++) { cout << b[i][j] << ' '; } // am extras linia i cout << endl << endl; }// am extras toata matricea int& u=*new int(0); for(int i=0; i<n; i++) { u+=b[i][i]; } cout << "Urma matricei este: " << u << endl << endl; for(int i=0; i<n; i++) { delete []b[i]; // am dealocat linia i } delete []b; // am dealocat pointerii spre linii return 0; }

Re!olvai problemele $" %. +. Introducei o matrice dre*tunghiular i aflai numrul liniei ,n care se gsete cel mai mare numr. -. Introducei o matrice dre*tunghiular i calculai matricea trans*us. .. Introducei o matrice dre*tunghiular i un vector coloan i calculai *rodusul dintre matrice i vector. /. Introducei o matrice dre*tunghiular i un vector linie i calculai *rodusul dintre vector i matrice. 10. Introducei un vector coloan i un vector linie i calculai matricea *rodus dintre *rimul vector i al doilea. Ar&ivai toate cele % pro'rame (ntr"un )iier .rar i trimitei )iierul pe *erver +