Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Chương trình C++ kiểm tra khả năng nhân hai ma trận


Hai ma trận được gọi là có thể nhân nhau (multiplicable) nếu số cột của ma trận thứ nhất bằng số hàng của ma trận thứ hai. Ví dụ:

Số hàng ma trận 1 = 3    Số cột ma trận 1 = 2
Số hàng ma trận 2 = 2    Số cột ma trận 2 = 5
Hai ma trận có thể nhân nhau vì số cột ma trận 1 = số hàng ma trận 2.

Chương trình kiểm tra khả năng nhân hai ma trận:

Ví dụ

#include <iostream>
using namespace std;

int main() {
  int row1, column1, row2, column2;
  cout << "Nhập kích thước ma trận thứ nhất: " << endl;
  cin >> row1;
  cin >> column1;
  cout << "Nhập kích thước ma trận thứ hai: " << endl;
  cin >> row2;
  cin >> column2;
  cout << "Ma trận thứ nhất" << endl;
  cout << "Số hàng: " << row1 << endl;
  cout << "Số cột: " << column1 << endl;
  cout << "Ma trận thứ hai" << endl;
  cout << "Số hàng: " << row2 << endl;
  cout << "Số cột: " << column2 << endl;
  if (column1 == row2)
    cout << "Hai ma trận có thể nhân nhau";
  else
    cout << "Hai ma trận không thể nhân nhau";
  return 0;
}

Kết quả đầu ra

Nhập kích thước ma trận thứ nhất: 2 3
Nhập kích thước ma trận thứ hai: 3 3
Ma trận thứ nhất
Số hàng: 2
Số cột: 3
Ma trận thứ hai
Số hàng: 3
Số cột: 3
Hai ma trận có thể nhân nhau

Trong chương trình trên, trước tiên nhập kích thước hai ma trận từ người dùng:

cout << "Nhập kích thước ma trận thứ nhất: " << endl;
cin >> row1;
cin >> column1;
cout << "Nhập kích thước ma trận thứ hai: " << endl;
cin >> row2;
cin >> column2;

Sau đó in số hàng và cột của các ma trận:

cout << "Ma trận thứ nhất" << endl;
cout << "Số hàng: " << row1 << endl;
cout << "Số cột: " << column1 << endl;
cout << "Ma trận thứ hai" << endl;
cout << "Số hàng: " << row2 << endl;
cout << "Số cột: " << column2 << endl;

Nếu số cột ma trận 1 bằng số hàng ma trận 2, in ra có thể nhân nhau, ngược lại thì không:

if (column1 == row2)
  cout << "Hai ma trận có thể nhân nhau";
else
  cout << "Hai ma trận không thể nhân nhau";