Matlab và ứng dụng - Viết hàm trong Matlab
Ví dụ: soạn thảo script sau lưu vào file ‘timso.m’
disp('chuong trinh tim mot so trong mot mang so')
a = input('nhap vao mang so : ');
key = input('nhap vao so can tim: ');
k = 1;
n = length(a);
while (k<=n)&(a(k)~=key)
k = k+1;
end
if k<=n
fprintf('so can tim o vi tri %d fprintf('so can tim o vi tri %d \\n', k) n', k)
else
disp('khong co trong mang ')
end
2/9/2010 1 Viết hàm trong Matlab …nhập, xuất … …function… 1ntnhut@hcmus.edu.vn hắc lại file script .m Ví dụ: soạn thảo script sau lưu vào file ‘timso.m’ disp('chuong trinh tim mot so trong mot mang so') a = input('nhap vao mang so : '); key = input('nhap vao so can tim: '); k = 1; n = length(a); while (k<=n)&(a(k)~=key) k = k+1; end if k<=n fprintf('so can tim o vi tri %d \n', k) else disp('khong co trong mang ') end 2 2/9/2010 2 Khi thực thi file ‘timso.m’ trên cửa sổ dòng lệnh Matlab: >>timso chuong trinh tim mot so trong mot mang so nhap vao mang so : [5 2 1 -1 0 5] nhap vao so can tim: 5 so can tim o vi tri 1 3 hập / Xuất Nhập: x = input(‘chuoi thong bao’) Xuất: disp(‘chuoi ky tu’) fprintf(‘chuoi co dinh dang’) Định dạng của fprintf: %d: số nguyên %f : số chấm động %s : chuỗi %c : ký tự \n : xuống dòng \t : TAB \\ : ký tự ‘\’ %% : ký tự ‘%’ Ví dụ: x = input(‘nhap 1 so nguyen x = ’); fprintf(‘gia tri cua x la %d’, x); 4 2/9/2010 3 Disp và fprintf Ví dụ 1: a = input(‘So thu nhat = ’); b = input(‘So thu hai = ’); disp(‘UCL cua a va b la ’) disp(gcd(a,b)) disp(‘BC cua a va b la ’) disp(lcm(a,b)) Ví dụ 2: a = input(‘So thu nhat = ’); b = input(‘So thu hai = ’); fprintf(‘UCL cua %d va %d la %d \n’, a, b, gcd(a,b)) fprintf(‘BC cua %d va %d la %d \n’, a, b, lcm(a,b)) 5 Function Hàm trong Matlab là một file.m có thể nhận tham số và trả về các giá trị. Tên hàm phải trùng với tên file.m. Gọi lệnh bằng cách gõ tên hàm (tên file.m) Cú pháp: function tri_tra_ve = ten_ham(tham_so) ... Ví dụ: % tbc.m function s = tbc(x) s = sum(x(:))/length(x(:)); Gọi lệnh: >>t = tbc([2 3 4 5 6]) % t sẽ bằng 4 6 2/9/2010 4 Ví dụ function Script: % UBC.m function [m,n] = UBC(a,b) m = gcd(a,b); n = lcm(a,b); Gọi hàm: >> [uoc, boi] = UBC(45,234) >> uoc ans = 9 >> boi ans = 1170 7 Hàm phụ Hàm phụ (khác tên hàm chính) chỉ nhằm hỗ trợ tính toán cho hàm chính trong script hàm Hàm phụ nằm sau hàm chính Ví dụ: % chinh.m function c = chinh(A) c = phu(A) – 1 function d = phu(B) d = min(B(:)) Gọi hàm: >> chinh([23 2 34]) ans = 1 8
File đính kèm:
- Matlab và ứng dụng - Viết hàm trong Matlab.pdf