SlideShare a Scribd company logo
1 of 48
BÀI TẬP THỰC HÀNH SỐ 1
CÁC LỆNH CƠ BẢN TRONG MATLAB
I. Làm quen với môi trường cửa sổ làm việc Matlab.
1. Một số thao tác cơ bản trong MATLAB
Trong MATLAB, thanh trình đơn thay đổi tùy theo cửa sổ mà ta lựa chọn. Tuy vậy các
trình đơn File, Desktop, Window, Help có mặt hầu hết trong các thanh trình đơn.
Trình đơn File:
 New: tạo một đối tượng mới (biến, m-file, figure, model, GUI).
 Open: mở một file theo định dạng của MATLAB (*.m, *.mat, *.mdl)
 Import data…: nhập dữ liệu từ các file khác vào MATLAB.
 Save workspace…: lưu các biến trong MATLAB vào file *.mat.
 Set path: khai báo các đường dẫn của các thư mục chứa các m-file.
 Preferences: thay đổi các định dạng về font, font size, color cũng như các tùy chọn
cho Editor, Command Window v.v.
 Page Setup: định dạng trang in.
 Print: in.
Trình đơn Desktop:
 Desktop layout: sắp xếp các cửa sổ trong giao diện.
 Save layout: lưu cách sắp xếp cửa sổ.
Trình đơn Window dùng để kích họat (activate) cửa sổ.
Nút Start cung cấp shortcut tới các công cụ trong MATLAB
+ Command Window (Cửa sổ lệnh ).
+ Current Directory ( Cửa sổ thư mục hiện hành ).
+ Command History (Cửa sổ lịch sử ).
+ Work Space ( Không gian làm việc )
2. Các chức năng trên cửa sổ lệnh:
Clc: làm sạch màn hình.
Clear: làm sạch cửa sổ workspace.
Help: lấy thông tin trợ giúp.
Edit: soạn thảo chương trình.
Type: xem nội dung của file.
←, → : dịch chuyển con trỏ trái phải.
↑, ↓: chọn lại những lệnh đă thực hiện.
3. Gán các kiểu dữ liệu cho biến:
Thực hiện các dòng lệnh sau và kiểm tra kết quả.
>> a = 5 % gán dữ liệu số nguyên
>> b = pi % gán số pi = 3.14159265 cho biến d
>>h = nan % khoâng phaûi soá
4. Định dạng các kiểu dữ liệu số với lệnh format : long, long e, short, short e, trong đó e
là cơ số 10.
Thực hiện 2 dòng lệnh sau:
>> format long % số chấm cố định là 15 con số
>> A = pi
Thực hiện tiếp 2 dòng lệnh sau rồi so sánh kết quả.
>> format long e % số dấu chấm động là 15 con số
>> A = pi
So saùnh keát quaû khi laàn löôït thöïc hieän caùc doøng leänh treân cho
thaáy : keát quaû baèng nhau. Nhöng ñöôïc bieåu dieãn khaùc nhau:
vôùi A = 3,14159265358973e+000 trong ñoù e + 000 = 100 = 1
Tương tự thực hiện các dòng lệnh sau.
>> format short % số chấm cố định là 5 con số ( mặc định )
>> A = pi
>> format short e % số dấu chấm động là 5 con số
>> A = pi
Töông töï so saùnh keát quaû khi laàn löôït thöïc hieän caùc doøng leänh
tieáp theo ôû treân cho thaáy : keát quaû baèng nhau. Nhöng ñöôïc bieåu
dieãn khaùc nhau:
vôùi A = 3,1416e+000 trong ñoù e + 000 = 100 = 1
5. Qui ước biến và thực hiện các phép toán trên cửa sổ lệnh.
Cộng +, trừ -, nhân *, chia phải /, chia trái , lũy thừa ^.
Độ ưu tiên Phép toán Tính ưu tiên
1 ( , ) trong ra ngoài
2 ^ trái qua phải
3 ± a
4 * , / ,  trái qua phải
5 + , - trái qua phải
II. Làm việc với mảng trên cửa sổ lệnh.
1. Gán dữ liệu nguyên, thực, phức cho mảng một chiều, hai chiều bằng chỉ số.
- mảng 1 chiều.
Thực hiện các dòng lệnh sau lưu lại kết quả .
>> X(3) = 4 % phần tử thứ 3 của mảng là 4.
>> X(2) = 1 + 3i % phần tử thứ 2 của mảng là 1 +3i
- mảng 2 chiều :
Thực hiện các dòng lệnh sau lưu lại kết quả.
>> T(1,1) = 1 % gán giá trị cho mảng theo chỉ số ,
>> T(1,2) = 46
>> T(2,1) = 3 + 2i
>> T(2,2) = 4.34
2. Gán dữ liệu nguyên, thực, phức cho mảng một chiều, hai chiều bằng nội dung.
- mảng 1 chiều.
Thực hiện các dòng lệnh sau lưu lại kết quả:
>> x = [ 3 1 5 ] % gán vevtor hàng 3 1 5 cho biến x.
>> y = [ 2.1 4.6 3.8 ]
>> z = [ 2+3i 7-4i 9+5i ]
- mảng 2 chiều:
Thực hiện các dòng lệnh sau lưu lại kết quả.
>> t = [ 6 5 ; 5 3 ]
>> u = [ 8.1 3.6 ; 3.5 7.2 ]
>> v = [ 3+i 7-7i ; 8-4i 4+5i ]
3. Truy cập mảng một chiều, hai chiều bằng chỉ số.
A(i,j) truy cập phần tử có chỉ số i,j
A(1: k,j) truy cập từ phần tử thứ nhất đến phần tử thứ k của cột j
A(i,1:k) truy cập từ thứ 1 đến phần tử thứ k của hàng i
Trước tiên ta gán nội dung cho mảng.
>>z = [ 2 3.4 4+ 3i ; 2 3 + 2i 7.2]
Truy cập phần tử có chỉ số 2,1
>>z (2,1) % truy cập phần tử thứ 2 của cột 1.
Truy cập từ phần tử thứ 1đến phần tử thứ 2 của cột 1
>> z(1:2,1) % truy cập phần tử : từ 1 đến 2 của cột 1.
Truy cập từ phần tử thứ 1 đến phần tử thứ 3 của hàng 2.
>> z(2,1:3) % truy cập phần tử thứ 1 đến 3 của hàng 2.
III .Thực hành một số hàm với mảng trên cửa sổ lệnh.
sum, prod, diff, trace, diag, eye, ones, zeros, magic, randn, inv, eig . . .
 sum(A) : tạo ra vector hàng với các phần tử là tổng của các phần tử của các cột
tương ứng.
 prod(A) : tạo vector hàng với các phần tử là tích của các phần tử của các cột
tương ứng.
 trace(A) : tính vết của ma trận A ( tổng các phần tử trên đường chéo).
 eye(n) : tạo ra ma trận đơn vị.
 magic(n) : tạo ma trận vuông với tổng các phần tử hàng, cột và đường chéo là
bằng nhau.
 rand(n) : tạo ma trận vuông với các phần tử được phân bố ngẫu nhiên.
Thực hiện các lệnh sau và lưu lại kết quả.
>> z = [ 3.4 4+3i ; 2 3+2i ] % gán ma trận cấp 2x2 cho biến z
>> I = sum(z) % tính tổng ma trận theo cột tương ứng.
>> J = prod(z) % tính tích các cột tương ứng
>> L = trace(z)
>> P = eye(4)
>> Q = magic(3)
>> M = rand(5)
IV .Thực hành các phép toán mảng trên cửa sổ lệnh.
 + : công ma trận.
 - : trừ ma trận.
 * : nhân ma trận.
 / : chia phải ma trận.
  : chia trái ma trận.
 ^ : tóan tử lũy thừa ma trận.
 .* : tóan tử nhân hai phần tử tương ứng của hai ma trận.
 ./ : chia phải hai phần tử tương ứng của hai ma trận.
 . : chia trái hai phần tử tượng ứng của hai ma trận.
 .^ : tóan tử lũy thừa từng mỗi phần tử của ma trận.
Bài tập thực hành:
Bài 1: Tính bằng tay các biểu thức sau đó thực hiện bằng matlab và lưu lại kết quả.
a. 2 / 2 * 3
b. 6 – 2 / 5 + 7 ^ 2 – 1
c. 10 / 2  5 – 3 + 2 * 4
d.
e.
f.
g. 3 ^ 2 / 4
h. 3 ^ 2 ^ 2
k. 2 + round(6 / 9 + 3 * 2) / 2 – 3
l. 2 + floor(6 / 9 + 3 * 2) / 2 – 3
m. 2 + ceil(6 / 9 + 3 * 2) / 2 – 3
n. fix(4/9)+fix(3*(5/6))
2
1
3 2
2
1
3 2




60
1000(1 0.15 /12)
3
8
1 2 sin(5)
os6 7
e
c 
  

Bài 2: Tính các biểu thức sau, làm tròn đến 15 chữ số:
a. cosh(0.1) b. ln 2 c. arctan(1/ 2)
Bài 3: Tìm a, b, c biết:
2
5 6 7a x y z   ;
2
3
3
4 5
y
b
x z


;
1
2
1
1c
x

 
  
 
với x = 10, y = -20 và z = 30
Bài 4: Dự đoán kết quả xuất ra màn hình:
a. 2 ; 4 b. 2 / 4
c. 2  4 d. 2 , 4
e. 2 : 4
Bài 5: Cho x = 2, y = 3. Dự đoán lần lượt các kết quả tiếp theo:
z = x
3 4
5 2


