Một số lệnh Matlab trong giải tích - Giải tích 1 - Cô Trần Ngọc Diễm - ĐHBK TPHCM
Gửi bởi: Khoa CNTT - HCEM 12 tháng 4 2021 lúc 10:04:11 | Được cập nhật: hôm qua lúc 7:39:09 | IP: 10.1.29.62 Kiểu file: PDF | Lượt xem: 1113 | Lượt Download: 21 | File size: 0.213707 Mb
Nội dung tài liệu
Tải xuống
Link tài liệu:
Các tài liệu liên quan
- Tuyển tập câu hỏi trắc nghiệm Mác Lê Nin có đáp án chi tiết
- Ứng dụng hình học của tích phân xác định - Giải tích 1 - Cô Trần Ngọc Diễm - ĐHBK TPHCM
- Một số lệnh Matlab trong giải tích - Giải tích 1 - Cô Trần Ngọc Diễm - ĐHBK TPHCM
- ĐỀ LUYỆN THI ĐÁNH GIÁ NĂNG LỰC ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH - ĐỀ SỐ 3
- ĐỀ LUYỆN THI ĐÁNH GIÁ NĂNG LỰC ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH - ĐỀ SỐ 6
- ĐỀ LUYỆN THI ĐÁNH GIÁ NĂNG LỰC ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH - ĐỀ SỐ 1
- ĐỀ LUYỆN THI ĐÁNH GIÁ NĂNG LỰC ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH - ĐỀ SỐ 5
- ĐỀ LUYỆN THI ĐÁNH GIÁ NĂNG LỰC ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH - ĐỀ SỐ 4
- ĐỀ LUYỆN THI ĐÁNH GIÁ NĂNG LỰC ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH - ĐỀ SỐ 2
Có thể bạn quan tâm
Thông tin tài liệu
PHẦN I: CÁC LỆNH THƯỜNG DÙNG TRONG GIẢI TÍCH
CÂU LỆNH
MÔ TẢ
LOẠI HÀM
GIỚI HẠN-ĐẠO HÀM-TÍCH PHÂN
limit( f )
lim f (x)
symbolic
x→0
lim( f , a) hoặc lim( f , ,
x a)
lim f (x)
symbolic
x→a
lim( f , ,
x ,
a 'left ')
lim f (x)
symbolic
x
a−
→
lim( f , ,
x ,
a ' right ')
lim f (x)
symbolic
x
a+
→
df
diff (
= f ′ x (biến mặc
f ), diff ( f , x)
( )
dx
symbolic , f= ‘f(x)’ (srting)
định là x)
n
diff (
d f
f , ,
x )
n , diff ( f , n)
(n)
= f
( x)
symbolic ,string
n
dx
int ( f ) int ( f , x)
f (x)dx
∫
symbolic, string
int (
b
f , a,b) , int ( f , x, a,b)
f (x)dx
∫
symbolic, string
a
quad(f,a,b)
b f (x)dx
∫
inline, handle
a
Tổng Riemman của f
inline, handle,(2010 có thêm
rsums(f,a,b), rsums(f,[a,b])
trên [a, b], xuất dạng
symbolic)
bar(đồ thị)
(k )
n 1
−
f
(0)
taylor(f,n)
k
∑
x
symbolic
=
k
k 0
!
(k )
n 1
−
f
( 0
x )
taylor(f,n,x
k
0)
∑
( x −
Symbolic
0
x )
cuu duong than cong . com
=
k
k 0
!
factorial(N)
Tính giai thừa: N!
compose(f,g)
f(g(x))
f=sym(‘f(x)’),g=sym(‘g(x)’)
compose(f,g,’u’,’v’)
f(g(v)
f=sym(‘f(u)’),g=sym(‘g(v)’)
finverse(f)
Tìm hàm ngược của f
Symbolic
TÍNH TOÁN TRÊN BIỂU THỨC
subs(f,x,a), subs(f,’x’,a)
f ( x) → f (a)
Dạng 1: symbolic, string Dạng 2: mọi hàm
Trang 1
CuuDuongThanCong.com
https://fb.com/tailieudientucntt
feval(f,a), feval(f,[a,b]) f ( x) → f (a) inline, handle (1) Tính giá tr polyval(p,a) ị của đa thức p tại a eval(biểu thức số) Trả về giá trị của biểu thức dạng thập phân. simplify Rút gọn biểu thức Vi simple ết biểu thức dạng ngắn nhất. Bi pretty(f) ểu diễn f theo dạng Symbolic viết tay solve(’f(x)’) Giải pt f(x) = 0 Có thể thay: F=’f(x)’ Gi solve(F,G) ải hệ pt F=’f(x,y)’,G=’g(x,y)’ f(x,y)=0,g(x,y)=0 Gi fsolve(f,x0) ải pt f(x) = 0 trong handle khu vực gần x0 fzero( Trả về vector hệ số của sym2poly(f) đa thức theo thứ tự bậc Đa thức cao đến thấp Trả về đa thức có các hệ poly2sym(a) số tương ứng với các Vector hàng phần tử của vector a Tìm giá tr [x,m]=fminbnd(f,a,b), ị nhỏ nhất trên handle [a,b] Giải phương trình vi dsolve(‘pt1’,’pt2’,’đk1,’đk2’,’biến’) phân , hệ pt vi phân với Có thể thay : F=’pt1’,G=’pt2’ ’biến’ được chỉ ra. Nhập dữ liệu số từ bàn input(‘Thông báo’) phím với thông báo nằm cuu duong than cong . com trong ‘ ’. input(‘Thông báo’,’s’) Nhập chuỗi từ bàn phím. Xu disp(‘string’),disp(x) ất chuỗi hoặc giá trị ra màn hình. Ghi dữ liệu vào file text fprinf hoặc xuất dữ liệu ra màn Xem Help hình Tìm chuỗi con s trong chu strfind(S,s) ỗi lớn S, kết quả là S,s là các chu th ỗi ký tự. ứ tự của phần tử đầu tiên trong chuỗi con. So sánh hai chu strcmp(S1,S2) ỗi (giống hay khác nhau) Trang 2 CuuDuongThanCong.com https://fb.com/tailieudientucntt
Chuy char(x) ển biến x sang x là m d ột symbolic (!) ạng chuỗi (string) Chuy num2str(a) ển số a sang dạng a là m chu ột giá trị bằng số ỗi(string) VẼ ĐỒ THỊ V ezplot(x(t),y(t),[t1,t2]) ẽ đường cong tham số Symbolic,string,inline,handle với t chạy trên [t1,t2] V ezplot(f,[a,b]) ẽ đồ thị hàm f với biến Symbolic,string,inline,handle chạy trên [a, b]. ezplot3(x(t),y(t),z(t),[t1,t2]) Vẽ đc tham số 3D V fplot(f,[a,b] ẽ đồ thị hàm f với biến m-file, handle, inline, string chạy trên [a, b]. Vẽ đồ thị của f theo x, x là mi plot(x,f,tính ch ền được chỉ ra ất) V theo(2) ẽ điểm, tập hợp điểm Tính chất (3) plot3(x(t),y(y),z(t),tính chất) Vẽ đc 3D dạng điểm V R là hàm theo phi, phi là mi polar(phi,r) ẽ đương cong trong ền tọa độ cực đươc chỉ ra trong(2) Tô màu miền đóng kín v fill(X, Y, C) ới hoành độ, tung độ biên nằm trong X, Y bangwg màu C surf(x,y,z) Vẽ mặt cong V surfc(x,y,z) ẽ mặt cong với đường mức mesh(x,y,z) Vẽ mặt lưới T meshgrid(x,y) ạo ma trận lưới từ các vector x,y set(gca,’xtick’,[x1,x2…]) Định các giá trị đặt trên Ox set(gca,’ytick’,[ycuu duong than cong . com 1,y2…]) Định các giá trị đặt trên Oy xlabe(‘str’), ylabel(‘str’), Gán tên cho các trục Str là chu zlabel(‘str) Ox, Oy,Oz ỗi ký tự title(‘string’) Gán tên cho hình Gán tên cho t legend ừng đồ thị trên hình. (1) Khai báo cho hàm inline: inline(‘f(x)’,’x’), ví dụ: f = inline(‘sin(x),’x’); Khai bao cho hàm handle: handle = @(danh sách đối sô, biến) biểu thức định nghĩa. Ví dụ : f = @ (x) sin(x)+x*cos(x) g=@ (x,y) sin(x+y)-x*y (2) Khai báo miền chạy của x trong trường hợp này có 2 cách Trang 3 CuuDuongThanCong.com https://fb.com/tailieudientucntt
a. x = linspace(a,b) hay x=linspace(a,b,n) (n điểm chia trên [a, b]). Ví dụ: x=linspace(-2,3) (trên [-2,3] có 100 điểm chia). x= linspace(-2,3,70)( trên [-2,3] có 70 điểm chia) b. x= a:d/n:b : trên doạn [a, b], số điểm chia được tính từ quy ước : đoạn có độ dài d được chia thành n diểm Ví dụ: x = 0: 20/100:1 có nghĩa x thuộc [0,1], đoạn có độ dài 20 được chia thành 100 điểm. Vậy mỗi đoạn con dài 1/5 và [0,1] có 5 đoạn chia tương ứng với các điểm: 0, 1/5, 2/5, 3/5, 4/5, 1. (3) Tính chất bao gồm (tra cứu bằng LineSpec) a. Line Style b. LineWidth c. Color d. Marker (Marker sẽ thể hiện ở các điểm chia) i. MarkerType ii. MarkerSize iii. MarkerFaceColor & MarkerEdgeColor Cú pháp: 1. plot(x,y, ’kiểu đường vẽ’, ‘LineWidth’, giá trị,’ MarkerFaceColor’, ’giá trị ’, ‘MarkerEdgeColor’, ‘giá trị ’, ‘MarkerSize’, ‘giá trị ’) 2. Kiểu đường vẽ thể hiện theo thứ tự ‘LineStyleColorMarkerType’. ví dụ: ‘- -mo’; ‘:rx’; ‘-bs’. Nếu chỉ chọn Marker và không chọn Line Style thì chỉ có marker xuất hiện trên đồ thị. Line Style Specifiers Specifier Line Style - Solid line (default) - - Dashed line cuu duong than cong . com : Dotted line -. Dash-dot line Trang 4 CuuDuongThanCong.com https://fb.com/tailieudientucntt
Marker Specifiers Specifier Marker Type + Plus sign o Circle * Asterisk . Point (see note below) x Cross 'square' or s Square 'diamond' or d Diamond ^ Upward-pointing triangle v Downward-pointing triangle > Right-pointing triangle < Left-pointing triangle 'pentagram' or p Five-pointed star (pentagram) 'hexagram' or h Six-pointed star (hexagram) Note The point (.) marker type does not change size when the specified cuu duong than cong . comvalue is less than 5. Color Specifiers Specifier Color Specifier Color Specifier Color r Red c Cyan k Black g Green m Magenta w White b Blue y Yellow Trang 5 CuuDuongThanCong.com https://fb.com/tailieudientucntt
PHẦN 2: LẬP TRÌNH TRONG MATLAB (tóm tắt những vấn đề càn thiết nhất) A. CÁC HÀM TOÁN HỌC sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), sinh(x), cosh(x) abs(x): trị tuyệt đối hoặc modun của x. sqrt(x): căn bậc 2 của x. exp(x): ex log(x): ln(x) log10(x): log10 (x) a^x: ax B. CẤU TRÚC ĐIỀU KIỆN 1. Cấu trúc if a. if điều kiện Nhóm lệnh end b. if điều kiện Nhóm lệnh 1 else Nhóm lệnh 2 end c. if điều kiện 1 Nhóm lệnh 1 elseif điều kiện 2 Nhóm lệnh 2 else Nhóm lệnh 3 end 2. Cấu trúc switch case (áp dụng khi có nhiều điều kiện tương ứng với nhiều nhóm lện khác nhau) cuu duong than cong . com TRƯỜNG HỢP = dãy ký tự hoặc dãy số (TRƯỜNG HỢP=[TH1 TH2 TH3…]) switch TRƯỜNG HỢP case TH1 nhóm lệnh 1 case TH2 nhóm lệnh 2 case TH3 nhóm lệnh 3 …. otherwise nhóm lệnh n end Trang 6 CuuDuongThanCong.com https://fb.com/tailieudientucntt
VÍ DỤ Giải phương trình bậc 2: 2 ax + bx + c = 0 dùng cấu trúc if Giải phương trình bậc 2: 2 ax + bx + c = 0 dùng cấu trúc switch case a=input(‘nhap a:’); a=input(‘nhap a:’); b=input(‘nhap b:’); b=input(‘nhap b:’); c=input(‘nhap c:’); c=input(‘nhap c:’); delta =b^2-4*a*c; delta =b^2-4*a*c; if delta >0 if delta >0 choice =1 disp(‘Phuong trinh co 2 nghiem thuc phan biet:’); elseif delta==0 choice=2 x1=(-b+sqrt(delta))/(2*a) else choice=3 x2=(-b-sqrt(delta))/(2*a) end elseif delta==0 switch choice disp(‘Phuong trinh co nghiem kep:’); case 1 x= -b/(2*a) disp(‘Phuong trinh co 2 nghiem thuc phan biet:’); else % truong hop nay la delta < 0 x1=(-b+sqrt(delta))/(2*a) disp(‘Phuong trinh co nghiem x2=(-b-sqrt(delta))/(2*a) phuc:’); case 2 x1=(-b+i*sqrt(-delta))/(2*a) disp(‘Phuong trinh co nghiem x2=(-b-i*sqrt(-delta))/(2*a) kep:’); end x= -b/(2*a) cuu duong than cong . com case 3 disp(‘Phuong trinh co nghiem phuc:’); x1=(-b+i*sqrt(-delta))/(2*a) x2=(-b-i*sqrt(- delta))/(2*a) end Trang 7 CuuDuongThanCong.com https://fb.com/tailieudientucntt
C. CẤU TRÚC VÒNG LẶP (sử dung khi nhóm lệnh được lặp lại nhiều lần) 1. Vòng lặp for (sử dụng khi đã biết số lần lặp tối đa) for i=m:k:n Nhóm lệnh end i là biến đếm, bắt đầu đi từ m đến n, k là bước nhảy của i. Nếu không có k, bước nhảy mặc định là 1. Nếu k < 0, i lùi từ m về n (trường hợp này m<=n). 2. Vòng lặp while (sử dụng trong mọi trường hợp) while điều kiện lặp Nhóm lệnh end cuu duong than cong . com Trang 8 CuuDuongThanCong.com https://fb.com/tailieudientucntt
Script M-file Function M-file •Không sử dụng tham số đầu vào •Có thể chấp nhận tham số đầu vào hoặc đầu ra và trả tham số đầu ra. •Hoạt động trên dữ liệu của •Các biến trong thân hàm mặc workspace định là cục bộ. •Thường dùng để tự động thực •có tác dụng mở rộng ngôn ngữ hiện một chuỗi thao tác cần MATLAB cho ứng dụng của thiết để thực thi nhiều lần. bạn. VD: giải pt bậc 2 dùng Funtion function X=ptbac2(a,b,c) %ptbac2(a,b,c) giai phuong trinh bac hai ax^2+bx+c=0. if nargin<3 error('Nhap thieu doi so a hoac b hoac c');end if a==0&& b==0 error('Phuong trinh cua ban nhap sai'); elseif a==0 X=-c/b; else delta=b^2-4*a*c; if delta>0 X(1)=(-b+sym(sqrt(delta)))/(2*a); X(2)=(-b-sym(sqrt(delta)))/(2*a); elseif delta==0 X=-b/(2*a); else X(1)=(-b+i*sym(sqrt(-delta)))/(2*a); X(2)=(-b-i*sym(sqrt(-delta)))/(2*a); end end end cuu duong than cong . com Trang 9 CuuDuongThanCong.com https://fb.com/tailieudientucntt
feval(f,a), feval(f,[a,b]) f ( x) → f (a) inline, handle (1) Tính giá tr polyval(p,a) ị của đa thức p tại a eval(biểu thức số) Trả về giá trị của biểu thức dạng thập phân. simplify Rút gọn biểu thức Vi simple ết biểu thức dạng ngắn nhất. Bi pretty(f) ểu diễn f theo dạng Symbolic viết tay solve(’f(x)’) Giải pt f(x) = 0 Có thể thay: F=’f(x)’ Gi solve(F,G) ải hệ pt F=’f(x,y)’,G=’g(x,y)’ f(x,y)=0,g(x,y)=0 Gi fsolve(f,x0) ải pt f(x) = 0 trong handle khu vực gần x0 fzero( Trả về vector hệ số của sym2poly(f) đa thức theo thứ tự bậc Đa thức cao đến thấp Trả về đa thức có các hệ poly2sym(a) số tương ứng với các Vector hàng phần tử của vector a Tìm giá tr [x,m]=fminbnd(f,a,b), ị nhỏ nhất trên handle [a,b] Giải phương trình vi dsolve(‘pt1’,’pt2’,’đk1,’đk2’,’biến’) phân , hệ pt vi phân với Có thể thay : F=’pt1’,G=’pt2’ ’biến’ được chỉ ra. Nhập dữ liệu số từ bàn input(‘Thông báo’) phím với thông báo nằm cuu duong than cong . com trong ‘ ’. input(‘Thông báo’,’s’) Nhập chuỗi từ bàn phím. Xu disp(‘string’),disp(x) ất chuỗi hoặc giá trị ra màn hình. Ghi dữ liệu vào file text fprinf hoặc xuất dữ liệu ra màn Xem Help hình Tìm chuỗi con s trong chu strfind(S,s) ỗi lớn S, kết quả là S,s là các chu th ỗi ký tự. ứ tự của phần tử đầu tiên trong chuỗi con. So sánh hai chu strcmp(S1,S2) ỗi (giống hay khác nhau) Trang 2 CuuDuongThanCong.com https://fb.com/tailieudientucntt
Chuy char(x) ển biến x sang x là m d ột symbolic (!) ạng chuỗi (string) Chuy num2str(a) ển số a sang dạng a là m chu ột giá trị bằng số ỗi(string) VẼ ĐỒ THỊ V ezplot(x(t),y(t),[t1,t2]) ẽ đường cong tham số Symbolic,string,inline,handle với t chạy trên [t1,t2] V ezplot(f,[a,b]) ẽ đồ thị hàm f với biến Symbolic,string,inline,handle chạy trên [a, b]. ezplot3(x(t),y(t),z(t),[t1,t2]) Vẽ đc tham số 3D V fplot(f,[a,b] ẽ đồ thị hàm f với biến m-file, handle, inline, string chạy trên [a, b]. Vẽ đồ thị của f theo x, x là mi plot(x,f,tính ch ền được chỉ ra ất) V theo(2) ẽ điểm, tập hợp điểm Tính chất (3) plot3(x(t),y(y),z(t),tính chất) Vẽ đc 3D dạng điểm V R là hàm theo phi, phi là mi polar(phi,r) ẽ đương cong trong ền tọa độ cực đươc chỉ ra trong(2) Tô màu miền đóng kín v fill(X, Y, C) ới hoành độ, tung độ biên nằm trong X, Y bangwg màu C surf(x,y,z) Vẽ mặt cong V surfc(x,y,z) ẽ mặt cong với đường mức mesh(x,y,z) Vẽ mặt lưới T meshgrid(x,y) ạo ma trận lưới từ các vector x,y set(gca,’xtick’,[x1,x2…]) Định các giá trị đặt trên Ox set(gca,’ytick’,[ycuu duong than cong . com 1,y2…]) Định các giá trị đặt trên Oy xlabe(‘str’), ylabel(‘str’), Gán tên cho các trục Str là chu zlabel(‘str) Ox, Oy,Oz ỗi ký tự title(‘string’) Gán tên cho hình Gán tên cho t legend ừng đồ thị trên hình. (1) Khai báo cho hàm inline: inline(‘f(x)’,’x’), ví dụ: f = inline(‘sin(x),’x’); Khai bao cho hàm handle: handle = @(danh sách đối sô, biến) biểu thức định nghĩa. Ví dụ : f = @ (x) sin(x)+x*cos(x) g=@ (x,y) sin(x+y)-x*y (2) Khai báo miền chạy của x trong trường hợp này có 2 cách Trang 3 CuuDuongThanCong.com https://fb.com/tailieudientucntt
a. x = linspace(a,b) hay x=linspace(a,b,n) (n điểm chia trên [a, b]). Ví dụ: x=linspace(-2,3) (trên [-2,3] có 100 điểm chia). x= linspace(-2,3,70)( trên [-2,3] có 70 điểm chia) b. x= a:d/n:b : trên doạn [a, b], số điểm chia được tính từ quy ước : đoạn có độ dài d được chia thành n diểm Ví dụ: x = 0: 20/100:1 có nghĩa x thuộc [0,1], đoạn có độ dài 20 được chia thành 100 điểm. Vậy mỗi đoạn con dài 1/5 và [0,1] có 5 đoạn chia tương ứng với các điểm: 0, 1/5, 2/5, 3/5, 4/5, 1. (3) Tính chất bao gồm (tra cứu bằng LineSpec) a. Line Style b. LineWidth c. Color d. Marker (Marker sẽ thể hiện ở các điểm chia) i. MarkerType ii. MarkerSize iii. MarkerFaceColor & MarkerEdgeColor Cú pháp: 1. plot(x,y, ’kiểu đường vẽ’, ‘LineWidth’, giá trị,’ MarkerFaceColor’, ’giá trị ’, ‘MarkerEdgeColor’, ‘giá trị ’, ‘MarkerSize’, ‘giá trị ’) 2. Kiểu đường vẽ thể hiện theo thứ tự ‘LineStyleColorMarkerType’. ví dụ: ‘- -mo’; ‘:rx’; ‘-bs’. Nếu chỉ chọn Marker và không chọn Line Style thì chỉ có marker xuất hiện trên đồ thị. Line Style Specifiers Specifier Line Style - Solid line (default) - - Dashed line cuu duong than cong . com : Dotted line -. Dash-dot line Trang 4 CuuDuongThanCong.com https://fb.com/tailieudientucntt
Marker Specifiers Specifier Marker Type + Plus sign o Circle * Asterisk . Point (see note below) x Cross 'square' or s Square 'diamond' or d Diamond ^ Upward-pointing triangle v Downward-pointing triangle > Right-pointing triangle < Left-pointing triangle 'pentagram' or p Five-pointed star (pentagram) 'hexagram' or h Six-pointed star (hexagram) Note The point (.) marker type does not change size when the specified cuu duong than cong . comvalue is less than 5. Color Specifiers Specifier Color Specifier Color Specifier Color r Red c Cyan k Black g Green m Magenta w White b Blue y Yellow Trang 5 CuuDuongThanCong.com https://fb.com/tailieudientucntt
PHẦN 2: LẬP TRÌNH TRONG MATLAB (tóm tắt những vấn đề càn thiết nhất) A. CÁC HÀM TOÁN HỌC sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), sinh(x), cosh(x) abs(x): trị tuyệt đối hoặc modun của x. sqrt(x): căn bậc 2 của x. exp(x): ex log(x): ln(x) log10(x): log10 (x) a^x: ax B. CẤU TRÚC ĐIỀU KIỆN 1. Cấu trúc if a. if điều kiện Nhóm lệnh end b. if điều kiện Nhóm lệnh 1 else Nhóm lệnh 2 end c. if điều kiện 1 Nhóm lệnh 1 elseif điều kiện 2 Nhóm lệnh 2 else Nhóm lệnh 3 end 2. Cấu trúc switch case (áp dụng khi có nhiều điều kiện tương ứng với nhiều nhóm lện khác nhau) cuu duong than cong . com TRƯỜNG HỢP = dãy ký tự hoặc dãy số (TRƯỜNG HỢP=[TH1 TH2 TH3…]) switch TRƯỜNG HỢP case TH1 nhóm lệnh 1 case TH2 nhóm lệnh 2 case TH3 nhóm lệnh 3 …. otherwise nhóm lệnh n end Trang 6 CuuDuongThanCong.com https://fb.com/tailieudientucntt
VÍ DỤ Giải phương trình bậc 2: 2 ax + bx + c = 0 dùng cấu trúc if Giải phương trình bậc 2: 2 ax + bx + c = 0 dùng cấu trúc switch case a=input(‘nhap a:’); a=input(‘nhap a:’); b=input(‘nhap b:’); b=input(‘nhap b:’); c=input(‘nhap c:’); c=input(‘nhap c:’); delta =b^2-4*a*c; delta =b^2-4*a*c; if delta >0 if delta >0 choice =1 disp(‘Phuong trinh co 2 nghiem thuc phan biet:’); elseif delta==0 choice=2 x1=(-b+sqrt(delta))/(2*a) else choice=3 x2=(-b-sqrt(delta))/(2*a) end elseif delta==0 switch choice disp(‘Phuong trinh co nghiem kep:’); case 1 x= -b/(2*a) disp(‘Phuong trinh co 2 nghiem thuc phan biet:’); else % truong hop nay la delta < 0 x1=(-b+sqrt(delta))/(2*a) disp(‘Phuong trinh co nghiem x2=(-b-sqrt(delta))/(2*a) phuc:’); case 2 x1=(-b+i*sqrt(-delta))/(2*a) disp(‘Phuong trinh co nghiem x2=(-b-i*sqrt(-delta))/(2*a) kep:’); end x= -b/(2*a) cuu duong than cong . com case 3 disp(‘Phuong trinh co nghiem phuc:’); x1=(-b+i*sqrt(-delta))/(2*a) x2=(-b-i*sqrt(- delta))/(2*a) end Trang 7 CuuDuongThanCong.com https://fb.com/tailieudientucntt
C. CẤU TRÚC VÒNG LẶP (sử dung khi nhóm lệnh được lặp lại nhiều lần) 1. Vòng lặp for (sử dụng khi đã biết số lần lặp tối đa) for i=m:k:n Nhóm lệnh end i là biến đếm, bắt đầu đi từ m đến n, k là bước nhảy của i. Nếu không có k, bước nhảy mặc định là 1. Nếu k < 0, i lùi từ m về n (trường hợp này m<=n). 2. Vòng lặp while (sử dụng trong mọi trường hợp) while điều kiện lặp Nhóm lệnh end cuu duong than cong . com Trang 8 CuuDuongThanCong.com https://fb.com/tailieudientucntt
Script M-file Function M-file •Không sử dụng tham số đầu vào •Có thể chấp nhận tham số đầu vào hoặc đầu ra và trả tham số đầu ra. •Hoạt động trên dữ liệu của •Các biến trong thân hàm mặc workspace định là cục bộ. •Thường dùng để tự động thực •có tác dụng mở rộng ngôn ngữ hiện một chuỗi thao tác cần MATLAB cho ứng dụng của thiết để thực thi nhiều lần. bạn. VD: giải pt bậc 2 dùng Funtion function X=ptbac2(a,b,c) %ptbac2(a,b,c) giai phuong trinh bac hai ax^2+bx+c=0. if nargin<3 error('Nhap thieu doi so a hoac b hoac c');end if a==0&& b==0 error('Phuong trinh cua ban nhap sai'); elseif a==0 X=-c/b; else delta=b^2-4*a*c; if delta>0 X(1)=(-b+sym(sqrt(delta)))/(2*a); X(2)=(-b-sym(sqrt(delta)))/(2*a); elseif delta==0 X=-b/(2*a); else X(1)=(-b+i*sym(sqrt(-delta)))/(2*a); X(2)=(-b-i*sym(sqrt(-delta)))/(2*a); end end end cuu duong than cong . com Trang 9 CuuDuongThanCong.com https://fb.com/tailieudientucntt