* Nhập/xuất ma trận số nguyên. Khai báo[r]
(1)(2)*Ma trận
Cách 1: Con trỏ hằng
< KDL> < Tên mảng >[< Số dòng tối đa>][<Số cột tối đa>];
*Ví dụ:
int A[10][10]; //Khai báo ma trận kiểu int gồm 10 dòng, 10 cột float b[10][10];//Khai báo ma trận kiểu float gồm 10 dòng 10 cột
Cách : Con trỏ
< Kiểu dữ liệu > **<Tên mảng>;
*Ví dụ :
(3)*Định nghĩa kiểu liệu
Để đơn giản việc khai báo ma trận:
#define MAX 100
typedef <kiểu liệu> matran[MAX][MAX];
Ví dụ: Khai báo ma trận số nguyên a
#define MAX 100
(4)*Truy xuất
Để truy xuất các thành phần của mảng hai chiều ta phải dựa vào chỉ số dòng và chỉ số cột
Cú pháp: tên_ma_trận[chỉ số dòng][chỉ số cột]
*Ví dụ: int A[3][4] = { {2,3,9,4} , {5,6,7,6} , {2,9,4,7} }; Với các khai báo ta có:
(5)*Ma trận vuông
*Ma trận có số dòng và số cột bằng
*Đường chéo chính: chỉ số dòng = chỉ số cột
(6)*Các thao tác
*Nhập/ xuất
*Tìm kiếm
*Đếm
*Tính tổng/ trung bình
*Sắp xếp dòng/ cột
*Xóa dòng/ cột
(7)*Nhập/xuất ma trận số nguyên
Khai báo
#define MAX 100
typedef int matran[MAX][MAX];
(8)*Nhập/xuất ma trận số nguyên
void NhapMT(matran a, int sd, int sc) {
for(int i=0; i<sd; i++) {
for(int j=0; j<sc; j++) {
cout<<"Nhap gt ["<<i<<"]["<<j<<"]: "; cin>>a[i][j];
(9)*Nhập/xuất ma trận số nguyên
void XuatMT(matran a, int sd, int sc) {
for(int i=0; i<sd; i++) {
for(int j=0; j<sc; j++) {
cout<<a[i][j]<<"\t"; }
(10)*Nhập/xuất ma trận số nguyên
void main() {
matran a; int sd, sc;
cout<<"Nhap so dong cua ma tran: "; cin>>sd;
cout<<"Nhap so cot cua ma tran: "; cin>>sc;
(11)*Bài tập nhập/xuất
Cho ma trận số nguyên a, viết các hàm:
*Xuất các phần tử lẻ
*Xuất các phần tử là số nguyên tố
(12)*Bài tập nhập/xuất
Cho ma trận vuông số nguyên kích thước n, viết các hàm:
*Nhập ma trận
*Xuất ma trận
*Xuất các phần tử thuộc đường chéo chính
*Xuất các phần tử thuộc đường chéo phụ
(13)*Bài tập tìm kiếm
Cho ma trận sớ ngun, viết các hàm:
*Tìm phần tử lớn nhất
*Tìm vị trí phần tử lớn nhất
*Tìm vị trí xuất đầu tiên của phần tử có giá trị x
*Tìm dòng có tổng lớn nhất
(14)*Bài tập xóa
Cho ma trận số nguyên, viết các hàm:
*Xóa dòng có chứa giá trị lớn nhất