2
2
3
4.5
y = y +z
x = y + x – z
x + y – z
Bài 6: Cho x = [1 4 8], y = [2 1 5] và A = [3 1 6 ; 5 2 7]
Thực hiện các phép tính sau:
a. x*2 + y*3:
b. x – y.^3:
c. A*3 /x
d. A.^2
Bài 7: Cho x = [2 5 1 6].
a. Cộng thêm 16 vào tất cả các phần tử.
b. Cộng thêm 3 vào các phần tử ở vị trí lẻ.
c. Lấy căn bậc 2 tất cả các phần tử.
d. Bình phương tất cả các phần tử.
Bài 8: Cho x, y lần lượt là các vector cột. x = [3 2 6 8]’, y = [4 1 3 5]’.
a. Lấy tổng các phần tử của x cộng thêm vào từng phần tử của y.
b. Luỹ thừa mỗi phần tử của x với số mũ tương ứng là các phần tử của y.
c. Chia các phần tử của y với các phần tử tương ứng của x.
d. Nhân các phần tử của x với các phần tử tương ứng của y, đặt trong vector z.
e. Tính tổng các phần tử của z, gán cho w.
f. Tính x.* y – w.
g.Tích vô hướng của x và y
Lưu ý: x’ là ma trận chuyển vị của x
Bài 9: Cho ma trận A = [2 4 1 ; 6 7 2 ; 3 5 9], viết lệnh Matlab để :
a. Tạo vector x là hàng thứ nhất của A:
b. Tạo ma trận y là hai hàng còn lại (cuối) của A:
c. Tính tổng theo hàng ma trận A:
d. Tính tổng theo cột ma trận :
Bài 10. Cho ma trận
6 9 5 1
8 7 2 3
1 3 4 4
5 2 8 2
C
 
 
 
 
 
 
và
4 8
3 7
2 3
5 1
D
 
 
 
 
 
 
, dùng Matlab:
a. Tạo ma trận E1 là 2 cột nằm giữa của ma trận C sử dụng toán tử ‘:’
b. Tạo ma trận E2 từ hàng 1 và 2 và cột 2 và 3 của ma trận C sử dụng toán tử ‘:’
c. Tạo ma trận E3 bằng cách ghép 2 ma trận E1 và D với nhau.
Bài 11. Cho các mảng sau F = [3 21 6 17], G = [4 27 9 3] và H = [1 2 9 15]
a. Tạo ma trận K1 từ F, G, H mà F là hàng đầu tiên, G là hàng thứ hai, H là hàng thứ
ba.
b. Tạo ma trận K1 từ F, G, H mà F là cột đầu tiên, G là cột thứ hai, H là cột thứ ba.
BÀI TẬP THỰC HÀNH SỐ 2
LÀM VIỆC VỚI M-FILE
Thực hành các lệnh trên cửa sổ soạn thảo m-file.
File-New : tạo tập tin mới.
File-Open: mở tập tin đã có sẵn.
File-Save: lưu tập tin lệnh đĩa.
File-Save as lưu tập tin lên đĩa với một tên khác.
I. Một số lệnh lập trình trong Matlab.
1. Lệnh EVAL
a. Công dụng:
Chuyển đổi chuỗi ký tự thành biểu thức.
b. Cú pháp:
kq = eval(‘string’)
c. Giải thích:
kq: biến chứa kết quả.
Nếu ‘string’ là các ký số thì chuyển thành những con số.
Nếu ‘string’ là câu lệnh thì chuyển thành các lệnh thi hành được.
2. Lệnh FOR
a. Công dụng:
Dùng để thực hiện 1 công việc cần lặp đi lặp lại theo một quy luật, với số bước lặp
xác định trước.
b. Cú pháp:
for biến điều khiển = giá trị đầu : giá trị cuối,
thực hiện công việc;
end
c. Giải thích:
Công việc chính là các lệnh cần thi hành, có thể có nhiều lệnh, kết thúc lệnh phải
có dấu;
3. Lệnh FUNCTION
a. Công dụng:
Tạo thêm hàm mới.
b. Cú pháp:
function s = n(x)
c. Giải thích:
s: tên biến chứa giá trị trả về sau khi thi hành hàm.
n: tên gợi nhớ.
4. Lệnh INPUT
a. Công dụng:
Dùng để nhập vào 1 giá trị.
b. Cú pháp:
tên biến = input (‘promt’)
tên biến = input (‘promt’, ‘s’)
c. Giải thích:
tên biến, là nơi lưu giá trị ngập vào.
‘promt’: chuỗi ký tự muốn nhập vào.
‘s’: cho biết giá trị nhập vào là nhiều ký tự.
5. Lệnh IF …ELSEIF …ELSE
a. Công dụng:
Thực hiện lệnh khi thỏa điều kiện.
b. Cú pháp:
if biểu thức luận lý 1
thực hiện công việc 1;
elseif biểu thức luận lý 2
thực hiện công việc 2;
else
thực hiện công việc 3;
end
c. Giải thích:
Khi biểu thức luận ký 1 đúng thì thực hiện công việc 1 tương tự cho biểu thức luận
lý 2. Nếu cả hai biểu thức sai thì thực hiện công việc sau lệnh else.
Biểu thức luận lý là các phép so sánh ==, <, >, <=, >=
công việc chính là các lệnh cần thi hành, có thể có nhiều lệnh, kết thúc lệnh phải
có dấu ;
6. Lệnh MENU
a. Công dụng:
Tạo menu để chọn chức năng.
b. Cú pháp:
tên biến = menu (‘Tên menu’,‘chức năng1’,‘chức năng2’, …. , ‘chức năng n’)
c. Giải thích:
tên menu: là tiêu đề của menu.
tên biến: là nơi cất giá trị nhận được sau khi chọn chức năng của menu.
Chức năng 1, 2, ….,n:khi chọn chức năng nào thì tên biến có giá trị là số thứ tự
của chức năng đó.
7. Lệnh PAUSE
a. Công dụng:
Dừng chương trình theo ý muốn.
b. Cú pháp:
pause on
pause off
pause (n)
c. Giải thích:
pause on: dừng chương trình, và chờ nhấn 1 phím bất kỳ (trừ các phím điều khiển)
chương trình thực hiện tiếp.
pause off: tắt chức năng pause.
pause (n): dừng chương trình tại n giây.
8. Lệnh WHILE
a. Công dụng:
Dùng để thực hiện 1 công việc cần lặp đi lặp lại theo một quy luật, với số bước lặp
không xác định, phụ thuộc vào biểu thức luận lý.
b. Cú pháp:
while biểu thức luận lý
thực hiện công việc;
end
c. Giải thích:
Biểu thức luận lý là các phép so sánh = =, <, >, <=, >=
Công việc chính là các lệnh cần thi hành, có thể có nhiều lệnh, kết thúc lệnh phải
có dấu ;
Khi thực hiện xong công việc thì quay lên kiểm tra lại biểu thức luận lý, nếu vẫn
còn đúng thì tiếp tục thực hiện, nếu sai thì kết thúc.
9. Lệnh INT2STR
a. Công dụng:
Chuyển số nguyên sang dạng chuỗi.
Chuyển các ký tự trong một chuỗi sang số thứ tự tương ứng trong bảng mã ASCII.
b. Cú pháp:
kq = INT
c. Giải thích:
kq: biến STR(n)chứa kết quả.
n: tên biến cần chuyển, nếu n là số nguyên thì kq là chuỗi ký số.
Nếu n là chuỗi ký tự thì kq là số tương ứng trong bảng mã ASCII
10. Lệnh NUM2STR
a. Công dụng:
Chuyễn số thực sang dạng chuỗi.
Chuyển các ký tự trong một chuỗi sang số thứ tự tương ứng trong bảng mã ASCII.
b. Cú pháp:
kq = num2tr(n)
c. Giải thích:
kq: biến chứa kết quả.
n: tên biến cần chuyển, nếu n là số thực thì kq là số tương ứng trong bảng mã
ASCII.
11. Lệnh STR2NUM
a. Công dụng:
Chuyển chuỗi (dạng số) sang số thực.
b. Cú pháp:
n = str2num(s)
c. Giải thích:
s: chuỗi dạng số, n: số thực.
II. Lập trình với M-file
Sử dụng vòng lặp for, vòng lặp while, lệnh rẽ nhánh if, if-else, if-elseif-else, lệnh
kiểm tra trường hợp case, lệnh break…
1. Lập trình với Script m-file.
- Mở phần mểm Matlab, khởi tạo giao diện Script m-file:
a. Sinh viên tự viết 1 Script m-file vẽ 1 hình Sin
% ve hinh sin
x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y,'m','linewidth',1.5 ,'linestyle' , '+' ),grid
axis('square')
xlabel('x')
ylabel('y')
title('VE HINH SIN') % tạo tiêu đề cho đồ thị là VE HINH SIN
% End of program
>> chạy chương trình : vào biểu tượng trên thanh công cụ
hoặc
2. Lập trình với function m-file.
>> Mở phần mểm Matlab, khởi tạo giao diện Script m-file:
a. Chương trình giải pt bậc 2.
% Function m-file
function [x1, x2] = bachai(a,b,c)
x = roots([a b c]);
x1 = x(1)
x2 = x(2)
%End
Save lại với tên là bachai.m, trong cửa sổ command window gõ lệnh
>> bachai ( 1 ,2 ,-3) % giai pt: x^2 + 2*x -3 = 0
b. Sinh viên tự viết 1 function m-file giải phương trình bậc 2 mà không dùng hàm
roots mà matlab đã hổ trợ.(lưu với tên file là timnghiem.m)
Bài tập thực hành
1. Tạo ra 1 Script file ptb2.m bằng cách nhập vào các hệ số a, b, c và dùng hàm
timnghiem.m để tìm nghiệm.
2. Sinh viên tự thực hiện chương trình vẽ đường cong parabol y=a*x^2 + b với các hệ
số a, b, nhập từ keyboard.
3. Viết chương trình tính tổng của 2 số a và b nhập từ bàn phím.
4. Viết chương trình tính tổng bình phương của 2 số a và b nhập từ bàn phím.
5. Tìm gía trị lớn nhất của 2 số a và b nhập từ bàn phím.
6. Tìm USC lớn nhất và BSC nhỏ nhất của 2 số a và b.
7. Nhập vào giá trị n, kiểm tra xem n có phải là số nguyên tố?
8. Tính tổng s = 1 + 1/2 +1/3 + …..+1/n
9. Tính tổng các dãy số s=1+3+5+..+n
10.Tính tổng 222
n/1...3/11/21A 
11.Tính tổng các tích 2 số liên tiếp từ 1 đến n s=1*2+2*3+3*4+4*5+…+(n-1)*n.
12.Viết chương trình nhập vào 1 dãy số gồm n phần tử, xuất ra giá trị lớn nhất và
phần tử nhỏ nhất của dãy số.
13.Viết chương trình nhập vào 1 dãy số gồm n phần tử, tính trung bình cộng các số
dương trong dãy.
14.Cho ma trận A=[5 9 10 20; 6 2 40 6; 9 3 20 10; 8 4 30 8]
a. Tìm tổng của ma trận A
b. Tìm ma trận chuyển vị của ma trận A
c. Tìm đường chéo của ma trận A
d. Tìm tổng đường chéo của ma trận A
BÀI TẬP THỰC HÀNH SỐ 3
TẠO GIAO DIỆN GUI
I. Các hướng dẫn về thiết kế giao diện GUI trong Matlab
1. Khởi động GUI
- Thực hiện khởi động Matlab đến GUI theo hình sau:
 Khởi động Matlab từ biểu tượng Matlab trên màn hình desktop.
 Trong cửa sổ Comment Windowns gõ lệnh “guide” và enter ta được giao
diện màn hình như sau:
Trong cửa sổ GUIDE Quick Start có nhiều lựa chọn theo một trong các khuân mẫu sau:
Create New GUI: Tạo một hộp thoại GUI mới theo một trong các loại sau
 Blank GUI (Default): Hộp thoại GUI trống không có một điều khiển uicontrol
nào cả.
 GUI with Uicontrols: Hộp thoại GUI với một vài uicontrol như button, ...
 GUI with Axes and Menu: Hộp thoại GUI với một uicontrol axes và button, các
menu để hiển thị đồ thị.
 Modal Question Dialog: Hộp thoại đặt câu hỏi Yes, No.
Open Existing GUI: mở một project có sẵn.
Trong hướng dẫn này, các bạn tạo một project mới nên sẽ chọn Blank GUI
- Nhấp Blank GUI (Default) chọn OK để tạo một giao diện bắt đầu
với giao diện trống, ta được hình ảnh giao diện trong GUI như sau:
2. Mô tả chức năng giao diện GUI
Công cụ Mô tả
Layout editor Chọn các thành phần từ bảng thành phần, trình bày, và
sắp xếp chúng trong các khu vực bố trí. (Tùy chỉnh hiện
tên các thành phần: File => Preferences)
Align Objects Dùng để sắp xếp các đối tượng điều khiển.
Menu Editor Tạo menu cho giao diện.
Tab Order Editor Thiết lập các tab và sắp xếp thứ tự của các thành phần
trong bố trí của bạn .
Toolbar Editor Thanh công cụ tạo ra có chứa các nút bấm được xác định
trước và tùy chỉnh và chuyển đổi nút.
Editor Hiển thị , trong trình soạn thảo mặc định của bạn , các
tập tin mã kết hợp với giao diện đồ họa .
M-file editor Mở cửa sổ M-file.
Property Inspector Thiết lập các thuộc tính cảu các đối tượng điều khiển. Nó
cung cấp một danh sách tất cả các thuộc tính bạn có thể
thiết lập và hiển thị các giá trị hiện tại của chúng.
Object Browser Hiển thị một danh sách phân cấp của các đối tượng trong
giao diện đồ họa.
Run Lưu và chạy giao diện hiện tại.
Resize box Tùy chỉnh kích thước giao diện.
Position Readouts Liên tục hiển thị vị trí con trỏ chuột và vị trí của các đối
tượng được chọn.
- Phía bên trái là nhóm các biểu tượng được Matlab GUI hỗ trợ sẵn:
- Push Button : là nút nhấn, khi nhấn vào sẽ thực thi lệnh trong cấu trúc hàm
callback của nó.
- Slider : là thanh trượt cho phép người dùng di chuyển thanh trượt để thực
thi lệnh.
- Radio Button : nó giống như Check Box nhưng thường được sử dụng để tạo
sự lựa chọn duy nhất, tức là 1 lần chỉ được chọn 1 trong số các nhóm nhiều nút.
Khi một ô được chọn thì các ô còn lại trong nhóm bị bỏ chọn.
o Check box : sử dụng để đánh dấu tích (thực thi) vào và có thể
check nhiều ô để thực thi.
o Edit Text : là nơi các kí tự được nhập vào từ người dùng, người dùng
có thể thay đổi được.
o Static Text : là các kí tự được hiển thị thông qua các callback, hoặc
thông thường để viết nhãn cho các biểu tượng, người dùng không thể thay
đổi nội dung.
o Pop-up Menu : mở ra danh sáchcác lực chọn khi người dùng
nhấp chuột vào. Chỉ chọn được 1 mục trong danh sách các mục.
o List Box : hộp thoại danh sáchcách mục, cho phép người dùng
chọn một hoặc nhiều mục.
o Toggle Button : là nút nhấn có 2 điều khiển, khi nhấp chuột và nhả
ra, nút nhấn được giữ và lệnh thực thi, khi nhấp chuột vào lần thứ 2, nút
nhấn nhả ra, hủy bỏ lệnh vừa thực thi.
o Table : tạo ra một bảng tương tự trong Excel.
- Axes : đây là giao diện đồ họa hiển thị hình ảnh, nó có nhiều thuộc tính bao
gồm: không gian 2D (theo trục đứng và trục ngang), 3D (hiển thị không gian 3
chiều).
- Panel : tạo ra một mảng nhóm các biểu tượng lại với nhau giúp ta dễ kiểm
soát và thao tác khi di chuyển.
- Button Group : quản lí sự lựa chọn của nút Radio Button.
- Active Control : quản lí một nhóm các bút hoặc các chương trình liên quan
với nhau trong Active.
3. Giới thiệu hộp thoại Inspector
Thuộc tính Mô tả
BackgroundColor Màu nền của đối tượng.
BeingDeleted Đối tượng đã được xóa.
BusyAction Callback thường xuyên gián đoạn.
ButtonDownFcn Nút nhấn Callback thường xuyên.
CData Hình ảnh màu thật hiển thị trên điều khiển.
Callback Điều khiển hoạt động.
Clipping Thuộc tính này không có tác dụng trên các đối tượng điều
khiển.
CreateFcn Thường xuyên thực hiện Callback trong quá trình tạo đối tượng.
DeleteFcn Thường xuyên thực hiện Callback trong quá trình xóa đối tượng
Enable Kích hoạt hoặc vô hiệu hóa các đối tượng điều khiển.
Extent Vị trí hình chữ nhật (chỉ đọc).
FontAngle Kiểu chữ nghiêng.
FontName Kiểu chữ.
FontSize Cỡ chữ.
FontUnits Đơn vị kích thước font chữ.
FontWeight Nét chữ.
ForegroundColor Màu chữ.
HandleVisibility Cho dù xử lý có thể truy cập từ dòng lệnh và ảnh minh hoạ.
HitTest Lựa chọn bằng cách click chuột. Thuộc tính này không có tác
dụng trên các đối tượng điều khiển.
HorizontalAlignment Căn ngang của chuỗi nhãn.
SliderStep Chế độ Callback gián đoạn thường xuyên.
KeyPressFcn Nhấn phím Callback thường xuyên.
ListboxTop Chỉ số trên hầu hết các chuỗi hiển thị trong hộp danh sách
Max Giá trị lớn nhất (phụ thuộc vào đối tượng điều khiển)
Min Giá trị nhỏ nhất (phụ thuộc vào đối tượng điều khiển)
Position Kích thước và vị trí của đối tưỡng điều khiển.
SliderStep Kích thước bước nhảy của thanh trượt.
String Nhãn của các đối tượng điều khiển, các mục hộp danh sách,
lựa chọn trình đơn pop-up.
Style Kiểu của đối tượng điều khiển.
Tag Dùng để phân biệt giữa các đối tượng điều khiển.
TooltipString Tạo tip cho đối tượng điều khiển.
UIContextMenu Kết hợp một trình đơn ngữ cảnh với đối tượng điều khiển.
Units Đơn vị đo lường.
UserData Dữ liệu liên kết với đối tượng điều khiển.
Value Giá trị hiện thời của đối tượng điều khiển.
Visible Điều khiển thuộc tính nhìn thấy của các đối tượng.
4. Một vài chức năng mở rộng
Chú ý, để tạo sự thẳng hàng, cột của các hộp thoại cho đẹp mắt ta làm như sau:
- Nhấn giữ phím Ctrl và nhập vào các hộp thoại muốn chỉnh sửa, trên Menu
chọn Align Objects . Hộp thoại Align hiện ra như sau:
Hộp thoại Align Objects
- Trong hộp thoại trên ta có thể cân chỉnh các nút, nhóm nút sao cho chúng thẳng
hàng, thẳng cột và đều nhau. Sau khi cân chỉnh nhấn nút Apply để lưu thay đổi.
- Bây giờ ta thiết lập thuộc tính chung cho giao diện (toàn bộ vùng thiết kế hay nền
giao diện) :
 Nhấp đúp chuột vào bất cứ vị trí nào trên nền giao diện để vào hộp thoại
