Professional Documents
Culture Documents
Programming
Programming
1.Thủ tục......................................................................................................................................................2
Thủ tục là gì?...........................................................................................................................................2
Tạo một thủ tục:......................................................................................................................................2
Thực thi một thủ tục:...............................................................................................................................2
2. Hàm m-file...............................................................................................................................................3
Hàm m-file là gì?......................................................................................................................................3
Tạo một hàm m-file:................................................................................................................................4
Thực thi một hàm m-flie..........................................................................................................................4
3. Hàm inline và handle...............................................................................................................................4
4. Xuất và nhập dữ liệu................................................................................................................................6
Nhập dữ liệu............................................................................................................................................6
Xuất dữ liệu.............................................................................................................................................7
6. Điều khiển luồng....................................................................................................................................10
So sánh..................................................................................................................................................10
Cấu trúc rẽ nhánh..................................................................................................................................10
Cấu trúc lặp...........................................................................................................................................12
Lưu ý: Khi chạy một thủ tục có thể tạo ra và thay đổi các biến có sẵn trong không gian làm việc
(Workspace) mà không đưa ra một cảnh báo nào. Điều này gây ra lỗi khi chạy các chương trình lớn có
nhiều thủ tục.
2. Hàm m-file
Ví dụ:
function y = sumOf2Numbers(a,b)
y = a + b;
end
Nhận xét: dòng đầu tiên của hàm m-file có cấu trúc như sau:
Trong thân m-file phải có câu lệnh trả ra giá trị của các outputs (thay cho returns)
Tên hàm phải trùng với tên m-file.
10
Hàm inline
myFun =
Inline function:
myFun(x) = x.^2+1
>> y = myFun(3)
y=
10
>> y = feval(myFun,3)
y=
10
Hàm handle
@(x)x.^2+1
>> y1 = myFun1(3)
y1 =
10
>> y1 = myFun1(3)
y1 =
10
Ví dụ:
12
y=
12
Ví dụ:
'BKHN'
tenTruong =
'BKHN'
Ví dụ:
12
y=
'12'
>> class y
ans =
'char'
+) Ngoài ra ta có thể sử dụng cách nhập dữ liệu thông qua cách thực thi hàm ( xem mục 2)
Xuất dữ liệu
+) Để thiết lập định dạng của số in ra ta dùng lệnh format
format SHORT: Scaled fixed point format with 5 digits.
format LONG: Scaled fixed point format with 15 digits for double and 7 digits for single.
format LONGE: Floating point format with 15 digits for double and 7 digits for single.
format LONGG: Best of fixed or floating point format with 15 digits for double and 7 digits for single.
format SHORTENG: Engineering format that has at least 5 digits and a power that is a multiple of three
format LONGENG: Engineering format that has exactly 16 significant digits and a power that is a
multiple of three.
+) Để in ra kết quả mà không cần đến định dạng dữ liệu là dùng lện disp
disp(tên biến)
Ví dụ:
>> disp(12)
12
>> disp('BKHN')
BKHN
>> s = 'BKHN'
s=
'BKHN'
>> disp(s)
BKHN
Chú ý: Hàm disp chỉ in ra một biến, do đó muốn kết hợp các biến ta cần chuyển kiểu dữ liệu và ghép vào
một mảng. Để chuyển đổi dùng lệnh num2str và str2num
Ví dụ:
>> tuoi = 12
tuoi =
12
tuoi cua A la 12
Ví dụ:
Ví dụ:
A=
1 2 3
4 5 6
7 8 9
1.00 4.000 7
2.00 5.000 8
3.00 6.000 9
Do fprintf duyệt phần tử theo cột nên xảy ra hiện tượng chuyển vị ma trận, để khắc phục ta dùng lệnh
1.00 2.000 3
4.00 5.000 6
7.00 8.000 9
So sánh
Chú ý: Toán tử && (||) chỉ sử dụng trong trường hợp vô hướng, để sử dụng cho mảng ta dùng toán tử &
(|)
Ví dụ:
Ví dụ:
Ví dụ:
Ví dụ: