Bài tập lớn môn Đại số
Trường Đại học Bách khoa Tp.Hồ Chí Minh
Khoa Khoa học Ứng dụng
Bộ môn Toán Ứng dụng
------------------
BÀI TẬP LỚN MÔN ĐẠI SỐ
Đề tài số 5:
Câu 1: Nhập ma trận A,b. Xét xem hệ Ax = b có là hệ Cramer hay không? Nếu có, hãy tìm nghiệm của
hệ theo công thức Cramer.
Câu 2: Nhập ma trận A. Kiểm tra A vuông và dùng lệnh rank hoặc det kiểm tra A khả nghịch hay
không? Nếu có, hãy tìm ma trận nghịch đảo của A bằng phép biến đổi sơ cấp. Không được dùng lệnh
rref hay lệnh mặc định tìm ma trận nghịch đảo.
GVHD: Nguyễn Kiều Dung
Nhóm thực hiện : DC1302 – Nhóm 4
STT MSSV
Họ và tên
1
2
3
4
5
6
7
8
9
31300276 Nguyễn Phạm Bắc
31300403 Đậu Văn Chung
31300404 Đỗ Đức Chung
31300357 Lý Ngọc Châu
31300670 Nguyễn Quốc Dũng
31300783 Lê Văn Đạt
31300896 Trương Văn Đồng
31300276 Lê Thiện Cảnh
ũng
31300682 Phạm Quốc D
Hồ Chí Minh 1/2014
Câu 1: Nhập ma trận A,b. Xét xem hệ Ax = b có là hệ Cramer hay không? Nếu có, hãy tìm
nghiệm của hệ theo công thức Cramer.
Cơ sở lý thuyết và thuật toán:
. Bước 1: Nhập ma trận A và b
Dùng lệnh input để nhập ma trận A và b từ bàn phím.
. Bước 2: Kiểm tra ma trận A có vuông hay không và định thức ma trận A có khác không hay
không. Nếu ma trận A vuông và định thức ma trận A khác không thì chuyển đến bước 3,
ngược lại thì chuyển đến bước 4.
Dùng cểm điều kiện.
đã cho đư
ho l
ình
cramer. Nghiệm của hệ phương tr
. Bước 3: K
ợc tính theo
công thức
… i Ai là các ma trận thu được từ A bằng cách thay cột I bởi
cột tự do b.
ình.
Dùng vòng lặp for…end để tính nghiệm của hệ phương tr
ã cho không ph
. Bước 4: Kết luận hệ đ
ải là hệ cramer.
VD:
Khải là hệ Cramer và giải hệ:
2
2
4
3
−8
ình c
Giải bằng chương tr
>> hecramer
ủa nhóm ta được kết quả:
nhap ma tran A=[1 2 -1; 2 3 -3; 3 2 5]
nhap ma tran b=[12;4;-8]
he da cho la he cramer
he phuong trinh co nghiem la
-19.0000
17
3.
2. Kiểm. tra hệ sau có phải là hệ
2
3
3
2 5 7 5
ình c
Giải bằng chương tr
ủa nhóm:
>> hecramer
nhap ma tran A=[1 1 -1 2; 2 3 -3 3; 3 2 -5 7]
nhap ma tran b=[1;3;5]
he da cho khong phai la cramer
ình c
Code chương tr
ủa nhóm:
function hecramer
A=input('nhap ma tran A=');
b=input('nhap ma tran b=');
[n,m]=size(A);
if n==m & det(A)~=0
disp('he da cho la he cramer')
detA=det(A);
disp('he phuong trinh co nghiem la')
for i=1:m
B=A;
B(:,i)=b;
det(B)/detA;
disp(ans);
end
else disp('he da cho khong phai la cramer')
end
Câu 2: Nhập ma trận A. Kiểm tra A vuông và dùng lệnh rank hoặc det kiểm tra A khả nghịch hay
không? Nếu có, hãy tìm ma trận nghịch đảo của A bằng phép biến đổi sơ cấp. Không được dùng
lệnh rref hay lệnh mặc định tìm ma trận nghịch đảo.
Cơ sở lý thuyết và thuật toán:
. Bước 1: Nhập ma trận A từ bàn phím.
Dùng lệnh input.
. Bước 2: Kiểm tra ma trận A có vuông hay không. Nếu ma trận A vuông thì chuyển đến bước
3. Ngược lại chuyển sang bước 5.
Dùng câu lệnh if để kiểm tra điều kiện.
. Bước 3: Tính định thức ma trận A, kiểm tra định thức của A có bằng không hay không, nếu
đúng chuyển sang bước 4. Ngược lại chuyển sang bước 6.
Dùng câu lệnh if để kiểm tra điều kiện
. Bước 4: Thông báo ma trận A khả nghịch. Dùng phép biến đổi sơ cấp để tìm ma trận nghịch
đảo.
Dùng các câu lệnh if……else…. để kiểm tra điều kiện, các vòng lặp for…..end để biến
đổi sơ cấp ma trận. Dùng lệnh disp(‘ thong báo’) để hiển thị thông báo ra màn hình.
. Bước 5: Thông báo ma trận A không vuông và không có det(A)
Dùng lệnh disp(‘ thong báo’) để hiển thị thông báo ra màn hình.
. Bước 6: Thông báo ma trận A không khả nghịch.
Dùng lệnh disp(‘ thong báo’) để hiển thị thông báo ra màn hình.
VD:
1
2
3
Cho ma trận A=
m tra tính vuông của ma trận A, tính det(A), tìm ma trận nghịch
đảo của A nếu có..
Giải bài toán bằng chương tr
>> matran
ình c
ủa nhóm:
nhap ma tran A= [1 1 1; 1 2 2; 1 2 3]
ma tran A kha ngich
ma tran nghich dao cua A la
2 -1
-1 2 -1
0 -1
Code chương tr
0
1
ình c
ủa nhóm:
function inv=datain(A) ;
A= input ('nhap ma tran A= ');
[n,m]=size(A);
if n~=m
disp ('ma tran khong vuong'); disp('khong co det(A)');
elseif det(A)~=0
disp ('ma tran A kha ngich ');
disp('ma tran nghich dao cua A la');
B = eye(m,n);
for i = 2:n
for j = 1:i-1
if A(j,j)==0
a=A(j,:);
A(j,:)=A(j+1,:)
A(j+1,:)=a;
h = A(i,j)/A(j,j);
A(i,:) = A(i,:)-h*A(j,:);
c=B(j,:);
B(j,:)=B(j+1,:);
B(j+1,:)=c;
B(i,:) = B(i,:)-h*B(j,:);
else h = A(i,j)/A(j,j);
A(i,:) = A(i,:)-h*A(j,:);
B(i,:) = B(i,:)-h*B(j,:);
end
end
end
for i = n-1:-1:1
for j= n:-1:i+1
if A(j,j)==0
b=A(j,:);
A(j,:)=A(j+1,:);
A(j+1,:)=b;
h = A(i,j)/A(j,j);
A(i,j) = A(i,j) - h*A(j,j);
d=B(j,:);
B(j,:)=B(j+1,:);
B(j+1,:)=d;
B(i,:) = B(i,:) -h*B(j,:);
else h = A(i,j)/A(j,j);
A(i,j) = A(i,j) - h*A(j,j);
B(i,:) = B(i,:) -h*B(j,:);
end
end
end
for i =1:n
B(i,:) = B(i,:)/A(i,i);
end
disp(B)
else disp('ma tran da cho khong kha nghich')
end
Bạn đang xem tài liệu "Bài tập lớn môn Đại số", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_tap_lon_mon_dai_so.pdf