Inspector (hoặc trên menu chọn View -> Property Inspector), hộp thoại Inspector
hiện ra như sau:
 Thiết lập Tag là “exit”
- Tiếp tục tùy chọn nâng cao , vào Menu Tools => GUI Options
GUI Options
- Trên hộp thoại Resize behavior chọn dòng số 2 (Proportional), dòng này cho
phép người dùng thay đổi khích thước của giao diện và các đối tượng cũng tự
động thay đổi kích thước phù hợp với nền giao diện, nhấn OK để lưu thay đổi.
5. Thiết kế giao diện GUI
KHỞI TẠO CÁC ĐỐI TƯỢNG ĐIỀU KHIỂN:
- Nhấn tổ hợp phím Ctrl + S để thực hiện lưu file, sau khi chọn đường dẫn để lưu file
(Chú ý không lưu file với các biến đặc biệt hoặc bằng các con số khởi đầu), nhấn save
Matlab sẽ tự động tạo ra 2 file gồm một file .m và một file .fig, trong đó file .m là Mfile
chứa các hàm Matlab đã tạo sẵn hỗ trợ giao diện.
- Lần lượt kéo thả các nút như hình sau:
Khởi tạo các đối tượng điều khiển.
- Mỗi hộp thoại có Inspector , bằng cách nhâp đúp chuột vào hoặc chuột phải
chọn Property Inspector.
- Sau đây là hình ảnh được đánh số để đánh dấu từng thay đổi một:
TẠO THUỘC TÍNH CHO CÁC ĐỐI TƯỢNG:
- Sau đây là bảng mô tả các giá trị và thuộc tính của các hộp thoại trong hình,
chúng ta tiến hành thay đổi các giá trị tương ứng theo bảng sau:
STT Tên thuộc tính Giá trị thuộc tính
1 String Frequency
2 String
Tag tanso
3 String Time
4 String
Tag thoigian
5 String Function
6 String Square
Sin
Cos
sawtooth
Tag ham
7 Title Options
8 String START
Tag Start
9 String Hold on
Tag hold
10 String Grid on
Tag grid
11 String RESET
Tag reset
12 String EXIT
Tag exit
13 Tag axes1
Visible off
Hình sau mô tả cách thay đổi giá trị trong ô String của Select Function:
Thiết lập các thuộc tính trong hộp thoại Inspector.
- Sau khi viết xong, nhấn OK để lưu lại.
- Sau khi chỉnh sửa các thông số ta dùng chuột để di chuyển các hộp thoại,
bố trí hộp thoại theo mong muốn, ta được giao diện như sau:
MỘT SỐ TÍNH NĂNG MỞ RỘNG:
Chú ý, để tạo sự thẳng hàng, cột của các hộp thoại cho đẹp mắt ta làm như sau:
- Nhấn giữ phím Ctrl và nhập vào các hộp thoại muốn chỉnh sửa, Trên Menu chọn
Align Objects . Hộp thoại Align hiện ra:
Trong hộp thoại trên ta có thể cân chỉnh các nút, nhóm nút sao cho chúng thẳng
hàng,thẳng cột và đều nhau. Sau khi cân chỉnh nhấn nút Apply để lưu thay đổi.
- Trên hộp thoại Resize behavior chọn dòng số 2 (Proportional), dòng này cho
phép người dùng thay đổi khích thước của giao diện và các đối tượng cũng tự
động thay đổi kích thước phù hợp với nền giao diện, nhấn OK để lưu thay đổi.
II. Thực thi hàm
1. Giao diện trong M-file:
- Khi đã cân chỉnh xong toàn bộ giao diện trong GUI, nhấn F5 (hoặc nhân tổ
hợp phím Ctrl + T hoặc nhấp vào biểu tượng trên thanh Menu).
- Khi Run, Matlab sẽ tự chạy file .m và hiển thị doa diện đồ họa lên màn
hình. ở đây ta bắt đầu thao tác với file .m
Giao diện Mfile.
- Khi ta chưa thao tác trong Trong file .m xuất hiện như trên hình, trong đó, tất cả các
hàm function đều được Matlab hỗ trợ tạo sẵn các hàm chức năng có liên quan, ta chỉ
việc thao tác trên đó.
- Mỗi sau một hàm bất kì đều có các chú thích bên dưới (sau dấu %), ta có thể xóa
toàn bộ chúng đi đễ dễ nhìn cũng không ảnh hưởng đến các hàm.
- Trong Mfile có sẵn các hàm callback, ta có thể tìm trong Mfile các hàm liên quan để
viết câu lệnh, tuy nhiên, để nhanh hơn chúng ta có thể làm như sau:
+ Quay lại màn hình giao diện GUI vừa thiết kế, nhấp vào hộp thoại muốn thực
thi hàm callback, nhấp chuột phải chọn View Callbacks -> Callback, Như hình
sau:
Tìm hàm calback cho đối tượng điều khiển.
+ Sau đó hàm callback sẽ tự động được gọi và con trỏ chuột sẽ tìm đến vị
trí của nó trong Mfile.
- Bây giờ khi muốn gọi một hàm nào ta cũng có thể thực hiện như trên. Sau đó
tiến hành viết câu lệnh cho nó.
2. Một số hàm trong gui:
- Hàm callback được lập trình cho các nút button, checkbox, edit text… nhưng
static text và axes… thì không có hàm callback.
- Mỗi một callback được viết với cấu trúc như sau:
- function Tag_Callback(hObject, eventdata, handles)
- Với Tag chính là giá trị của Tag mà ta đã đặt khi tạo giao diện. Các hàm chứa bên
trong callback bao gồm hObject, evendata,handles
+ hObject là hàm truy cập nội bộ của mỗi function riêng lẽ
+ Evendata là hàm xác đinh thuộc tính của function
+ Handles là hàm truy cập liên kết giữa các function, nó bao gồm tất cả các cấu
trúc của người dùng, được sử dụng để truy xuất qua các điều khiển khác.
- Hàm Get cho phép ta gọi thuộc tính của đối tượng.
- Hàm Set cho phép ta đặt giá trị cho thuộc tính của đối tượng
a. Lập trình các đối tượng :
NÚT NHẤN START:
- Thực hiện thao tác như bước vừa nói trên (minh họa trong hình), hàm callback
sẽ tự động gọi:
Lần lượt viết các hàm sau vào functions :
f=str2num(get(handles.tanso,'string'));
set(handles.axes1,'Visible','on');
t=eval(get(handles.thoigian,'string'));
if get(handles.ham,'value')==1;
plot(handles.axes1,t,square(2*pi*50*t,50),'LineWidth',2); elseif
get(handles.ham,'value')==2;
plot(handles.axes1,t,sin(2*pi*50*t),'LineWidth',2);
elseif get(handles.ham,'value')==3;
plot(handles.axes1,t,cos(2*pi*50*t),'LineWidth',2); elseif
get(handles.ham,'value')==4;
plot(handles.axes1,t,sawtooth(2*pi*50*t),'LineWidth',2); end
axis([0 0.1 -2 2]);
Giải thích:
- Câu lệnh 1: f=str2num(get(handles.tanso,'string'));
+ f: là 1 biến được gán
+ Lệnh get để lấy giá trị thuộc tính của string, ở đây giá trị string được
nhập từ bán phím , matlab sẽ hiểu nó là 1 chuỗi các kí tự .
get(handles.tanso,'string')
+ Lệnh str2num hoặc str2double dùng để chuyển kí tự thành 1 số. Hoặc
lệnh num2str để chuyển số thành kí tự.
f=str2num(get(handles.tanso,'string')); % lấy giá trị chứa trong ô tanso
và chuyển chuỗi thành số lưu vào biến f.
- Câu lệnh 2: set(handles.axes1,'Visible','on');
Đặt thuộc tính visible của axes1 ở trạng thái on.
- Câu lệnh 3: t=eval(get(handles.thoigian,'string'));
 Hàm eval cho phép ta chuyễn đổi một chuỗi thành một vector hay mảng.
Ví dụ: thực hiện lệnh
a=eval('0:1:6')
>> a = 0 1 2 3 4 5 6
Kết quả trả về là vector từ 0 đến 6 có bước nhảy là 1
- Câu lệnh 4: if get(handles.ham,'value')==1;
Lệnh get lấy giá trị value của ô “ ham”
Lệnh if xét điều kiện nếu value của ô “ham” =1 thực hiện lệnh bên dưới
- Câu lệnh 5: plot(handles.axes1,t,square(2*pi*50*t,50),'LineWidth',2);
Cú pháp : Plot ( địa chỉ vẽ, vẽ_x,y, ‘các thuộc tính’) Lệnh
square(2*pi*50*t,50): vẽ đồ thị sóng vuông.
- Câu lệnh 6 : xem lại câu lênh 4.
- Câu lệnh 7 : elseif get(handles.ham,'value')==2;
Nếu giá trị value của ô “ham” == 2 thực hiện lệnh bên dưới.
- Câu lệnh 8 ,9,10,11,12 tương tự.
Câu lệnh 13: axis([0 0.1 -2 2]); % Căn chỉnh lại trục đồ thị
Cú pháp : axis ( [ xmin xmax ymin ymax ] )
BẢNG OPTIONS GROUP:
Viết code cho bảng OPTIONS
Lần lượt viết các câu lệnh :
function uipanel3_SelectionChangeFcn(hObject, eventdata, handles) if
get(handles.grid,'value')==1
grid
on
else
grid
off end
if get(handles.hold,'value')==1 hold
on
else
hold
off end
Giải thích : get(handles.grid,'value')==1
Hàm trên tìm giá trị value của ô Grid on và Hold on tương ứng , nếu được chon
tương ứng value =1 , nếu bỏ chọn tương ứng value =0.
NÚT RESET
- Các lệnh sau :
set(handles.tanso,'string','');
set(handles.thoigian,'string','');
set(handles.hold,'value',0);
set(handles.grid,'value',0);
set(handles.ham,'value',1);
set(handles.axes1,'visible','off');
cla;
Giải thích:
- Câu lệnh 1, 2: set(handles.tanso,'string','');
set(handles.thoigian,'string','');
Đặt lại giá trị của ô “tanso”, “thoigian” là “ “ .
- Câu lệnh 3,4: set(handles.hold,'value',0);
set(handles.grid,'value',0);
Bỏ chọn 2 ô ‘Grid on’ và ‘Hold on’ .
- Câu lênh 5: set(handles.ham,'value',1);
Mặc định hiển thị function square.
- Câu lệnh 6: set(handles.axes1,'visible','off');
Tắt hiện thị hệ trục tọa độ
- Câu lênh 7: cla;
Xóa tất cả các đối tượng như: đường đồ thị, tên đồ thị…nhưng không
xóa trục tọa độ.
NÚT EXIT
 Lệnh : close;
Đóng chương trình
CHẠY CHƯƠNG TRÌNH TRÊN MATLAB
Sau khi lập trình cho các phím gọi cần thiết ta bắt đầu chạy chương trình
chúng ta làm thao tác như sau :
- Nhấn Run trên giao diện Edito M-file .
Sau khi nhấn Run chạy chương trình , matlab sẽ tự động Save lại M-file
Bài tập thực hành
Bài 1: Khởi tạo GUI, kéo thả các nút lệnh như giao diện sau:
Bài 2: Tạo và viết chương trình như giao diện sau:
Bài 3: Ứng dụng(GUI) viết chương trình tạo từ điển tra cứu từ như giao diện sau, (SV
chèn thêm hình nền):
BÀI THỰC HÀNH SỐ 4
ỨNG DỤNG MATLAB TRONG GIẢI TOÁN VÀ VẼ ĐỒ THỊ
Mục đích, yêu cầu:
- Trang bị cho người học sử dụng symbolic trong Matlab. Giúp cho người học giải
một số bài toán về vi phân, tích phân, biến đổi Laplace.
- Củng cố những tính chất của đa thức. giới thiệu một số ứng dụng đa thức hữu tỉ
trong hàm truyền điều khiển.
- Trang vị người học sử dụng các cú pháp vẽ đồ thị trong Matlab.
Bài 1: Tính đạo hàm của các hàm số sau:
a) y = x3x2

