Rancang dan Buatlah Sebuah Program Yang Membaca Sebuah Matriks Berukuran N × M


Rancang dan buatlah sebuah program yang membaca sebuah matriks berukuran N × M dan mencetak hasil transpose matriksnya.

Jawaban:

Berikut adalah program yang membaca sebuah matriks berukuran N × M dan mencetak hasil transpose matriksnya.

#include <iostream>
using namespace std;

int main() {
    int N, M;

    // Meminta pengguna untuk memasukkan ukuran matriks
    cout << "Masukkan jumlah baris (N): ";
    cin >> N;
    cout << "Masukkan jumlah kolom (M): ";
    cin >> M;

    // Mendeklarasikan matriks
    int matrix[N][M];

    // Meminta pengguna untuk memasukkan elemen-elemen matriks
    cout << "Masukkan elemen-elemen matriks:\n";
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < M; j++) {
            cout << "Masukkan elemen matriks[" << i << "][" << j << "]: ";
            cin >> matrix[i][j];
        }
    }

    // Menampilkan matriks sebelum di-transpose
    cout << "\nMatriks sebelum di-transpose:\n";
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < M; j++) {
            cout << matrix[i][j] << " ";
        }
        cout << endl;
    }

    // Menghitung dan menampilkan hasil transpose matriks
    cout << "\nHasil transpose matriks:\n";
    for (int j = 0; j < M; j++) {
        for (int i = 0; i < N; i++) {
            cout << matrix[i][j] << " ";
        }
        cout << endl;
    }

    return 0;
}

Dalam program di atas, pengguna diminta untuk memasukkan ukuran matriks (jumlah baris dan kolom) dan kemudian memasukkan elemen-elemen matriks. Setelah itu, program akan menampilkan matriks sebelum di-transpose, diikuti oleh hasil transpose matriks.

Program ini menggunakan array 2 dimensi dalam bahasa C++ untuk menyimpan matriks. Untuk mencetak hasil transpose, dilakukan perulangan terhadap kolom dan kemudian baris, sehingga elemen-elemen matriks ditampilkan dalam urutan transpose.