Texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent
Download 1.14 Mb. Pdf ko'rish
|
MT oraliq
O‘ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
Oraliq nazorat ishi Bajardi: 411-19 guruh talabasi Xabibullayev Qodirjon Tekshirdi: Akbarova Marg’uba
Toshkent 2020 «Маълумотлар тузилмаси ва алгоритмлар» фанидан оралик назорат 28-билет 1. Тўғридан тўғри қўшиш орқали саралаш 2. Heap tree ва уни ташкил этиш усуллари 3. Матрицани матрицага кўпайтиринг Кафедра мудири: Керимов К.Ф.
3-savol Matritsani matritsaga ko’paytirish Dastur kodi #include #include using namespace std; void matrix_print(int **a, int m, int n) { // matritsani jadval shaklida chiqarish for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { cout << a[i][j] << "\t"; } cout << "\n"; } } void matrix_input (int **a, int m, int n) { for (int i = 0; i < m; i++) for (int j = 0; j < n; j++)
cin >> a[i][j]; } void matrix_delete (int **a, int m) { // Dinamik massivdan foydalanib bo'lgandan so'ng // uni xotiradan o'chirish lozim // oldin massiv satrlari o'chiriladi (xotira bo'shatiladi) for (int i = 0; i < m; i++) delete []a[i]; // endi massivning o'zini o'chirish mumkin delete []a; } // create_matrix - ko'rsatkichga ko'rsatkich qaytaradi int ** create_matrix(int m, int n) { int **ptr; // matritsa satrlari uchun xotira ajratish ptr = new int *[m]; for (int i = 0; i < m; i++) // matritsa ustunlari uchun xotira ajratish ptr[i] = new int [n]; return ptr; } int main() { int m, n, p, **a, **b, **c; cout << "A matritsa satrlar sonini kiriting \nm="; cin >> m; cout << "A matritsa ustunlar sonini kiriting \nn="; cin >> n; cout << "B matritsa ustunlar sonini kiriting \np="; cin >> p; // matritsalarni hosil qilish a = create_matrix(m, n); b = create_matrix(n, p); c = create_matrix(m, p); cout << "A massiv elementlarini kiriting \n"; matrix_input(a, m, n); cout << "B massiv elementlarini kiriting \n"; matrix_input(b, n, p); cout << "Kiritilgan A matritsa\n"; matrix_print(a, m, n); cout << "Kiritilgan B matritsa\n"; matrix_print(b, n, p); // c matritsa elementlarini 0 qilish for (int i = 0; i < m; i++) for (int j = 0; j < p; j++) c[i][j] = 0; // A matritsani B matritsaga ko'paytirish for (int i = 0; i < m; i++) for (int j = 0; j < n; j++) for (int k = 0; k < p; k++) { c[i][k] += a[i][j] * b[j][k]; } cout << "Natija C matritsa\n"; matrix_print(c, m, p); matrix_delete(a, m); // a matritsani o'chirish matrix_delete(b, n); // b matritsani o'chirish matrix_delete(c, m); // c matritsani o'chirish return 0; system ("pause"); } Download 1.14 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling