Tổng hợp các phép toán trên ma trận từ cơ bản đến nâng cao trong C++

Code Dream Team 17/04/2026
Ví dụ minh họa ma trận 

Trong quá trình giảng dạy, Code Dream nhận thấy nhiều học viên gặp khó khăn khi học ma trận do chưa hiểu rõ cách áp dụng vào lập trình. Trong khi đó, ma trận lại là kiến thức quan trọng, xuất hiện nhiều trong thuật toán và các bài toán thực tế. Vì vậy, việc nắm vững các phép toán trên ma trận là bước nền tảng không thể thiếu. Cùng Code Dream tìm hiểu chi tiết trong bài viết dưới đây nhé!

Ma trận là gì?

Ma trận là một bảng các số được sắp xếp theo hàng và cột, thường được ký hiệu bằng các chữ cái in hoa như A, B, C.

Một ma trận có m hàng và n cột được gọi là ma trận m × n.

Ma trận là nền tảng để thực hiện các phép toán xử lý dữ liệu trong toán học và lập trình.

Ví dụ minh họa ma trận 
Ví dụ minh họa ma trận

Các phép toán trên ma trận cơ bản

Đây là những phép toán nền tảng mà người học cần nắm vững trước khi tiếp cận các nội dung ma trận nâng cao trong toán học và lập trình.

Phép cộng ma trận

Phép cộng ma trận chỉ thực hiện được khi hai ma trận có cùng số hàng và số cột.

Quy tắc: Cộng các phần tử tương ứng của hai ma trận

Ví dụ : 

#include <iostream>

using namespace std;


int main() {

    int a[2][2] = {{1,2},{3,4}};

    int b[2][2] = {{5,6},{7,8}};

    int c[2][2];


    for(int i = 0; i < 2; i++) {

        for(int j = 0; j < 2; j++) {

            c[i][j] = a[i][j] + b[i][j];
        }
    }

    // in kết quả

    for(int i = 0; i < 2; i++) {

        for(int j = 0; j < 2; j++) {

            cout << c[i][j] << " ";
        }
        cout << endl;
    }
}

=> Kết quả nhận về : 

6  8

10 12

Phép trừ ma trận

Phép trừ ma trận có điều kiện tương tự phép cộng: Hai ma trận phải cùng kích thước

Cách thực hiện: Trừ từng phần tử tương ứng của hai ma trận

Ví dụ:

#include <iostream>

using namespace std;


int main() {

    int a[2][2] = {{1,2},{3,4}};

    int b[2][2] = {{5,6},{7,8}};

    int c[2][2];


    for(int i = 0; i < 2; i++) {

        for(int j = 0; j < 2; j++) {

            c[i][j] = a[i][j] + b[i][j];
        }
    }

    // in kết quả

    for(int i = 0; i < 2; i++) {

        for(int j = 0; j < 2; j++) {

            cout << c[i][j] << " ";
        }
        cout << endl;
    }
}

=> Kết quả nhận được:

-4 -4

-4 -4

Phép nhân ma trận 

Lấy 1 hàng của A nhân với 1 cột của B rồi cộng lại

Điều kiện: Số cột của A = số hàng của B

Ví dụ: 

#include <iostream>

using namespace std;

int main() {

    int a[2][2] = {{1,2},{3,4}};

    int b[2][2] = {{5,6},{7,8}};

    int c[2][2] = {0};

    for(int i = 0; i < 2; i++) {

        for(int j = 0; j < 2; j++) {

            for(int k = 0; k < 2; k++) {

                c[i][j] += a[i][k] * b[k][j];
            }
        }
    }

    // in kết quả

    for(int i = 0; i < 2; i++) {

        for(int j = 0; j < 2; j++) {

            cout << c[i][j] << " ";
        }
        cout << endl;
    }
}

=> Nhận về kết quả:

19 22

43 50

Phép chuyển vị ma trận

Ma trận chuyển vị là ma trận thu được bằng cách đổi hàng thành cột.

Ký hiệu: A^T

Ví dụ:

1 2 3

4 5 6

Code: 

int t[3][2];

for(int i = 0; i < 2; i++) {

    for(int j = 0; j < 3; j++) {

        t[j][i] = a[i][j];
    }
}

=> Kết quả nhận được: 

1 4

2 5

3 6

Phép tính tổng các phần tử

Cộng tất cả các phần tử trong ma trận

Ví dụ: 

1 2

3 4

Code: 

int sum = 0;

for(int i = 0; i < 2; i++) {

    for(int j = 0; j < 2; j++) {

        sum += a[i][j];
    }
}

=> Kết quả tổng bằng 10

Một số lỗi người mới thường mắc phải khi học các phép toán trong ma trận trong C++ và cách khắc phục 