b) y = 2
x-1x
c) y = )x5sin(
Khi dùng sym trong việc tính tich phân thì phải khai báo biến. Dùng lệnh diff(y)
để tính đạo hàm của y.
Giải minh họa câu a:
>>sym x
>>diff*(x^3-3*sqrt(x))
ans =
3*x^2-3/2/x^(1/2)
Bài 2: TÍnh tích phân (dùng lệnh int)
a)  )dx
2
x
sin(
b)  
dx2
3
x1
x
c) dx)
xcos
e
1(e 2
-x
x
 
Bài 3: Tìm nghiệm và tính đạo hàm các đa thức sau:
a) y(x) = x3 + 4x2 – 3
b) y(x) = 12x4 – 3x2 + 3x + 10
lưu ý: Tìm nghiệm dùng lệnh roots
Tính đạo hàm, dùng lệnh polyder
Bài 4: Tính giá trị của các đa thức bài 1 tại x = 4, x = -3
Bài 5: Vẽ đồ thị hàm số x, x3, ex và e^(x2) với 0 < x < 4
Bài 6: Vẽ đồ thị hàm số f(x) = sin(1/x) với 0.01 < x < 0.1.
Bài 7: Vẽ hai hàm 2
y x và s n3xy i trên cùng một đồ thị, ghi chú thích
Bài 8: Vẽ hàm số 3
3 1y x x   sử dụng hàm plot và fplot
Bài 9: Vẽ đồ thị y1=sin(x), y2=cos(x) trên cùng 1 hệ trục tọa độ
Bài 10: Vẽ đồ thị y1=sin(x), y2=cos(x) trên 2 hệ trục tọa độ trong cùng 1 khung
Bài 11: Vẽ đồ thị chạy hàm cos bám động
Bài 12: Vẽ không gian 3 D
Bài 13:Ứng dụng(GUI) giải phương trình bậc 2 tạo như giao diện sau:
Bài 14: Ứng dụng (GUI) vẽ hàm bậc 1, bậc 2, bậc 3 như giao diện sau:
BÀI THỰC HÀNH SỐ 5
ỨNG DỤNG MATLAB TRONG GIẢI TÍCH MẠCH ĐIỆN
Bài 1: Cho mạch điện như hình vẽ, với R1 = 5  , R2=100  , R3=200  , R4=150  ,
R5=250k, V1=100v, V2=50v. Tìm I1, I2, I3 (Ứng dụng GUI tạo giao diện)
Áp dụng định luật Kirchhoff cho vòng 1, vòng 2, vòng 3 ta có:
R1*I1 + R4I4 – V1 = 0 (1)
-R4*I4 + R2I2 + R5I5 = 0 (2)
-R5I5 + R3I3 + V2 =0 (3)
Áp dụng định luật nút cho toàn mạch:
I1 = I2 + I4 (4)
I2 = I3 + I5 (5)
Thế (4), (5) vào (1), (2), (3) ta đựơc:
(R1+R4)*I1 - R4*I2 + 0*I3 = V1 (6)
-R4*I1 + (R2+R4+R5)*I2 - R5*I3 = 0 (7)
0*I1 + R5*I2 - (R3+R5)*I3= V2 (8)
Bài 2: Cho mạch điện như hình vẽ, với R1=100  , R2=100  , R3=50  , R4=1  ,
R5=200 , R6=1K, R7=3K , V1=5v, V2=5v. Tìm I1, I2, I3, I4, I5.(Ứng dụng
tạo giao diện GUI)
R2R1
R2R1
R12



R45= R4+R5
Áp dụng định luật Kirchhoff cho vòng 1, vòng 2, vòng 3 ta có:
R12*I1 + 0*I2 + 0*I3 + R3*I4 + 0*I5 - V1 = 0 (1)
0*I1 + R45*I2 + 0*I3 - R3*I4 + R6*I5 = 0 (2)
0*I1 + 0*I2 + R7*I3 + 0*I4 - R6*I5 + V2 = 0 (3)
Áp dụng định luật nút cho toàn mạch:
I1 - I2 + 0*I3 - I4 + 0*I5 = 0 (4)
0*I1 + I2 - I3 +0*I4 - I5 = 0 (5)
Bài 3: Cho mạch điện như hình vẽ, với R1=600  , R2=600  , R3=1K , R4=3K ,
R5=500 , R6=800 , R7=200  , R8=2K , R9=100  , R10=1K , V1=9v, V2=9v.
Tìm I1, I2, I3, I4, I5.
R2R1
R2R1
R12



R123=R12+R3
R5R4
R5R4
R45



R7R6
R7R6
R67



R678 = R67 +R8
Áp dụng định luật Kirchhoff cho vòng 1, vòng 2, vòng 3 ta có:
R123*I1 + 0*I2 + 0*I3 + R45*I4 + 0*I5 - V1 = 0 (1)
0*I1 + R678*I2 + 0*I3 - R45*I4 + R9*I5 = 0 (2)
0*I1 + 0*I2 + R10*I3 + 0*I4 - R9*I5 + V2 = 0 (3)
Áp dụng định luật nút cho toàn mạch:
I1 - I2 + 0*I3 - I4 + 0*I5 = 0 (4)
0*I1 + I2 - I3 +0*I4 - I5 = 0 (5)
Bài 4: Cho mạch điện như hình vẽ, với R1=200  , R2=200  , R3=300  , R4=900
, R5=1K , R6=2K , R7=500  , R8=600  , R9=1K , R10=200  ,R11=6K ,
R129K , V1=20v, V2=20v. Tìm I1, I2, I3, I4, I5. (Ứng dụng GUI tạo giao diện, chèn
hình nền, tên, lớp)
R2R1
R2R1
R12



R123=R12+R3
R5R4
R5R4
R45



R7R6
R7R6
R67



R678 = R67 +R8
R10R9
R10R9
R910



R12R11
R12R11
R1112



Áp dụng định luật Kirchhoff cho vòng 1, vòng 2, vòng 3 ta có:
R123*I1 + 0*I2 + 0*I3 + R45*I4 + 0*I5 - V1 = 0 (1)
0*I1 + R678*I2 + 0*I3 - R45*I4 + R910*I5 = 0 (2)
0*I1 + 0*I2 + R1112*I3 + 0*I4 - R910*I5 + V2 = 0 (3)
Áp dụng định luật nút cho toàn mạch:
I1 - I2 + 0*I3 - I4 + 0*I5 = 0 (4)
0*I1 + I2 - I3 +0*I4 - I5 = 0 (5)
Giải hệ 3 phương trình 3 ẩn số ta tìm được 3 nghiệm I1, I2, I3, I4, I5
BÀI THỰC HÀNH SỐ 6
ỨNG DỤNG MATLAB TRONG GIẢI TÍCH MẠCH ĐIỆN TỬ
Bài 1: Thực hành với Script m.file cho bài toán sau: cho tầng khuếch đại như hình vẽ
Vcc=9v, BJT thuộc loại silic N-P-N, có =50. Hãy xác định các điện trở trong mạch, biết
rằng ở trạng thái tĩnh Ic=1mA, Vce=5v
Hướng dẫn :
Để ổn định điểm làm việc theo nhiệt độ, chọn Re theo điều kiện
Vcc)
10
1
5
1
(Re*IeVe 
Vcc
10
1
Ve 
Do đó: Ic
Ve
Re
Ve
Re 
Dòng base ở trạng thái tĩnh

Ic
Ib 
BJT thuộc loại silic nên Vbe=0.7
Vb=Ve+Vbe
Ib
Vb-Vcc
Rb 
Ic
Ve-Vce-Vcc
Rc 
Bài 2: Ứng dụng(GUI) tạo giao diện bài 1 như sau.
Bài 3: Tạo giao diện(GUI) bằng cách callback từ script m-file bài tập.
Bài 4: Ứng dụng GUI viết chương trình cho một mạch sau Vi = 5sinwt, R1 = 300
, R2 = 30 , w = 1rad/s. vẽ dạng sóng điện áp trên tải (R2)
Áp trên tải:
0,45Vim09,0
30300
30
Vim
R2R1
R2
Vom 




 Vo=0,45sin(t) với w = 1 rad/s
Bài 5: Dùng thuật toán Matlab xác định các giá trị sau:
Cho tầng khuếch đại EC phân cực kiểu phân áp như hình trên. BJT thuộc loại
N-P-N có =100, Iceo0, Vcc=15V. Biết Rb1=32k, Rb2=6.8k, Re=1.5k, Rc=3k.
Hãy xác định điểm làm việc tĩnh.
Bài 6: Dùng thuật toán Matlab xác định các giá trị sau:
Cho tầng khuếch đại EC phân cực kiểu phân áp như bài trên. BJT thuộc loại silic
có =60, làm việc ở điểm tĩnh Q (Vce=4.5V, Ic=3mA). Hãy xác định các điện trở trong
mạch Vcc=15V. Biết Rb1=32k, Rb2=6.8k, Re=1.5k, Rc=3k. Hãy xác định điểm làm
việc tĩnh, và dựng đường tải một chiều trên đặc tuyến.

More Related Content

What's hot

Bài tập kiến trúc máy tính
Bài tập kiến trúc máy tínhBài tập kiến trúc máy tính
Bài tập kiến trúc máy tính
Ha Nguyen
 
Bài tập nhập môn lập trình
Bài tập nhập môn lập trìnhBài tập nhập môn lập trình
Bài tập nhập môn lập trình
Huy Rùa
 
Bài giảng kỹ thuật điều khiển tự động
Bài giảng kỹ thuật điều khiển tự độngBài giảng kỹ thuật điều khiển tự động
Bài giảng kỹ thuật điều khiển tự động
Nguyễn Nam Phóng
 
Vi du chi tiet giai thich lap trinh gui trong matlab
Vi du chi tiet  giai thich lap trinh gui trong matlabVi du chi tiet  giai thich lap trinh gui trong matlab
Vi du chi tiet giai thich lap trinh gui trong matlab
PhạmThế Anh
 
Phương pháp nhánh cận
Phương pháp nhánh cậnPhương pháp nhánh cận
Phương pháp nhánh cận
Diên Vĩ
 

What's hot (20)

Bài tập kiến trúc máy tính
Bài tập kiến trúc máy tínhBài tập kiến trúc máy tính
Bài tập kiến trúc máy tính
 
Chuong 04 mach logic
Chuong 04 mach logicChuong 04 mach logic
Chuong 04 mach logic
 
Bài tập nhập môn lập trình
Bài tập nhập môn lập trìnhBài tập nhập môn lập trình
Bài tập nhập môn lập trình
 
Chuong04
Chuong04Chuong04
Chuong04
 
Bài giảng kỹ thuật điều khiển tự động
Bài giảng kỹ thuật điều khiển tự độngBài giảng kỹ thuật điều khiển tự động
Bài giảng kỹ thuật điều khiển tự động
 
Sách vận hành Phay CNC Fanuc ( demo)
Sách vận hành Phay CNC Fanuc ( demo)Sách vận hành Phay CNC Fanuc ( demo)
Sách vận hành Phay CNC Fanuc ( demo)
 
Co ban ve_matlab
Co ban ve_matlabCo ban ve_matlab
Co ban ve_matlab
 
Giải bài tập Phương pháp tính
Giải bài tập Phương pháp tínhGiải bài tập Phương pháp tính
Giải bài tập Phương pháp tính
 
Vi du chi tiet giai thich lap trinh gui trong matlab
Vi du chi tiet  giai thich lap trinh gui trong matlabVi du chi tiet  giai thich lap trinh gui trong matlab
Vi du chi tiet giai thich lap trinh gui trong matlab
 
Đồ Thị Matlab
Đồ Thị Matlab Đồ Thị Matlab
Đồ Thị Matlab
 
Các cấu trúc lệnh trong C
Các cấu trúc lệnh trong CCác cấu trúc lệnh trong C
Các cấu trúc lệnh trong C
 
matlab co ban
matlab co banmatlab co ban
matlab co ban
 
Phương pháp nhánh cận
Phương pháp nhánh cậnPhương pháp nhánh cận
Phương pháp nhánh cận
 
Đề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAY
Đề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAYĐề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAY
Đề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAY
 
Bài tập tổng hợp máy điện
Bài tập tổng hợp máy điệnBài tập tổng hợp máy điện
Bài tập tổng hợp máy điện
 
30 bài toán phương pháp tính
30 bài toán phương pháp tính30 bài toán phương pháp tính
30 bài toán phương pháp tính
 
Bcvt.cơ sở điều khiển tự động ths.đặng hoài bắc, 152 trang
Bcvt.cơ sở điều khiển tự động   ths.đặng hoài bắc, 152 trangBcvt.cơ sở điều khiển tự động   ths.đặng hoài bắc, 152 trang
Bcvt.cơ sở điều khiển tự động ths.đặng hoài bắc, 152 trang
 
Bien doi lapalce
Bien doi lapalceBien doi lapalce
Bien doi lapalce
 
Cac lenh lap trinh ladder
Cac lenh lap trinh ladderCac lenh lap trinh ladder
Cac lenh lap trinh ladder
 
Công thức Máy điện 1 - Chương 2 - Máy biến áp
Công thức Máy điện 1 - Chương 2 - Máy biến ápCông thức Máy điện 1 - Chương 2 - Máy biến áp
Công thức Máy điện 1 - Chương 2 - Máy biến áp
 

Viewers also liked

Lttt matlab chuong 2
Lttt matlab chuong 2Lttt matlab chuong 2
Lttt matlab chuong 2
Hoa Cỏ May
 
Tính toán khoa học - Chương 4: Giải phương trình phi tuyến
Tính toán khoa học - Chương 4: Giải phương trình phi tuyếnTính toán khoa học - Chương 4: Giải phương trình phi tuyến
Tính toán khoa học - Chương 4: Giải phương trình phi tuyến
Chien Dang
 
Lttt matlab chuong 5
Lttt matlab chuong 5Lttt matlab chuong 5
Lttt matlab chuong 5
Hoa Cỏ May
 
Tính toán khoa học - Chương 0: Introduction
Tính toán khoa học - Chương 0: IntroductionTính toán khoa học - Chương 0: Introduction
Tính toán khoa học - Chương 0: Introduction
Chien Dang
 
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...
Chien Dang
 
Phương pháp số và lập trình - Giải phương trình phi tuyến
Phương pháp số và lập trình - Giải phương trình phi tuyếnPhương pháp số và lập trình - Giải phương trình phi tuyến
Phương pháp số và lập trình - Giải phương trình phi tuyến
Hajunior9x
 
Xử lý ảnh PTIT
Xử lý ảnh PTITXử lý ảnh PTIT
Xử lý ảnh PTIT
Tran Tien
 
Mô phỏng xích markov bằng thuật toán metropolis hastings
Mô phỏng xích markov bằng thuật toán metropolis hastingsMô phỏng xích markov bằng thuật toán metropolis hastings
Mô phỏng xích markov bằng thuật toán metropolis hastings
thuvienso24h
 
Giaotrinh pppthh v10
Giaotrinh pppthh v10Giaotrinh pppthh v10
Giaotrinh pppthh v10
luuguxd
 
mo phong he thong tt so
mo phong he thong tt somo phong he thong tt so
mo phong he thong tt so
Dung Tran
 
Phần 8: Mảng hai chiều
Phần 8: Mảng hai chiềuPhần 8: Mảng hai chiều
Phần 8: Mảng hai chiều
Huy Rùa
 

Viewers also liked (20)

Lttt matlab chuong 2
Lttt matlab chuong 2Lttt matlab chuong 2
Lttt matlab chuong 2
 
Cach su dung matlab
Cach su dung matlabCach su dung matlab
Cach su dung matlab
 
Tính toán khoa học - Chương 4: Giải phương trình phi tuyến
Tính toán khoa học - Chương 4: Giải phương trình phi tuyếnTính toán khoa học - Chương 4: Giải phương trình phi tuyến
Tính toán khoa học - Chương 4: Giải phương trình phi tuyến
 
Tài liệu Matlab kỹ thuật
Tài liệu Matlab kỹ thuậtTài liệu Matlab kỹ thuật
Tài liệu Matlab kỹ thuật
 
Giải số bằng mathlab
Giải số bằng mathlabGiải số bằng mathlab
Giải số bằng mathlab
 
Lttt matlab chuong 5
Lttt matlab chuong 5Lttt matlab chuong 5
Lttt matlab chuong 5
 
Tính toán khoa học - Chương 0: Introduction
Tính toán khoa học - Chương 0: IntroductionTính toán khoa học - Chương 0: Introduction
Tính toán khoa học - Chương 0: Introduction
 
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...
Tính toán khoa học - Chương 6: Bài toán giá trị ban đầu với phương trình vi p...
 
Phương pháp số và lập trình - Giải phương trình phi tuyến
Phương pháp số và lập trình - Giải phương trình phi tuyếnPhương pháp số và lập trình - Giải phương trình phi tuyến
Phương pháp số và lập trình - Giải phương trình phi tuyến
 
Đề cương môn xử lý ảnh
Đề cương môn xử lý ảnhĐề cương môn xử lý ảnh
Đề cương môn xử lý ảnh
 
Xử lý ảnh PTIT
Xử lý ảnh PTITXử lý ảnh PTIT
Xử lý ảnh PTIT
 
Mô phỏng xích markov bằng thuật toán metropolis hastings
Mô phỏng xích markov bằng thuật toán metropolis hastingsMô phỏng xích markov bằng thuật toán metropolis hastings
Mô phỏng xích markov bằng thuật toán metropolis hastings
 
Matlab toan tap
Matlab toan tapMatlab toan tap
Matlab toan tap
 
Giaotrinh pppthh v10
Giaotrinh pppthh v10Giaotrinh pppthh v10
Giaotrinh pppthh v10
 
Phương pháp sai phân hữu hạn và phần tử hữu hạn trong truyền nhiệt
Phương pháp sai phân hữu hạn và phần tử hữu hạn trong truyền nhiệtPhương pháp sai phân hữu hạn và phần tử hữu hạn trong truyền nhiệt
Phương pháp sai phân hữu hạn và phần tử hữu hạn trong truyền nhiệt
 
mo phong he thong tt so
mo phong he thong tt somo phong he thong tt so
mo phong he thong tt so
 
Tai lieu plc s7 1200
Tai lieu plc s7 1200Tai lieu plc s7 1200
Tai lieu plc s7 1200
 
Phần 8: Mảng hai chiều
Phần 8: Mảng hai chiềuPhần 8: Mảng hai chiều
Phần 8: Mảng hai chiều
 
LabVIEW FPGA
LabVIEW FPGALabVIEW FPGA
LabVIEW FPGA
 
Phương pháp tính
Phương pháp tínhPhương pháp tính
Phương pháp tính
 

Similar to Bài tập thực hành số 1 (20)

Chuong 1 Matlab co ban.pdf
Chuong 1 Matlab co ban.pdfChuong 1 Matlab co ban.pdf
Chuong 1 Matlab co ban.pdf
 
Chuong 1 Matlab co ban.pdf
Chuong 1 Matlab co ban.pdfChuong 1 Matlab co ban.pdf
Chuong 1 Matlab co ban.pdf
 
Lap trinh matlab_co_ban_1731
Lap trinh matlab_co_ban_1731Lap trinh matlab_co_ban_1731
Lap trinh matlab_co_ban_1731
 
Baitap ktlt
Baitap ktltBaitap ktlt
Baitap ktlt
 
Baitap ktlt
Baitap ktltBaitap ktlt
Baitap ktlt
 
Bai thi Nghiem ky thuat dien tu
Bai thi Nghiem ky thuat dien tuBai thi Nghiem ky thuat dien tu
Bai thi Nghiem ky thuat dien tu
 
Thuchanh Ktdk-matlab
Thuchanh Ktdk-matlabThuchanh Ktdk-matlab
Thuchanh Ktdk-matlab
 
Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433
Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433
Tai lieu huong_dan_hoc_matlab_danh_cho_mon_xu_ly_anh_rat_hay_2264_7433
 
Lttt matlab bt1
Lttt matlab bt1Lttt matlab bt1
Lttt matlab bt1
 
Matlab intro
Matlab introMatlab intro
Matlab intro
 
05 mat102-bai 2-v1.0
05 mat102-bai 2-v1.005 mat102-bai 2-v1.0
05 mat102-bai 2-v1.0
 
Excel THVP.pdf
Excel THVP.pdfExcel THVP.pdf
Excel THVP.pdf
 
H hai epc_baitap
H hai epc_baitapH hai epc_baitap
H hai epc_baitap
 
Chuong1
Chuong1Chuong1
Chuong1
 
Bài tập CTDL và GT 4
Bài tập CTDL và GT 4Bài tập CTDL và GT 4
Bài tập CTDL và GT 4
 
Giai phuong trinh bang excell
Giai phuong trinh bang excellGiai phuong trinh bang excell
Giai phuong trinh bang excell
 
THCS_W11_BaiDocThem
THCS_W11_BaiDocThemTHCS_W11_BaiDocThem
THCS_W11_BaiDocThem
 
Lý thuyết excel hàm excel
Lý thuyết excel   hàm excelLý thuyết excel   hàm excel
Lý thuyết excel hàm excel
 
Chuong3
Chuong3Chuong3
Chuong3
 
Gt de quy_2
Gt de quy_2Gt de quy_2
Gt de quy_2
 

Recently uploaded

SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
ChuThNgnFEFPLHN
 
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptxBài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
DungxPeach
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
Xem Số Mệnh
 
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdfSLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
hoangtuansinh1
 

Recently uploaded (20)

30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
 
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quanGNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
 
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
 
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngGiới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
 
Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................
 
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIGIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
 
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
 
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptxBài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
 
bài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docxbài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docx
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
 
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
 
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
 
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoáCác điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
 
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdfSLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
 

Bài tập thực hành số 1

  • 1. BÀI TẬP THỰC HÀNH SỐ 1 CÁC LỆNH CƠ BẢN TRONG MATLAB I. Làm quen với môi trường cửa sổ làm việc Matlab. 1. Một số thao tác cơ bản trong MATLAB Trong MATLAB, thanh trình đơn thay đổi tùy theo cửa sổ mà ta lựa chọn. Tuy vậy các trình đơn File, Desktop, Window, Help có mặt hầu hết trong các thanh trình đơn. Trình đơn File:  New: tạo một đối tượng mới (biến, m-file, figure, model, GUI).  Open: mở một file theo định dạng của MATLAB (*.m, *.mat, *.mdl)  Import data…: nhập dữ liệu từ các file khác vào MATLAB.  Save workspace…: lưu các biến trong MATLAB vào file *.mat.  Set path: khai báo các đường dẫn của các thư mục chứa các m-file.  Preferences: thay đổi các định dạng về font, font size, color cũng như các tùy chọn cho Editor, Command Window v.v.  Page Setup: định dạng trang in.  Print: in. Trình đơn Desktop:
  • 2.  Desktop layout: sắp xếp các cửa sổ trong giao diện.  Save layout: lưu cách sắp xếp cửa sổ. Trình đơn Window dùng để kích họat (activate) cửa sổ. Nút Start cung cấp shortcut tới các công cụ trong MATLAB + Command Window (Cửa sổ lệnh ). + Current Directory ( Cửa sổ thư mục hiện hành ). + Command History (Cửa sổ lịch sử ). + Work Space ( Không gian làm việc ) 2. Các chức năng trên cửa sổ lệnh: Clc: làm sạch màn hình. Clear: làm sạch cửa sổ workspace. Help: lấy thông tin trợ giúp. Edit: soạn thảo chương trình. Type: xem nội dung của file. ←, → : dịch chuyển con trỏ trái phải. ↑, ↓: chọn lại những lệnh đă thực hiện. 3. Gán các kiểu dữ liệu cho biến: Thực hiện các dòng lệnh sau và kiểm tra kết quả. >> a = 5 % gán dữ liệu số nguyên >> b = pi % gán số pi = 3.14159265 cho biến d >>h = nan % khoâng phaûi soá 4. Định dạng các kiểu dữ liệu số với lệnh format : long, long e, short, short e, trong đó e là cơ số 10. Thực hiện 2 dòng lệnh sau: >> format long % số chấm cố định là 15 con số >> A = pi Thực hiện tiếp 2 dòng lệnh sau rồi so sánh kết quả. >> format long e % số dấu chấm động là 15 con số >> A = pi So saùnh keát quaû khi laàn löôït thöïc hieän caùc doøng leänh treân cho thaáy : keát quaû baèng nhau. Nhöng ñöôïc bieåu dieãn khaùc nhau: vôùi A = 3,14159265358973e+000 trong ñoù e + 000 = 100 = 1 Tương tự thực hiện các dòng lệnh sau. >> format short % số chấm cố định là 5 con số ( mặc định ) >> A = pi >> format short e % số dấu chấm động là 5 con số >> A = pi Töông töï so saùnh keát quaû khi laàn löôït thöïc hieän caùc doøng leänh tieáp theo ôû treân cho thaáy : keát quaû baèng nhau. Nhöng ñöôïc bieåu dieãn khaùc nhau: vôùi A = 3,1416e+000 trong ñoù e + 000 = 100 = 1
  • 3. 5. Qui ước biến và thực hiện các phép toán trên cửa sổ lệnh. Cộng +, trừ -, nhân *, chia phải /, chia trái , lũy thừa ^. Độ ưu tiên Phép toán Tính ưu tiên 1 ( , ) trong ra ngoài 2 ^ trái qua phải 3 ± a 4 * , / , trái qua phải 5 + , - trái qua phải II. Làm việc với mảng trên cửa sổ lệnh. 1. Gán dữ liệu nguyên, thực, phức cho mảng một chiều, hai chiều bằng chỉ số. - mảng 1 chiều. Thực hiện các dòng lệnh sau lưu lại kết quả . >> X(3) = 4 % phần tử thứ 3 của mảng là 4. >> X(2) = 1 + 3i % phần tử thứ 2 của mảng là 1 +3i - mảng 2 chiều : Thực hiện các dòng lệnh sau lưu lại kết quả. >> T(1,1) = 1 % gán giá trị cho mảng theo chỉ số , >> T(1,2) = 46 >> T(2,1) = 3 + 2i >> T(2,2) = 4.34 2. Gán dữ liệu nguyên, thực, phức cho mảng một chiều, hai chiều bằng nội dung. - mảng 1 chiều. Thực hiện các dòng lệnh sau lưu lại kết quả: >> x = [ 3 1 5 ] % gán vevtor hàng 3 1 5 cho biến x. >> y = [ 2.1 4.6 3.8 ] >> z = [ 2+3i 7-4i 9+5i ] - mảng 2 chiều: Thực hiện các dòng lệnh sau lưu lại kết quả. >> t = [ 6 5 ; 5 3 ] >> u = [ 8.1 3.6 ; 3.5 7.2 ] >> v = [ 3+i 7-7i ; 8-4i 4+5i ] 3. Truy cập mảng một chiều, hai chiều bằng chỉ số. A(i,j) truy cập phần tử có chỉ số i,j A(1: k,j) truy cập từ phần tử thứ nhất đến phần tử thứ k của cột j A(i,1:k) truy cập từ thứ 1 đến phần tử thứ k của hàng i
  • 4. Trước tiên ta gán nội dung cho mảng. >>z = [ 2 3.4 4+ 3i ; 2 3 + 2i 7.2] Truy cập phần tử có chỉ số 2,1 >>z (2,1) % truy cập phần tử thứ 2 của cột 1. Truy cập từ phần tử thứ 1đến phần tử thứ 2 của cột 1 >> z(1:2,1) % truy cập phần tử : từ 1 đến 2 của cột 1. Truy cập từ phần tử thứ 1 đến phần tử thứ 3 của hàng 2. >> z(2,1:3) % truy cập phần tử thứ 1 đến 3 của hàng 2. III .Thực hành một số hàm với mảng trên cửa sổ lệnh. sum, prod, diff, trace, diag, eye, ones, zeros, magic, randn, inv, eig . . .  sum(A) : tạo ra vector hàng với các phần tử là tổng của các phần tử của các cột tương ứng.  prod(A) : tạo vector hàng với các phần tử là tích của các phần tử của các cột tương ứng.  trace(A) : tính vết của ma trận A ( tổng các phần tử trên đường chéo).  eye(n) : tạo ra ma trận đơn vị.  magic(n) : tạo ma trận vuông với tổng các phần tử hàng, cột và đường chéo là bằng nhau.  rand(n) : tạo ma trận vuông với các phần tử được phân bố ngẫu nhiên. Thực hiện các lệnh sau và lưu lại kết quả. >> z = [ 3.4 4+3i ; 2 3+2i ] % gán ma trận cấp 2x2 cho biến z >> I = sum(z) % tính tổng ma trận theo cột tương ứng. >> J = prod(z) % tính tích các cột tương ứng >> L = trace(z) >> P = eye(4) >> Q = magic(3) >> M = rand(5) IV .Thực hành các phép toán mảng trên cửa sổ lệnh.  + : công ma trận.  - : trừ ma trận.  * : nhân ma trận.  / : chia phải ma trận.  : chia trái ma trận.  ^ : tóan tử lũy thừa ma trận.  .* : tóan tử nhân hai phần tử tương ứng của hai ma trận.  ./ : chia phải hai phần tử tương ứng của hai ma trận.  . : chia trái hai phần tử tượng ứng của hai ma trận.  .^ : tóan tử lũy thừa từng mỗi phần tử của ma trận.
  • 5. Bài tập thực hành: Bài 1: Tính bằng tay các biểu thức sau đó thực hiện bằng matlab và lưu lại kết quả. a. 2 / 2 * 3 b. 6 – 2 / 5 + 7 ^ 2 – 1 c. 10 / 2 5 – 3 + 2 * 4 d. e. f. g. 3 ^ 2 / 4 h. 3 ^ 2 ^ 2 k. 2 + round(6 / 9 + 3 * 2) / 2 – 3 l. 2 + floor(6 / 9 + 3 * 2) / 2 – 3 m. 2 + ceil(6 / 9 + 3 * 2) / 2 – 3 n. fix(4/9)+fix(3*(5/6)) 2 1 3 2 2 1 3 2     60 1000(1 0.15 /12) 3 8 1 2 sin(5) os6 7 e c      Bài 2: Tính các biểu thức sau, làm tròn đến 15 chữ số: a. cosh(0.1) b. ln 2 c. arctan(1/ 2) Bài 3: Tìm a, b, c biết: 2 5 6 7a x y z   ; 2 3 3 4 5 y b x z   ; 1 2 1 1c x         với x = 10, y = -20 và z = 30 Bài 4: Dự đoán kết quả xuất ra màn hình: a. 2 ; 4 b. 2 / 4 c. 2 4 d. 2 , 4 e. 2 : 4 Bài 5: Cho x = 2, y = 3. Dự đoán lần lượt các kết quả tiếp theo: z = x 3 4 5 2   2 2 3 4.5
  • 6. y = y +z x = y + x – z x + y – z Bài 6: Cho x = [1 4 8], y = [2 1 5] và A = [3 1 6 ; 5 2 7] Thực hiện các phép tính sau: a. x*2 + y*3: b. x – y.^3: c. A*3 /x d. A.^2 Bài 7: Cho x = [2 5 1 6]. a. Cộng thêm 16 vào tất cả các phần tử. b. Cộng thêm 3 vào các phần tử ở vị trí lẻ. c. Lấy căn bậc 2 tất cả các phần tử. d. Bình phương tất cả các phần tử. Bài 8: Cho x, y lần lượt là các vector cột. x = [3 2 6 8]’, y = [4 1 3 5]’. a. Lấy tổng các phần tử của x cộng thêm vào từng phần tử của y. b. Luỹ thừa mỗi phần tử của x với số mũ tương ứng là các phần tử của y. c. Chia các phần tử của y với các phần tử tương ứng của x. d. Nhân các phần tử của x với các phần tử tương ứng của y, đặt trong vector z. e. Tính tổng các phần tử của z, gán cho w. f. Tính x.* y – w. g.Tích vô hướng của x và y Lưu ý: x’ là ma trận chuyển vị của x Bài 9: Cho ma trận A = [2 4 1 ; 6 7 2 ; 3 5 9], viết lệnh Matlab để : a. Tạo vector x là hàng thứ nhất của A: b. Tạo ma trận y là hai hàng còn lại (cuối) của A: c. Tính tổng theo hàng ma trận A: d. Tính tổng theo cột ma trận : Bài 10. Cho ma trận 6 9 5 1 8 7 2 3 1 3 4 4 5 2 8 2 C             và 4 8 3 7 2 3 5 1 D             , dùng Matlab: a. Tạo ma trận E1 là 2 cột nằm giữa của ma trận C sử dụng toán tử ‘:’ b. Tạo ma trận E2 từ hàng 1 và 2 và cột 2 và 3 của ma trận C sử dụng toán tử ‘:’ c. Tạo ma trận E3 bằng cách ghép 2 ma trận E1 và D với nhau. Bài 11. Cho các mảng sau F = [3 21 6 17], G = [4 27 9 3] và H = [1 2 9 15] a. Tạo ma trận K1 từ F, G, H mà F là hàng đầu tiên, G là hàng thứ hai, H là hàng thứ ba. b. Tạo ma trận K1 từ F, G, H mà F là cột đầu tiên, G là cột thứ hai, H là cột thứ ba.
  • 7. BÀI TẬP THỰC HÀNH SỐ 2 LÀM VIỆC VỚI M-FILE Thực hành các lệnh trên cửa sổ soạn thảo m-file. File-New : tạo tập tin mới. File-Open: mở tập tin đã có sẵn. File-Save: lưu tập tin lệnh đĩa. File-Save as lưu tập tin lên đĩa với một tên khác. I. Một số lệnh lập trình trong Matlab. 1. Lệnh EVAL a. Công dụng: Chuyển đổi chuỗi ký tự thành biểu thức. b. Cú pháp: kq = eval(‘string’) c. Giải thích: kq: biến chứa kết quả. Nếu ‘string’ là các ký số thì chuyển thành những con số. Nếu ‘string’ là câu lệnh thì chuyển thành các lệnh thi hành được. 2. Lệnh FOR a. Công dụng: Dùng để thực hiện 1 công việc cần lặp đi lặp lại theo một quy luật, với số bước lặp xác định trước. b. Cú pháp: for biến điều khiển = giá trị đầu : giá trị cuối, thực hiện công việc; end c. Giải thích: Công việc chính là các lệnh cần thi hành, có thể có nhiều lệnh, kết thúc lệnh phải có dấu; 3. Lệnh FUNCTION a. Công dụng: Tạo thêm hàm mới. b. Cú pháp: function s = n(x) c. Giải thích: s: tên biến chứa giá trị trả về sau khi thi hành hàm.
  • 8. n: tên gợi nhớ. 4. Lệnh INPUT a. Công dụng: Dùng để nhập vào 1 giá trị. b. Cú pháp: tên biến = input (‘promt’) tên biến = input (‘promt’, ‘s’) c. Giải thích: tên biến, là nơi lưu giá trị ngập vào. ‘promt’: chuỗi ký tự muốn nhập vào. ‘s’: cho biết giá trị nhập vào là nhiều ký tự. 5. Lệnh IF …ELSEIF …ELSE a. Công dụng: Thực hiện lệnh khi thỏa điều kiện. b. Cú pháp: if biểu thức luận lý 1 thực hiện công việc 1; elseif biểu thức luận lý 2 thực hiện công việc 2; else thực hiện công việc 3; end c. Giải thích: Khi biểu thức luận ký 1 đúng thì thực hiện công việc 1 tương tự cho biểu thức luận lý 2. Nếu cả hai biểu thức sai thì thực hiện công việc sau lệnh else. Biểu thức luận lý là các phép so sánh ==, <, >, <=, >= công việc chính là các lệnh cần thi hành, có thể có nhiều lệnh, kết thúc lệnh phải có dấu ; 6. Lệnh MENU a. Công dụng: Tạo menu để chọn chức năng. b. Cú pháp: tên biến = menu (‘Tên menu’,‘chức năng1’,‘chức năng2’, …. , ‘chức năng n’) c. Giải thích: tên menu: là tiêu đề của menu. tên biến: là nơi cất giá trị nhận được sau khi chọn chức năng của menu.
  • 9. Chức năng 1, 2, ….,n:khi chọn chức năng nào thì tên biến có giá trị là số thứ tự của chức năng đó. 7. Lệnh PAUSE a. Công dụng: Dừng chương trình theo ý muốn. b. Cú pháp: pause on pause off pause (n) c. Giải thích: pause on: dừng chương trình, và chờ nhấn 1 phím bất kỳ (trừ các phím điều khiển) chương trình thực hiện tiếp. pause off: tắt chức năng pause. pause (n): dừng chương trình tại n giây. 8. Lệnh WHILE a. Công dụng: Dùng để thực hiện 1 công việc cần lặp đi lặp lại theo một quy luật, với số bước lặp không xác định, phụ thuộc vào biểu thức luận lý. b. Cú pháp: while biểu thức luận lý thực hiện công việc; end c. Giải thích: Biểu thức luận lý là các phép so sánh = =, <, >, <=, >= Công việc chính là các lệnh cần thi hành, có thể có nhiều lệnh, kết thúc lệnh phải có dấu ; Khi thực hiện xong công việc thì quay lên kiểm tra lại biểu thức luận lý, nếu vẫn còn đúng thì tiếp tục thực hiện, nếu sai thì kết thúc. 9. Lệnh INT2STR a. Công dụng: Chuyển số nguyên sang dạng chuỗi. Chuyển các ký tự trong một chuỗi sang số thứ tự tương ứng trong bảng mã ASCII. b. Cú pháp: kq = INT c. Giải thích: kq: biến STR(n)chứa kết quả. n: tên biến cần chuyển, nếu n là số nguyên thì kq là chuỗi ký số.
  • 10. Nếu n là chuỗi ký tự thì kq là số tương ứng trong bảng mã ASCII 10. Lệnh NUM2STR a. Công dụng: Chuyễn số thực sang dạng chuỗi. Chuyển các ký tự trong một chuỗi sang số thứ tự tương ứng trong bảng mã ASCII. b. Cú pháp: kq = num2tr(n) c. Giải thích: kq: biến chứa kết quả. n: tên biến cần chuyển, nếu n là số thực thì kq là số tương ứng trong bảng mã ASCII. 11. Lệnh STR2NUM a. Công dụng: Chuyển chuỗi (dạng số) sang số thực. b. Cú pháp: n = str2num(s) c. Giải thích: s: chuỗi dạng số, n: số thực. II. Lập trình với M-file Sử dụng vòng lặp for, vòng lặp while, lệnh rẽ nhánh if, if-else, if-elseif-else, lệnh kiểm tra trường hợp case, lệnh break… 1. Lập trình với Script m-file. - Mở phần mểm Matlab, khởi tạo giao diện Script m-file:
  • 11. a. Sinh viên tự viết 1 Script m-file vẽ 1 hình Sin % ve hinh sin x = 0:pi/100:2*pi; y = sin(x); plot(x,y,'m','linewidth',1.5 ,'linestyle' , '+' ),grid axis('square') xlabel('x') ylabel('y') title('VE HINH SIN') % tạo tiêu đề cho đồ thị là VE HINH SIN % End of program >> chạy chương trình : vào biểu tượng trên thanh công cụ hoặc 2. Lập trình với function m-file. >> Mở phần mểm Matlab, khởi tạo giao diện Script m-file:
  • 12. a. Chương trình giải pt bậc 2. % Function m-file function [x1, x2] = bachai(a,b,c) x = roots([a b c]); x1 = x(1) x2 = x(2) %End Save lại với tên là bachai.m, trong cửa sổ command window gõ lệnh >> bachai ( 1 ,2 ,-3) % giai pt: x^2 + 2*x -3 = 0 b. Sinh viên tự viết 1 function m-file giải phương trình bậc 2 mà không dùng hàm roots mà matlab đã hổ trợ.(lưu với tên file là timnghiem.m) Bài tập thực hành 1. Tạo ra 1 Script file ptb2.m bằng cách nhập vào các hệ số a, b, c và dùng hàm timnghiem.m để tìm nghiệm. 2. Sinh viên tự thực hiện chương trình vẽ đường cong parabol y=a*x^2 + b với các hệ số a, b, nhập từ keyboard. 3. Viết chương trình tính tổng của 2 số a và b nhập từ bàn phím. 4. Viết chương trình tính tổng bình phương của 2 số a và b nhập từ bàn phím. 5. Tìm gía trị lớn nhất của 2 số a và b nhập từ bàn phím. 6. Tìm USC lớn nhất và BSC nhỏ nhất của 2 số a và b. 7. Nhập vào giá trị n, kiểm tra xem n có phải là số nguyên tố? 8. Tính tổng s = 1 + 1/2 +1/3 + …..+1/n 9. Tính tổng các dãy số s=1+3+5+..+n 10.Tính tổng 222 n/1...3/11/21A 
  • 13. 11.Tính tổng các tích 2 số liên tiếp từ 1 đến n s=1*2+2*3+3*4+4*5+…+(n-1)*n. 12.Viết chương trình nhập vào 1 dãy số gồm n phần tử, xuất ra giá trị lớn nhất và phần tử nhỏ nhất của dãy số. 13.Viết chương trình nhập vào 1 dãy số gồm n phần tử, tính trung bình cộng các số dương trong dãy. 14.Cho ma trận A=[5 9 10 20; 6 2 40 6; 9 3 20 10; 8 4 30 8] a. Tìm tổng của ma trận A b. Tìm ma trận chuyển vị của ma trận A c. Tìm đường chéo của ma trận A d. Tìm tổng đường chéo của ma trận A
  • 14. BÀI TẬP THỰC HÀNH SỐ 3 TẠO GIAO DIỆN GUI I. Các hướng dẫn về thiết kế giao diện GUI trong Matlab 1. Khởi động GUI - Thực hiện khởi động Matlab đến GUI theo hình sau:  Khởi động Matlab từ biểu tượng Matlab trên màn hình desktop.  Trong cửa sổ Comment Windowns gõ lệnh “guide” và enter ta được giao diện màn hình như sau: Trong cửa sổ GUIDE Quick Start có nhiều lựa chọn theo một trong các khuân mẫu sau: Create New GUI: Tạo một hộp thoại GUI mới theo một trong các loại sau  Blank GUI (Default): Hộp thoại GUI trống không có một điều khiển uicontrol nào cả.  GUI with Uicontrols: Hộp thoại GUI với một vài uicontrol như button, ...  GUI with Axes and Menu: Hộp thoại GUI với một uicontrol axes và button, các menu để hiển thị đồ thị.  Modal Question Dialog: Hộp thoại đặt câu hỏi Yes, No.
  • 15. Open Existing GUI: mở một project có sẵn. Trong hướng dẫn này, các bạn tạo một project mới nên sẽ chọn Blank GUI - Nhấp Blank GUI (Default) chọn OK để tạo một giao diện bắt đầu với giao diện trống, ta được hình ảnh giao diện trong GUI như sau: 2. Mô tả chức năng giao diện GUI
  • 16. Công cụ Mô tả Layout editor Chọn các thành phần từ bảng thành phần, trình bày, và sắp xếp chúng trong các khu vực bố trí. (Tùy chỉnh hiện tên các thành phần: File => Preferences) Align Objects Dùng để sắp xếp các đối tượng điều khiển. Menu Editor Tạo menu cho giao diện.
  • 17. Tab Order Editor Thiết lập các tab và sắp xếp thứ tự của các thành phần trong bố trí của bạn . Toolbar Editor Thanh công cụ tạo ra có chứa các nút bấm được xác định trước và tùy chỉnh và chuyển đổi nút. Editor Hiển thị , trong trình soạn thảo mặc định của bạn , các tập tin mã kết hợp với giao diện đồ họa . M-file editor Mở cửa sổ M-file. Property Inspector Thiết lập các thuộc tính cảu các đối tượng điều khiển. Nó cung cấp một danh sách tất cả các thuộc tính bạn có thể thiết lập và hiển thị các giá trị hiện tại của chúng. Object Browser Hiển thị một danh sách phân cấp của các đối tượng trong giao diện đồ họa. Run Lưu và chạy giao diện hiện tại. Resize box Tùy chỉnh kích thước giao diện. Position Readouts Liên tục hiển thị vị trí con trỏ chuột và vị trí của các đối tượng được chọn. - Phía bên trái là nhóm các biểu tượng được Matlab GUI hỗ trợ sẵn: - Push Button : là nút nhấn, khi nhấn vào sẽ thực thi lệnh trong cấu trúc hàm callback của nó. - Slider : là thanh trượt cho phép người dùng di chuyển thanh trượt để thực thi lệnh. - Radio Button : nó giống như Check Box nhưng thường được sử dụng để tạo sự lựa chọn duy nhất, tức là 1 lần chỉ được chọn 1 trong số các nhóm nhiều nút. Khi một ô được chọn thì các ô còn lại trong nhóm bị bỏ chọn. o Check box : sử dụng để đánh dấu tích (thực thi) vào và có thể
  • 18. check nhiều ô để thực thi. o Edit Text : là nơi các kí tự được nhập vào từ người dùng, người dùng có thể thay đổi được. o Static Text : là các kí tự được hiển thị thông qua các callback, hoặc thông thường để viết nhãn cho các biểu tượng, người dùng không thể thay đổi nội dung. o Pop-up Menu : mở ra danh sáchcác lực chọn khi người dùng nhấp chuột vào. Chỉ chọn được 1 mục trong danh sách các mục. o List Box : hộp thoại danh sáchcách mục, cho phép người dùng chọn một hoặc nhiều mục. o Toggle Button : là nút nhấn có 2 điều khiển, khi nhấp chuột và nhả ra, nút nhấn được giữ và lệnh thực thi, khi nhấp chuột vào lần thứ 2, nút nhấn nhả ra, hủy bỏ lệnh vừa thực thi. o Table : tạo ra một bảng tương tự trong Excel. - Axes : đây là giao diện đồ họa hiển thị hình ảnh, nó có nhiều thuộc tính bao gồm: không gian 2D (theo trục đứng và trục ngang), 3D (hiển thị không gian 3 chiều). - Panel : tạo ra một mảng nhóm các biểu tượng lại với nhau giúp ta dễ kiểm soát và thao tác khi di chuyển. - Button Group : quản lí sự lựa chọn của nút Radio Button. - Active Control : quản lí một nhóm các bút hoặc các chương trình liên quan với nhau trong Active. 3. Giới thiệu hộp thoại Inspector
  • 20. BackgroundColor Màu nền của đối tượng. BeingDeleted Đối tượng đã được xóa. BusyAction Callback thường xuyên gián đoạn. ButtonDownFcn Nút nhấn Callback thường xuyên. CData Hình ảnh màu thật hiển thị trên điều khiển. Callback Điều khiển hoạt động. Clipping Thuộc tính này không có tác dụng trên các đối tượng điều khiển. CreateFcn Thường xuyên thực hiện Callback trong quá trình tạo đối tượng. DeleteFcn Thường xuyên thực hiện Callback trong quá trình xóa đối tượng Enable Kích hoạt hoặc vô hiệu hóa các đối tượng điều khiển. Extent Vị trí hình chữ nhật (chỉ đọc). FontAngle Kiểu chữ nghiêng. FontName Kiểu chữ. FontSize Cỡ chữ. FontUnits Đơn vị kích thước font chữ. FontWeight Nét chữ. ForegroundColor Màu chữ. HandleVisibility Cho dù xử lý có thể truy cập từ dòng lệnh và ảnh minh hoạ. HitTest Lựa chọn bằng cách click chuột. Thuộc tính này không có tác dụng trên các đối tượng điều khiển. HorizontalAlignment Căn ngang của chuỗi nhãn. SliderStep Chế độ Callback gián đoạn thường xuyên.
  • 21. KeyPressFcn Nhấn phím Callback thường xuyên. ListboxTop Chỉ số trên hầu hết các chuỗi hiển thị trong hộp danh sách Max Giá trị lớn nhất (phụ thuộc vào đối tượng điều khiển) Min Giá trị nhỏ nhất (phụ thuộc vào đối tượng điều khiển) Position Kích thước và vị trí của đối tưỡng điều khiển. SliderStep Kích thước bước nhảy của thanh trượt. String Nhãn của các đối tượng điều khiển, các mục hộp danh sách, lựa chọn trình đơn pop-up. Style Kiểu của đối tượng điều khiển. Tag Dùng để phân biệt giữa các đối tượng điều khiển. TooltipString Tạo tip cho đối tượng điều khiển. UIContextMenu Kết hợp một trình đơn ngữ cảnh với đối tượng điều khiển. Units Đơn vị đo lường. UserData Dữ liệu liên kết với đối tượng điều khiển. Value Giá trị hiện thời của đối tượng điều khiển. Visible Điều khiển thuộc tính nhìn thấy của các đối tượng. 4. Một vài chức năng mở rộng Chú ý, để tạo sự thẳng hàng, cột của các hộp thoại cho đẹp mắt ta làm như sau: - Nhấn giữ phím Ctrl và nhập vào các hộp thoại muốn chỉnh sửa, trên Menu chọn Align Objects . Hộp thoại Align hiện ra như sau:
  • 22. Hộp thoại Align Objects - Trong hộp thoại trên ta có thể cân chỉnh các nút, nhóm nút sao cho chúng thẳng hàng, thẳng cột và đều nhau. Sau khi cân chỉnh nhấn nút Apply để lưu thay đổi. - Bây giờ ta thiết lập thuộc tính chung cho giao diện (toàn bộ vùng thiết kế hay nền giao diện) :  Nhấp đúp chuột vào bất cứ vị trí nào trên nền giao diện để vào hộp thoại Inspector (hoặc trên menu chọn View -> Property Inspector), hộp thoại Inspector hiện ra như sau:  Thiết lập Tag là “exit” - Tiếp tục tùy chọn nâng cao , vào Menu Tools => GUI Options
  • 23. GUI Options - Trên hộp thoại Resize behavior chọn dòng số 2 (Proportional), dòng này cho phép người dùng thay đổi khích thước của giao diện và các đối tượng cũng tự động thay đổi kích thước phù hợp với nền giao diện, nhấn OK để lưu thay đổi. 5. Thiết kế giao diện GUI KHỞI TẠO CÁC ĐỐI TƯỢNG ĐIỀU KHIỂN: - Nhấn tổ hợp phím Ctrl + S để thực hiện lưu file, sau khi chọn đường dẫn để lưu file (Chú ý không lưu file với các biến đặc biệt hoặc bằng các con số khởi đầu), nhấn save Matlab sẽ tự động tạo ra 2 file gồm một file .m và một file .fig, trong đó file .m là Mfile chứa các hàm Matlab đã tạo sẵn hỗ trợ giao diện. - Lần lượt kéo thả các nút như hình sau:
  • 24. Khởi tạo các đối tượng điều khiển. - Mỗi hộp thoại có Inspector , bằng cách nhâp đúp chuột vào hoặc chuột phải chọn Property Inspector. - Sau đây là hình ảnh được đánh số để đánh dấu từng thay đổi một:
  • 25. TẠO THUỘC TÍNH CHO CÁC ĐỐI TƯỢNG: - Sau đây là bảng mô tả các giá trị và thuộc tính của các hộp thoại trong hình, chúng ta tiến hành thay đổi các giá trị tương ứng theo bảng sau: STT Tên thuộc tính Giá trị thuộc tính 1 String Frequency 2 String Tag tanso 3 String Time 4 String Tag thoigian 5 String Function 6 String Square Sin Cos sawtooth Tag ham 7 Title Options 8 String START Tag Start 9 String Hold on Tag hold 10 String Grid on Tag grid 11 String RESET Tag reset 12 String EXIT Tag exit 13 Tag axes1 Visible off
  • 26. Hình sau mô tả cách thay đổi giá trị trong ô String của Select Function: Thiết lập các thuộc tính trong hộp thoại Inspector. - Sau khi viết xong, nhấn OK để lưu lại. - Sau khi chỉnh sửa các thông số ta dùng chuột để di chuyển các hộp thoại, bố trí hộp thoại theo mong muốn, ta được giao diện như sau:
  • 27. MỘT SỐ TÍNH NĂNG MỞ RỘNG: Chú ý, để tạo sự thẳng hàng, cột của các hộp thoại cho đẹp mắt ta làm như sau: - Nhấn giữ phím Ctrl và nhập vào các hộp thoại muốn chỉnh sửa, Trên Menu chọn Align Objects . Hộp thoại Align hiện ra:
  • 28. Trong hộp thoại trên ta có thể cân chỉnh các nút, nhóm nút sao cho chúng thẳng hàng,thẳng cột và đều nhau. Sau khi cân chỉnh nhấn nút Apply để lưu thay đổi. - Trên hộp thoại Resize behavior chọn dòng số 2 (Proportional), dòng này cho phép người dùng thay đổi khích thước của giao diện và các đối tượng cũng tự động thay đổi kích thước phù hợp với nền giao diện, nhấn OK để lưu thay đổi. II. Thực thi hàm 1. Giao diện trong M-file: - Khi đã cân chỉnh xong toàn bộ giao diện trong GUI, nhấn F5 (hoặc nhân tổ hợp phím Ctrl + T hoặc nhấp vào biểu tượng trên thanh Menu). - Khi Run, Matlab sẽ tự chạy file .m và hiển thị doa diện đồ họa lên màn hình. ở đây ta bắt đầu thao tác với file .m
  • 29. Giao diện Mfile. - Khi ta chưa thao tác trong Trong file .m xuất hiện như trên hình, trong đó, tất cả các hàm function đều được Matlab hỗ trợ tạo sẵn các hàm chức năng có liên quan, ta chỉ việc thao tác trên đó. - Mỗi sau một hàm bất kì đều có các chú thích bên dưới (sau dấu %), ta có thể xóa toàn bộ chúng đi đễ dễ nhìn cũng không ảnh hưởng đến các hàm. - Trong Mfile có sẵn các hàm callback, ta có thể tìm trong Mfile các hàm liên quan để viết câu lệnh, tuy nhiên, để nhanh hơn chúng ta có thể làm như sau: + Quay lại màn hình giao diện GUI vừa thiết kế, nhấp vào hộp thoại muốn thực thi hàm callback, nhấp chuột phải chọn View Callbacks -> Callback, Như hình sau:
  • 30. Tìm hàm calback cho đối tượng điều khiển. + Sau đó hàm callback sẽ tự động được gọi và con trỏ chuột sẽ tìm đến vị trí của nó trong Mfile. - Bây giờ khi muốn gọi một hàm nào ta cũng có thể thực hiện như trên. Sau đó tiến hành viết câu lệnh cho nó. 2. Một số hàm trong gui: - Hàm callback được lập trình cho các nút button, checkbox, edit text… nhưng static text và axes… thì không có hàm callback. - Mỗi một callback được viết với cấu trúc như sau: - function Tag_Callback(hObject, eventdata, handles) - Với Tag chính là giá trị của Tag mà ta đã đặt khi tạo giao diện. Các hàm chứa bên trong callback bao gồm hObject, evendata,handles + hObject là hàm truy cập nội bộ của mỗi function riêng lẽ + Evendata là hàm xác đinh thuộc tính của function + Handles là hàm truy cập liên kết giữa các function, nó bao gồm tất cả các cấu
  • 31. trúc của người dùng, được sử dụng để truy xuất qua các điều khiển khác. - Hàm Get cho phép ta gọi thuộc tính của đối tượng. - Hàm Set cho phép ta đặt giá trị cho thuộc tính của đối tượng a. Lập trình các đối tượng : NÚT NHẤN START: - Thực hiện thao tác như bước vừa nói trên (minh họa trong hình), hàm callback sẽ tự động gọi: Lần lượt viết các hàm sau vào functions : f=str2num(get(handles.tanso,'string')); set(handles.axes1,'Visible','on'); t=eval(get(handles.thoigian,'string')); if get(handles.ham,'value')==1; plot(handles.axes1,t,square(2*pi*50*t,50),'LineWidth',2); elseif get(handles.ham,'value')==2; plot(handles.axes1,t,sin(2*pi*50*t),'LineWidth',2);
  • 32. elseif get(handles.ham,'value')==3; plot(handles.axes1,t,cos(2*pi*50*t),'LineWidth',2); elseif get(handles.ham,'value')==4; plot(handles.axes1,t,sawtooth(2*pi*50*t),'LineWidth',2); end axis([0 0.1 -2 2]); Giải thích: - Câu lệnh 1: f=str2num(get(handles.tanso,'string')); + f: là 1 biến được gán + Lệnh get để lấy giá trị thuộc tính của string, ở đây giá trị string được nhập từ bán phím , matlab sẽ hiểu nó là 1 chuỗi các kí tự . get(handles.tanso,'string') + Lệnh str2num hoặc str2double dùng để chuyển kí tự thành 1 số. Hoặc lệnh num2str để chuyển số thành kí tự. f=str2num(get(handles.tanso,'string')); % lấy giá trị chứa trong ô tanso và chuyển chuỗi thành số lưu vào biến f. - Câu lệnh 2: set(handles.axes1,'Visible','on'); Đặt thuộc tính visible của axes1 ở trạng thái on. - Câu lệnh 3: t=eval(get(handles.thoigian,'string'));  Hàm eval cho phép ta chuyễn đổi một chuỗi thành một vector hay mảng. Ví dụ: thực hiện lệnh a=eval('0:1:6') >> a = 0 1 2 3 4 5 6 Kết quả trả về là vector từ 0 đến 6 có bước nhảy là 1
  • 33. - Câu lệnh 4: if get(handles.ham,'value')==1; Lệnh get lấy giá trị value của ô “ ham” Lệnh if xét điều kiện nếu value của ô “ham” =1 thực hiện lệnh bên dưới - Câu lệnh 5: plot(handles.axes1,t,square(2*pi*50*t,50),'LineWidth',2); Cú pháp : Plot ( địa chỉ vẽ, vẽ_x,y, ‘các thuộc tính’) Lệnh square(2*pi*50*t,50): vẽ đồ thị sóng vuông. - Câu lệnh 6 : xem lại câu lênh 4. - Câu lệnh 7 : elseif get(handles.ham,'value')==2; Nếu giá trị value của ô “ham” == 2 thực hiện lệnh bên dưới. - Câu lệnh 8 ,9,10,11,12 tương tự. Câu lệnh 13: axis([0 0.1 -2 2]); % Căn chỉnh lại trục đồ thị Cú pháp : axis ( [ xmin xmax ymin ymax ] ) BẢNG OPTIONS GROUP:
  • 34. Viết code cho bảng OPTIONS Lần lượt viết các câu lệnh : function uipanel3_SelectionChangeFcn(hObject, eventdata, handles) if get(handles.grid,'value')==1 grid on else grid off end
  • 35. if get(handles.hold,'value')==1 hold on else hold off end Giải thích : get(handles.grid,'value')==1 Hàm trên tìm giá trị value của ô Grid on và Hold on tương ứng , nếu được chon tương ứng value =1 , nếu bỏ chọn tương ứng value =0. NÚT RESET - Các lệnh sau : set(handles.tanso,'string',''); set(handles.thoigian,'string',''); set(handles.hold,'value',0); set(handles.grid,'value',0); set(handles.ham,'value',1); set(handles.axes1,'visible','off'); cla; Giải thích: - Câu lệnh 1, 2: set(handles.tanso,'string',''); set(handles.thoigian,'string',''); Đặt lại giá trị của ô “tanso”, “thoigian” là “ “ . - Câu lệnh 3,4: set(handles.hold,'value',0);
  • 36. set(handles.grid,'value',0); Bỏ chọn 2 ô ‘Grid on’ và ‘Hold on’ . - Câu lênh 5: set(handles.ham,'value',1); Mặc định hiển thị function square. - Câu lệnh 6: set(handles.axes1,'visible','off'); Tắt hiện thị hệ trục tọa độ - Câu lênh 7: cla; Xóa tất cả các đối tượng như: đường đồ thị, tên đồ thị…nhưng không xóa trục tọa độ. NÚT EXIT  Lệnh : close; Đóng chương trình CHẠY CHƯƠNG TRÌNH TRÊN MATLAB Sau khi lập trình cho các phím gọi cần thiết ta bắt đầu chạy chương trình chúng ta làm thao tác như sau : - Nhấn Run trên giao diện Edito M-file .
  • 37. Sau khi nhấn Run chạy chương trình , matlab sẽ tự động Save lại M-file
  • 38. Bài tập thực hành Bài 1: Khởi tạo GUI, kéo thả các nút lệnh như giao diện sau: Bài 2: Tạo và viết chương trình như giao diện sau:
  • 39. Bài 3: Ứng dụng(GUI) viết chương trình tạo từ điển tra cứu từ như giao diện sau, (SV chèn thêm hình nền):
  • 40. BÀI THỰC HÀNH SỐ 4 ỨNG DỤNG MATLAB TRONG GIẢI TOÁN VÀ VẼ ĐỒ THỊ Mục đích, yêu cầu: - Trang bị cho người học sử dụng symbolic trong Matlab. Giúp cho người học giải một số bài toán về vi phân, tích phân, biến đổi Laplace. - Củng cố những tính chất của đa thức. giới thiệu một số ứng dụng đa thức hữu tỉ trong hàm truyền điều khiển. - Trang vị người học sử dụng các cú pháp vẽ đồ thị trong Matlab. Bài 1: Tính đạo hàm của các hàm số sau: a) y = x3x2  b) y = 2 x-1x c) y = )x5sin( Khi dùng sym trong việc tính tich phân thì phải khai báo biến. Dùng lệnh diff(y) để tính đạo hàm của y. Giải minh họa câu a: >>sym x >>diff*(x^3-3*sqrt(x)) ans = 3*x^2-3/2/x^(1/2) Bài 2: TÍnh tích phân (dùng lệnh int) a)  )dx 2 x sin( b)   dx2 3 x1 x c) dx) xcos e 1(e 2 -x x   Bài 3: Tìm nghiệm và tính đạo hàm các đa thức sau: a) y(x) = x3 + 4x2 – 3 b) y(x) = 12x4 – 3x2 + 3x + 10 lưu ý: Tìm nghiệm dùng lệnh roots Tính đạo hàm, dùng lệnh polyder Bài 4: Tính giá trị của các đa thức bài 1 tại x = 4, x = -3 Bài 5: Vẽ đồ thị hàm số x, x3, ex và e^(x2) với 0 < x < 4 Bài 6: Vẽ đồ thị hàm số f(x) = sin(1/x) với 0.01 < x < 0.1. Bài 7: Vẽ hai hàm 2 y x và s n3xy i trên cùng một đồ thị, ghi chú thích Bài 8: Vẽ hàm số 3 3 1y x x   sử dụng hàm plot và fplot Bài 9: Vẽ đồ thị y1=sin(x), y2=cos(x) trên cùng 1 hệ trục tọa độ
  • 41. Bài 10: Vẽ đồ thị y1=sin(x), y2=cos(x) trên 2 hệ trục tọa độ trong cùng 1 khung Bài 11: Vẽ đồ thị chạy hàm cos bám động Bài 12: Vẽ không gian 3 D Bài 13:Ứng dụng(GUI) giải phương trình bậc 2 tạo như giao diện sau: Bài 14: Ứng dụng (GUI) vẽ hàm bậc 1, bậc 2, bậc 3 như giao diện sau:
  • 42. BÀI THỰC HÀNH SỐ 5 ỨNG DỤNG MATLAB TRONG GIẢI TÍCH MẠCH ĐIỆN Bài 1: Cho mạch điện như hình vẽ, với R1 = 5  , R2=100  , R3=200  , R4=150  , R5=250k, V1=100v, V2=50v. Tìm I1, I2, I3 (Ứng dụng GUI tạo giao diện) Áp dụng định luật Kirchhoff cho vòng 1, vòng 2, vòng 3 ta có: R1*I1 + R4I4 – V1 = 0 (1) -R4*I4 + R2I2 + R5I5 = 0 (2) -R5I5 + R3I3 + V2 =0 (3) Áp dụng định luật nút cho toàn mạch: I1 = I2 + I4 (4) I2 = I3 + I5 (5) Thế (4), (5) vào (1), (2), (3) ta đựơc: (R1+R4)*I1 - R4*I2 + 0*I3 = V1 (6) -R4*I1 + (R2+R4+R5)*I2 - R5*I3 = 0 (7) 0*I1 + R5*I2 - (R3+R5)*I3= V2 (8) Bài 2: Cho mạch điện như hình vẽ, với R1=100  , R2=100  , R3=50  , R4=1  , R5=200 , R6=1K, R7=3K , V1=5v, V2=5v. Tìm I1, I2, I3, I4, I5.(Ứng dụng tạo giao diện GUI)
  • 43. R2R1 R2R1 R12    R45= R4+R5 Áp dụng định luật Kirchhoff cho vòng 1, vòng 2, vòng 3 ta có: R12*I1 + 0*I2 + 0*I3 + R3*I4 + 0*I5 - V1 = 0 (1) 0*I1 + R45*I2 + 0*I3 - R3*I4 + R6*I5 = 0 (2) 0*I1 + 0*I2 + R7*I3 + 0*I4 - R6*I5 + V2 = 0 (3) Áp dụng định luật nút cho toàn mạch: I1 - I2 + 0*I3 - I4 + 0*I5 = 0 (4) 0*I1 + I2 - I3 +0*I4 - I5 = 0 (5) Bài 3: Cho mạch điện như hình vẽ, với R1=600  , R2=600  , R3=1K , R4=3K , R5=500 , R6=800 , R7=200  , R8=2K , R9=100  , R10=1K , V1=9v, V2=9v. Tìm I1, I2, I3, I4, I5. R2R1 R2R1 R12    R123=R12+R3 R5R4 R5R4 R45    R7R6 R7R6 R67    R678 = R67 +R8 Áp dụng định luật Kirchhoff cho vòng 1, vòng 2, vòng 3 ta có: R123*I1 + 0*I2 + 0*I3 + R45*I4 + 0*I5 - V1 = 0 (1) 0*I1 + R678*I2 + 0*I3 - R45*I4 + R9*I5 = 0 (2) 0*I1 + 0*I2 + R10*I3 + 0*I4 - R9*I5 + V2 = 0 (3) Áp dụng định luật nút cho toàn mạch: I1 - I2 + 0*I3 - I4 + 0*I5 = 0 (4) 0*I1 + I2 - I3 +0*I4 - I5 = 0 (5)
  • 44. Bài 4: Cho mạch điện như hình vẽ, với R1=200  , R2=200  , R3=300  , R4=900 , R5=1K , R6=2K , R7=500  , R8=600  , R9=1K , R10=200  ,R11=6K , R129K , V1=20v, V2=20v. Tìm I1, I2, I3, I4, I5. (Ứng dụng GUI tạo giao diện, chèn hình nền, tên, lớp) R2R1 R2R1 R12    R123=R12+R3 R5R4 R5R4 R45    R7R6 R7R6 R67    R678 = R67 +R8 R10R9 R10R9 R910    R12R11 R12R11 R1112    Áp dụng định luật Kirchhoff cho vòng 1, vòng 2, vòng 3 ta có: R123*I1 + 0*I2 + 0*I3 + R45*I4 + 0*I5 - V1 = 0 (1) 0*I1 + R678*I2 + 0*I3 - R45*I4 + R910*I5 = 0 (2) 0*I1 + 0*I2 + R1112*I3 + 0*I4 - R910*I5 + V2 = 0 (3) Áp dụng định luật nút cho toàn mạch: I1 - I2 + 0*I3 - I4 + 0*I5 = 0 (4) 0*I1 + I2 - I3 +0*I4 - I5 = 0 (5) Giải hệ 3 phương trình 3 ẩn số ta tìm được 3 nghiệm I1, I2, I3, I4, I5
  • 45. BÀI THỰC HÀNH SỐ 6 ỨNG DỤNG MATLAB TRONG GIẢI TÍCH MẠCH ĐIỆN TỬ Bài 1: Thực hành với Script m.file cho bài toán sau: cho tầng khuếch đại như hình vẽ Vcc=9v, BJT thuộc loại silic N-P-N, có =50. Hãy xác định các điện trở trong mạch, biết rằng ở trạng thái tĩnh Ic=1mA, Vce=5v Hướng dẫn : Để ổn định điểm làm việc theo nhiệt độ, chọn Re theo điều kiện Vcc) 10 1 5 1 (Re*IeVe  Vcc 10 1 Ve  Do đó: Ic Ve Re Ve Re  Dòng base ở trạng thái tĩnh  Ic Ib  BJT thuộc loại silic nên Vbe=0.7 Vb=Ve+Vbe Ib Vb-Vcc Rb  Ic Ve-Vce-Vcc Rc 
  • 46. Bài 2: Ứng dụng(GUI) tạo giao diện bài 1 như sau. Bài 3: Tạo giao diện(GUI) bằng cách callback từ script m-file bài tập.
  • 47. Bài 4: Ứng dụng GUI viết chương trình cho một mạch sau Vi = 5sinwt, R1 = 300 , R2 = 30 , w = 1rad/s. vẽ dạng sóng điện áp trên tải (R2) Áp trên tải: 0,45Vim09,0 30300 30 Vim R2R1 R2 Vom       Vo=0,45sin(t) với w = 1 rad/s Bài 5: Dùng thuật toán Matlab xác định các giá trị sau: Cho tầng khuếch đại EC phân cực kiểu phân áp như hình trên. BJT thuộc loại N-P-N có =100, Iceo0, Vcc=15V. Biết Rb1=32k, Rb2=6.8k, Re=1.5k, Rc=3k. Hãy xác định điểm làm việc tĩnh.
  • 48. Bài 6: Dùng thuật toán Matlab xác định các giá trị sau: Cho tầng khuếch đại EC phân cực kiểu phân áp như bài trên. BJT thuộc loại silic có =60, làm việc ở điểm tĩnh Q (Vce=4.5V, Ic=3mA). Hãy xác định các điện trở trong mạch Vcc=15V. Biết Rb1=32k, Rb2=6.8k, Re=1.5k, Rc=3k. Hãy xác định điểm làm việc tĩnh, và dựng đường tải một chiều trên đặc tuyến.