bài tập về hàm trong matlab

21 941 3
bài tập về hàm trong matlab

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

một số bài tập về hàm trong matlabGiáo trình môn Matlab toàn tậpMATLAB là một môi trường tính toán số và lập trình, được thiết kế bởi công ty MathWorks. MATLAB cho phép tính toán số với ma trận, vẽ đồ thị hàm số hay biểu đồ thông tin, thực hiện thuật toán, tạo các giao diện người dùng và liên kết với những chương trình máy tính viết trên nhiều ngôn ngữ lập trình khác.

Sinh viên thực hiên : I.CÁCH ĐỊNH NGHĨA MỘT HÀM TRONG MATLAB: +Trần Văn Thịnh +Bùi Ngọc Anh II CÁC CẤU TRÚC ĐIỀU KHIỂN: +Lê Văn Thiện Nhẫn +Nguyễn Hữu Phan +Nguyễn Lê Nhật Quỳnh +Trịnh Bảo Uyên +Nguyễn Hưng Nguyên I.CÁC ĐỊNH NGHĨA MỘT HÀM TRONG MATLAB 1.Hàm M-file: a) Cách tạo M-file: có cách để khởi động chương trình biên soạn M-file + Cách 1: Từ cửa sổ lệnh(command windows),gõ edit + Cách 2: Vào menu file,chọn New Khi đó, chương trình hiển thị cửa sổ trắng để soạn thảo Sau soạn thảo xong M-file, nhấn: Ctrl+S File/Save để lưu file chương trình Khi đặt tên file chương trình phải theo qui định Matlab.Cụ thể, tên file phải bắt đầu chữ, sau sử dụng số,và dùng dấu gạch ngang để phân biệt Ví dụ tên file: baitap_1.m - Để chạy chương trình, sử dụng cách sau : + Cách : Trong môi trường soạn thảo M-file, vào menu debug/ Run nhấn phím tắt F5 + Cách : Trong cửa sổ lệnh command window, nhập vào tên M-file đã lưu, sau nhấn Enter.Nếu chương trình lập trình đúng, sau chạy chương trình, người sử dụng chuyển cửa sổ lệnh để xem kết Còn ngược lại, chuơng trình báo lỗi ,Matlab phát tiếng bip báo hiệu, đồng thời chương trình tự chuyển sang cửa sổ lệnh, thông báo cho người lập trình vị trí bị lỗi b)Cách viết hàm Matlab Bước 1: Mở m-file Bước 2: Xác định tên hàm, biến đầu vào biến đầu Ví dụ: y=x2 Tên : Hambp input : x output : y Bước 3: Nhập vào m-file nội dung sau: function y = hambp(x) y=x^2; end Bước 4: Lưu m-file với tên trùng với tên hàm từ cửa sổ lệnh >>hambp(x) ans=4 - Dạng tổng quát hàm Matlab: function y1,y2,…,yn = tên hàm(x1,x2,…,xn) câu lệnh; end c)Các hàm nhập hàm xuất liệu hình: Hàm nhập liệu: Cú pháp : x=input (‘prompt’) Trong đó: + x: tên biến gán giá trị nhập vào + prompt: dòng text mà người sử dụng đánh vào Diễn đạt: biến x có gái trị giá trị mà người sử dụng nhập vào Ví dụ: Nhập chiều dài hình chữ nhật x=input(‘nhap chieu dai hinh chu nhat :’) Hàm xuất liệu hình: Cú pháp: disp (x) disp(‘text’) Trong đó: + x: tên biến giá trị số cần xuất hình + text: dòng text mà người sử dụng cần xuất hình Ví dụ: Xuất kết diện tích hình chữ nhật disp(‘dien tich hinh chu nhat la:’) disp(s) Các phép toán hàm toán học A.Biểu diễn hàm toán học : Matlab biểu diễn hàm toán học cách dung biểu thức đặt M-file Ví dụ để khảo sát hàm : f(x)=1/((x-0.3)2+0.01)+1/((x-0.9)2+0.04)-6 Ta tạo file đặt tên tong.m có nội dung: function y=tong(x) y=1/((x-0.3)^2+0.01)+1/((x-0.9)^2+0.04)-6 end B Vẽ đồ thị hàm: hàm fplot vẽ đồ thị hàm toán học giá trị cho Ví dụ : fplot(‘tong’,[-5 5]) Hình ảnh cách làm kết phần A,B C Tìm cực tiểu hàm : Cho hàm toán học biến, ta dung hàm fminbnd matlab để tìm cực tiểu địa phương hàm khoảng đã cho Ví dụ: f=inline(‘1/((x-0.3)^2+0.01)+1/((x-0.9)^2+0.04)-6’); x=fminbnd(f,0.3,1) x= 0.6370 Các quy định tính chất với hàm Mfile: -Tên_hàm tên Mfile phải -Trong thân hàm có lệnh gán giá trị biểu thức cho tên biến -Trong hàm chứa hàm khác -Trong M-file tạo nhiều hàm tạo hàm Tên hàm phải trùng tên file Các hàm không phép gọi hàm Hàm gọi tất hàm đã định nghĩa -Mỗi hàm có không gian làm việc riêng tách biệt so với môi trường matlab Các biến tạo hàm nằm không gian làm việc hàm giải phóng hàm kết thúc -Các dòng thích dùng lệnh Help -Các tham số vào hàm gọi có tác dụng bên hàm Biến Nargin chứa tham số đưa vào, nargout chứa giá trị đưa II.CÁC CẤU TRÚC ĐIỀU KHIỂN 1.Cấu trúc rẽ nhánh if…end: Trường hợp đơn giản: if biểu thức điều kiện câu lệnh end → Nếu biểu thức điều kiện câu lệnh thực Ví dụ: >>a=10 >>if a>0 x=4*a end >>x= 40 Ví dụ 2: >>a=10 >>if (a>0 && a>x= 50 Trường hợp có hai điều kiện thay đổi: if biểu thức điều kiện câu lệnh else câu lệnh end → Nếu biểu thức điều kiện thực câu lệnh 1,còn sai thực câu lệnh Ví dụ: Tìm nghiệm thực phương trình bậc Trường hợp có nhiều điều kiện thay đổi: if biểu thức điều kiện câu lệnh elseif biểu thức điều kiện câu lệnh … elseif biểu thức điều kiện n câu lệnh n else câu lênh n+1 end - Nếu biểu thức điều kiện i thực câu lệnh i(i từ đến n), ngược lại điều kiện thực cấu lệnh n+1 Ví dụ: viết chương trình chuyển đổi điểm theo học chế tín sau: Nhập vào điểm số: 8.4 Điểm chữ là: B Ở đây: A = 8.5 – 10, B = 7.0 – 8.4,C = 5.5 – 6.9, D = 4.0 – 5.4, F = – 3.9 Hình ảnh bên cách làm kết VD 2 Cấu trúc switch case: switch biểu thức case giá trị lệnh case giá trị lệnh case giá trị lệnh case giá trị n lệnh n otherwise lệnh n+1 end - Biểu thức điều kiện dạng số dạng chuỗi Giá trị i( i từ đến n) phải có giá trị phù hợp với biểu thức điều kiện - Nếu biểu thức điều kiện giá trị i khối lệnh i ( i từ đến n) thực hiện, ngược lại nếu biểu thức điều kiện không giá trị i khối lệnh n+1 thực Ví dụ: Hiện thời khoá biểu ta nhập vào thứ (là số) Vòng lặp for: → Vòng lặp for cho phép khối lệnh thực lặp lại số lần cố định Cú pháp vòng lặp for sau: for (Biến = giá trị ban đầu:giá trị cuối) câu lệnh; end → Biến nhận giá trị mảng, mỗi lần khối lệnh thực lần Số lần lặp khối lệnh số phần tử mảng Ví dụ 1: s= 1+2+3+4+ +10 Ví dụ: Tính p=n!=1*2*… Vòng lặp While: → Vòng lặp while thực lặp lại khối lệnh với số lần lặp không biết trước Cú pháp vòng lặp sau : while biểu thức câu lệnh; end → Khi biểu thức điều kiện còn khối lệnh thực hiện, còn biểu thức điều kiện sai kêt thúc vòng lặp Ví dụ: Tính tổng A = 1+1/2+1/3+…+1/n Ví dụ: Tính số chữ số số nhập vào Break: → Là để kết thúc vòng lập for hay while mà không quan tâm đến điều kiện kết thúc vòng lập đã thỏa mãn hay chưa Ví dụ: Hiện thời khoá biểu ta nhập vào thứ (là số) function thoikhoabieu() t=input('nhap vao thu ='); switch( t ) case 'NMon CNPM, NC Kh-Gd‘ break; Các Hàm Toán Học Cơ Bản: Kí Hiệu Hàm Ý Nghĩa exp(x) Hàm ex sqrt(x) Căn bậc hai x abs(x) Tính modun số phức x log(x) Lnx lonj(x) Số phức liên hợp x Imag(x) Phần ảo x real(x) Phần thực x sign(x) Dấu x angel(x) Tính góc số phức log10(x) Log10(x) fix(x) Xấp xỉ không floor(x) Xấp xỉ âm vô gcd(x,y) USCLN số nguyên x,y rem(x) Phần dư phép chia x/y sin(x) Sinx tan(x) tang x asin(x) arcsin x atan(x) arctang x Vd 1: Tính modun >> x=abs(-2)/2 x=1 Vd 2: Tính bậc >> x=sqrt(2)/2 x = 0.7071 Vd 3: Tính hàm sin >> y= sin(1) y = 0.8415 Vd 4: Tính hàm arctan >>4*atan(1) ans = 3.1416 Vd 5: Lấy phần dư phép chia 10/3 >>y=rem(10,3) y=1 Vd 6: UCLN số 18 81 >>gcd(18,81) ans= [...]... dụ: Tính số chữ số trong một số được nhập vào 5 Break: → Là để kết thúc vòng lập for hay while mà không quan tâm đến điều kiện kết thúc vòng lập đã thỏa mãn hay chưa Ví dụ: Hiện ra thời khoá biểu khi ta nhập vào thứ (là số) function thoikhoabieu() t=input('nhap vao thu ='); switch( t ) case 2 'NMon CNPM, NC Kh-Gd‘ break; 6 Các Hàm Toán Học Cơ Bản: Kí Hiệu Hàm Ý Nghĩa exp(x) Hàm ex sqrt(x) Căn... Phần dư của phép chia x/y sin(x) Sinx tan(x) tang x asin(x) arcsin x atan(x) arctang x Vd 1: Tính modun >> x=abs(-2)/2 x=1 Vd 2: Tính căn bậc 2 >> x=sqrt(2)/2 x = 0.7071 Vd 3: Tính hàm sin >> y= sin(1) y = 0.8415 Vd 4: Tính hàm arctan >>4*atan(1) ans = 3.1416 Vd 5: Lấy phần dư của phép chia 10/3 >>y=rem(10,3) y=1 Vd 6: UCLN của 2 số 18 và 81 >>gcd(18,81) ans= 9

Ngày đăng: 14/05/2016, 16:26

Tài liệu cùng người dùng

Tài liệu liên quan