1. Nhầm chỉ số hàng – cột (i, j)

Lỗi:Lấy ngược hàng và cột => Dễ gây sai kết quả hoặc lỗi runtime

Ví dụ sai: 

for(int i = 0; i < n; i++)

    for(int j = 0; j < m; j++)

        cout << a[j][i]; // sai

Cách đúng: 

cout << a[i][j];

Nguyên tắc: i là hàng, j là cột 

 2. Nhân ma trận sai bản chất

Khi nhân hai mà trận, nhiều người mới học nhầm tưởng lấy hàng nhân hàng, cột nhân cột, nhưng thực tế phải là lấy hàng của ma trận này, nhân với cột của ma trận kia

Ví dụ:

for(int k = 0; k < m; k++) {

    c[i][j] += a[i][k] * b[k][j];

}

Nguyên tắc: Hàng của A × cột của B

3. Quên khởi tạo mảng kết quả khi nhân

Ví dụ sai: 

int c[100][100]; 

Lỗi: chưa gán giá trị ban đầu, c[i][j] chứa rác → kết quả sai
Cách đúng: 

int c[100][100] = {0};

Học toán và lập trình tại Code Dream

Sau khi nắm được các phép toán trên ma trận, điều quan trọng tiếp theo là hiểu cách áp dụng kiến thức này vào lập trình và giải quyết bài toán thực tế. Đây cũng chính là lý do nhiều học viên lựa chọn học tập tại Code Dream.

Tại Code Dream, học viên không chỉ học lý thuyết khô khan mà còn được:

Giải thích kiến thức bằng ví dụ trực quan, dễ hiểu

Thay vì chỉ học công thức khô khan, các phép toán ma trận được giảng dạy thông qua hình ảnh minh họa, ví dụ cụ thể và cách suy nghĩ từng bước, giúp học viên hiểu bản chất ngay từ đầu, kể cả khi chưa có nền tảng vững.

Kết hợp toán học với lập trình (C++, Python)

Học viên không chỉ dừng lại ở việc “hiểu toán” mà còn được hướng dẫn cách:

  • Chuyển đổi ý tưởng toán học thành code
  • Áp dụng trực tiếp vào bài tập lập trình
  • Rèn luyện tư duy giải thuật ngay từ những bài cơ bản

Điều này giúp bạn không bị “học lệch” giữa toán và code, mà phát triển đồng đều cả hai.

Code Dream cùng toán học với lập trình (C++, Python)
Code Dream cùng toán học với lập trình (C++, Python)

Lộ trình học rõ ràng từ cơ bản đến nâng cao

Chương trình học được thiết kế theo từng bước:

  • Bắt đầu từ những kiến thức nền tảng nhất (ma trận, vòng lặp, biến,…)
  • Tiến dần lên các bài toán phức tạp hơn (nhân ma trận, tối ưu, ứng dụng thực tế,…)

Nhờ đó, học viên không bị choáng ngợp và luôn biết mình đang học gì, cần cải thiện ở đâu.

Thực hành liên tục – học đi đôi với làm

Mỗi buổi học đều đi kèm:

  • Bài tập áp dụng ngay
  • Bài luyện tập từ dễ đến khó
  • Hướng dẫn sửa lỗi chi tiết

Giúp học viên hiểu sâu, nhớ lâu và tránh các lỗi sai phổ biến khi code

Giáo trình độc quyền, tối ưu cho người mới

Tài liệu học tại Code Dream được biên soạn riêng:

  • Ngắn gọn, dễ hiểu
  • Có ví dụ minh họa rõ ràng
  • Phù hợp với người chưa có nền tảng

Bạn sẽ không còn cảm giác “học mà không hiểu mình đang học gì”

Đội ngũ giáo viên chất lượng, giàu kinh nghiệm

Học viên được học cùng:

  • Giáo viên có chuyên môn vững về toán và lập trình
  • Kinh nghiệm giảng dạy thực tế
  • Luôn hỗ trợ, giải đáp tận tình
  • Không chỉ dạy cách làm, mà còn dạy cách tư duy
Học lập trình uy tín chất lượng tại Code Dream
Học lập trình uy tín chất lượng tại Code Dream

Code Dream hướng tới việc giúp học viên hiểu đúng bản chất – áp dụng thành thạo – tự tin làm bài và lập trình.

Trên đây là tổng hợp các phép toán trên ma trận bạn cần nắm được. Nếu bạn đang tìm kiếm một lộ trình học bài bản, dễ hiểu và có tính ứng dụng cao, Code Dream sẽ là lựa chọn phù hợp để đồng hành cùng bạn trên con đường chinh phục toán học và lập trình thuật toán. Liên hệ ngay với Code Dream để được tư vấn luôn và ngay nhé!

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *