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:
ln(1 x)
y
x2
2
(1 x) 2
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
kho ng [0,3]
b) V đ th hàm x(t) nh n đ c
ng trình vi phân trên trong
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
A
;
3 4
1
2
5 6
B
C
;
1
7 8
2
2
1
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
x
ng trình:
tx
v i x(0) = 3
(1 x2 )
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
A
;
3 4
1
2
5 6
B
; C 1
7
8
2
2
1
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((e t / 0.3 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
4 8
0 1
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((e t / 0.3 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:
a)
x
2 sin( x) dx
0
4
b) | ( x 2 2)3 | 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
4 8
0 1
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((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
t / 0 .3
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]