





Preview text:
  Bài thi học kỳ 2  Môn : Lập trình Matlab  Lớp K54M Đề 1 
Họ và Tên: ........................................................................ Điểm:   
Ngày Sinh: ................ Mã số sinh viên: ............................    Câu 1: 
Dùng lệnh Matlab để xây dựng hàm có biểu thức theo biến ký hiệu x (symbolic)  sau:  2 x 1 ln(  x)  2 y    2 1 (  x)
a) viết lệnh để tính y’(x), y’(1) 
b)Vẽ đồ thị của y(x) và y’(x) trên khoảng [0,10], trong cùng một khuôn hình 
(figure) nhưng ở hai vùng đồ thi khác nhau (gợi ý: dùng lệnh subplot)    Câu 2: 
Viết các lệnh Matlab để tạo các ma trận sau: 
a) Một ma trận đơn vị A cỡ 6x6 
b) Một ma trận ngẫu nhiên B cỡ 5x5 
c) Một ma trận C cỡ 5x5 mà trong đó tất cả các số đều là 1 
d) Thay các phần tử có giá trị lớn hơn 0.5 bởi giá trị 0.5 trong ma trận B 
e) Một ma trận chéo E với các số từ 1-5 trên đường chéo    Câu 3:  Cho ph ng trình: 
x  1  2tx  v i x(0) = 1  a) S d ng hàm ode23 gi i s ph
ng trình vi phân trên trong  kho ng [0,3]  b) V đ th hàm x(t) nh n đ c    Câu 4: 
a) Viết một văn bản hàm có khai báo dạng function b = kwad(r), trong 
đó r là một vectơ vào và kết quả của hàm lưu vào b là 
tổng bình phương của các phần tử của r. 
b) Viết 1 câu lệnh gọi thực hiện hàm với r = [1 2 3 4  5]              Bài thi học kỳ 2  Môn : Lập trình Matlab  Lớp K54M  Đề 2 
Họ và Tên: ........................................................................ Điểm:   
Ngày Sinh: ................ Mã số sinh viên: ............................    Câu 1: 
a. Vẽ đồ thị hàm số y = sqrt(x)*sin(2*x) trên khoảng [0,pi] 
 Tìm cực trị của hàm số trong khoảng [2,3] 
b. Vẽ tiếp tuyến của hàm số tại điểm cực trị vừa tìm được (đồ thị hàm số và tiếp  tuyến trên cùng figure)      Câu 2: 
a) Viết các lệnh nhập vào các ma trận sau:  1 2   1 2 5 6 2 1 A      ; B    ; C    3 4 7 8 1 2   2 2
b) Viết các câu lệnh tạo ma trận D được cấu thành từ ma trận A, B và C ở trên, 
trong đó ma trân A ở trên ma trận B tạo thành 2 cột đầu tiên của D, ma trận C là 2 
cột tiếp theo của D (như vậy D là ma trận 4x4) 
c) Viêt câu lệnh tính ma trận E là chuyển vị của ma trận D 
d) Viết câu lệnh tính ma trận F là nghịch đảo của ma trận D 
e) Viết câu lệnh tìm giá trị riêng của ma trận D    Câu 3: Cho ph ng trình:  tx x   v i x(0) = 3  ( 1 x 2  )
a) S d ng ode23 tính x(t) trên kho ng [0,2].  b) V đ th hàm x(t) nh n đ c.   
Câu 4: Viết một hàm có khai báo function b = replace(a), trong 
đó a là vectơ tham số vào và b là tham số ra có nội 
dung là vectơ vào a sau khi đã thay các phần tử có giá 
trị lớn hơn 5 bằng giá trị 0 
Viết 1 câu lệnh gọi thực hiện áp dụng cho a = [1 2 7 4  6] 
(Chú ý: không được phép dùng lệnh find)          Bài thi học kỳ 2  Môn : Lập trình Matlab  Lớp K54M  Đề 3 
Họ và Tên: ........................................................................ Điểm:   
Ngày Sinh: ................ Mã số sinh viên: ............................    Câu 1: 
a. Vẽ trên cùng figure đồ thị hai hàm số sau trên khoảng [0, 2*pi]    y1 = sin(t)    y2 = cos(t) 
b. Trên figure chứa hai đồ thị trên, vẽ hai vecto tiếp tuyến của y1, y2 tại điểm  t=pi/4    Câu 2: 
a) Viết các lệnh nhập vào các ma trận sau:  1 2   1 2 5 6 2 1 A      ; B    ; C    3 4 7 8 1 2   2 2
b) Viết các câu lệnh tạo ma trận D được cấu thành từ ma trận A, B và C ở trên, 
trong đó ma trân A ở trên ma trận B tạo thành 2 cột đầu tiên của D, ma trận C là 2 
cột tiếp theo của D (như vậy D là ma trận 4x4) 
c) Viêt câu lệnh tính ma trận E là chuyển vị của ma trận D 
d) Viết câu lệnh tính ma trận F là nghịch đảo của ma trận D 
e) Viết câu lệnh tìm giá trị riêng của ma trận D    Câu 3: Cho ph ng trình: 
x  10(( t / 0.3 e  sin( t
 ))  x) v i x(0)=0 
a) s d ng ode23 tính x(t) trên kho ng [0,2]  b) V đ th hàm x(t) nh n đ c   
Câu 4: Viết một hàm có khai báo dạng function [p q]= divide(x), trong đó thực hiện 
chia 3 đối với tham số vào x đến khi kết quả nhận được nhỏ hơn 3. p là số lần x bị 
chia 3; q là giá trị thương số cuối cùng. 
Viết 1 câu lệnh gọi thực hiện hàm để kiểm tra với x=21              Bài thi học kỳ 2  Môn : Lập trình Matlab  Lớp K54M Đề 4 
Họ và Tên: ........................................................................ Điểm:   
Ngày Sinh: ................ Mã số sinh viên: ............................    Câu 1: 
a. Vẽ đồ thị hàm số y = 3 + sin(x) trong khoảng [-1,2] 
b. Trên đồ thị vừa vẽ, thể hiện 3 tiếp tuyến của hàm số tại các điểm 
[x1, x2, x3] = [-0.5, 0.5, 1.5]      Câu 2: 
a) Viết lệnh Matlab nhập vector v và ma trận A, với:  1 2  1 3    7 2 0 1  v = [1 2 3 4] ;    A    3  2  1   1   0 1 4 8 
b) Viết lệnh để tính ma trận B là tích AvT 
c) Viết lệnh rand để lập ma trận C cỡ 4x4 chứa các số ngẫu nhiên, 
d) Viết lệnh để thay các phần có giá trị lớn hơn 0.4 bằng giá trị 0.4 trong ma trận C 
e) Viết lệnh để tính ma trân E là tích của ma trận C và A    Câu 3: Cho ph ng trình: 
x  10(( t / 0.3 e  sin( t
 ))  x) v i x(0)=0 
a) s d ng ode23 tính x(t) trên kho ng [0,2]  b) V đ th hàm x(t) nh n đ c   
Câu 4: Viết một hàm có khai báo function d = sproduct(a,b) để thực 
hiện phép nhân vô hướng hai vectơ hàng a và b, kết quả lưu vào d. 
Viết 1 cau lệnh gọi thực hiện hàm để kiểm tra vơi a=[1 1 1 1]; b=[1 1 1 1] 
(chú ý, không được phép dùng lênh dot)                  Bài thi học kỳ 2  Môn : Lập trình Matlab  Lớp K54M  Đề 5 
Họ và Tên: ........................................................................ Điểm:   
Ngày Sinh: ................ Mã số sinh viên: ............................   
Câu 1: Viết các lệnh Matlab tính các tích phân xác định sau:   x a)  dx   2sin(x) 0 4 b)  2 | (x  3 ) 2 | dx   0   Câu 2: 
a) Viết lệnh Matlab nhập vector v và ma trận A, với:  1 2  1 3    7 2 0 1  v = [1 2 3 4] ;    A    3  2  1   1   0 1 4 8 
b) Viết lệnh để tính ma trận B là tích AvT 
c) Viết lệnh rand để lập ma trận C cỡ 4x4 chứa các số ngẫu nhiên, 
d) Viết lệnh để thay các phần có giá trị lớn hơn 0.4 bằng giá trị 0.4 trong ma trận C 
e) Viết lệnh để tính ma trân E là tích của ma trận C và A    Câu 3: Cho ph ng trình: 
x  10(( t / 0.3 e  sin( t
 ))  x) v i x(0)=0 
a) s d ng ode23 tính x(t) trên kho ng [0,2]  b) V đ th hàm x(t) nh n đ c    Câu 4: 
a. Viết một văn bản hàm có dạng function a=pos_replace(b) trong đó tham số đầu 
vào là vecto b và nghiệm của hàm là vecto a có các phần tử thành phần là các phần 
tử của b sắp xếp theo thứ tự ngược lại. 
Vd: b=[1 2 3 4 5]  a=[5 4 3 2 1] 
b. Viết câu lệnh thực hiện hàm với b = [5 10 15 20 25 30]