Lttt matlab chuong 3
-
Upload
hoa-co-may -
Category
Documents
-
view
115 -
download
1
Transcript of Lttt matlab chuong 3
Chương 3
Lập trình trên Matlab
2 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản Nhập/xuất
Nhập
>> input(prompt)
Hoặc >> input(prompt, ‘s’)
Ví dụ: >> x = input(‘Nhap vao gia tri cua x: ’)
>> str = input(‘Nhap vao chuoi str: ’, ‘s’)
3 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Nhập/xuất (tt.)
Xuất
>> disp(X)
Hoặc >> fprintf(formatSpec,A1,…,An)
Ví dụ: >> x = input(‘Nhap vao gia tri cua x: ’)
>> disp(x)
>> str = input(‘Nhap vao chuoi str: ’, ‘s’)
>> fprintf(‘Chuoi str: %s\n’, str)
4 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Nhập/xuất (tt.)
Xuất (tt.)
Một số định dạng của fprintf: Kiểu Định dạng
Integer, signed %d hoặc %i
Floating-point number %f
Single Character %c
String if characters %s
5 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Nhập/xuất (tt.)
Xuất (tt.)
Một số định dạng của fprintf (tt.): Ý nghĩa Định dạng
Xuống hàng \n
Tab \t
Ký tự “\” \\
Ký tự “%” %%
6 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Lệnh điều kiện if
Cú pháp:
if <conditional expression>
<statement sequences>
elseif <conditional expression>
<statement sequences>
else
<statement sequences>
end
7 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Lệnh điều kiện if (tt.)
Ví dụ 1: if delta<0 disp(‘Phuong trinh vo nghiem’) elseif delta == 0 disp(‘Phuong trinh co nghiem kep’) -b/2/a else disp(‘Phuong trinh co 2 nghiem phan biet’) (-b-sqrt(delta))/2/a (-b+sqrt(delta))/2/a end
8 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Lệnh điều kiện if (tt.)
Ví dụ 2: a = input(‘Nhap a =’) if a > 0 disp(‘so duong’) if mod(a,2) ~= 0 disp(‘so le’) else disp(‘so chan’) end else disp(‘khong duong’) end
9 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Lệnh điều kiện switch
Cú pháp:
switch <switch expression> case <case expression> <statement sequences> case <case expression> <statement sequences> … otherwise <statement sequences> end
10 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Lệnh điều kiện switch (tt.)
Ví dụ: switch thang case {1,3,5,7,8,10,12}, ngay=31 case {4,6,9,11}, ngay=30 case 2 if nhuan(nam) ngay=29 else ngay=28 end otherwise disp(‘thang khong hop le’) end
11 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Vòng lặp while
Cú pháp:
while <conditional expression> <statement sequences> end Ví dụ: Tìm USCLN của 2 số nguyên theo thuật toán Euclide
12 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Vòng lặp while (tt.)
Ví dụ (tt.): x=30; y=12; m=x; n=y; while y~=0 r=mod(x,y); x=y; y=r; end; fprintf(‘Uoc chung lon nhat cua %d va %d la: %d\n’,m,n,x)
Nhập x,y
Y<>0
r := x mod y
x:=y
y:=r
In ra x
13 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Vòng lặp for
Cú pháp: for index=value <program statements> end Ví dụ 1: for s = [1,5,8,17] disp(s) end
14 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Vòng lặp for (tt.)
Ví dụ 2: for i = 1:3 for j = 1:3 H(i,j) = 1/(i+j); end end H = 0.5000 0.3333 0.2500 0.3333 0.2500 0.2000 0.2500 0.2000 0.1667
15 20/05/2013 Lập trình tính toán
3.1 Các lệnh lập trình cơ bản (tt.) Break
break dùng để thoát ngang vòng lặp hiện tại Ví dụ: Nhập n, kiểm tra n có phải là số nguyên tố hay không n = input (‘Nhap n: ’) for i = 2:n-1 if mod(n,i)==0 disp(‘n khong la so nguyen to’) break end end
16 20/05/2013 Lập trình tính toán
3.2 Cách tạo lập hàm Script
Là các dòng lệnh Matlab được chứa trong một file có phần mở rộng .m File script có thể được soạn thảo bằng Matlab Editor hoặc các chương trình soạn thảo khác Để thực thi script chỉ cần gọi tên file trong cửa sổ dòng lệnh của Matlab.
17 20/05/2013 Lập trình tính toán
3.2 Cách tạo lập hàm (tt.) Hàm
Cũng 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) Sau dòng này, các dòng chú thích bắt đầu bằng dấu “%” sẽ xuất hiện khi gọi lệnh help tên_hàm.
18 20/05/2013 Lập trình tính toán
3.2 Cách tạo lập hàm (tt.) Hàm (tt.)
Ví dụ: File tbc.m có nội dung như sau: function s = tbc(x)
s = sum(x(:))/length(x(:));
Gọi lệnh: >>t = tbc([2 3 4 5 6])
t = 4
19 20/05/2013 Lập trình tính toán
3.2 Cách tạo lập hàm (tt.) Hàm (tt.)
Hàm phụ: • Khác tên hàm chính, chỉ nhằm hỗ trợ tính toán cho tên hàm chính trong script hàm • Hàm phụ nằm sau hàm chính • Ví dụ: File 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