BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 89 MỤC LỤC Chương 2. Tổng quan về MATLAB.................................................................... 91 GIỚI THIỆU............................................................................................................ 91 MỤC TIÊU CỦA CHƯƠNG.................................................................................. 91 NỘI DUNG CỦA CHƯƠNG ................................................................................. 91 2.1 Giới thiệu về MATLAB................................................................................ 91 2.1.1. Giới thiệu............................................................................................... 91 2.1.2. Khả năng ứng dụng của MATLAB....................................................... 92 2.2. Cửa sổ làm việc của MATLAB ................................................................... 92 2.2.1. Khởi động, kết thúc............................................................................... 92 2.2.2. Giao diện MATLAB ............................................................................. 93 2.2.3. Dấu nhắc lệnh........................................................................................ 96 2.2.4. Một số phím chuyên dụng..................................................................... 96 2.3. Các yếu tố cơ bản ........................................................................................ 97 2.3.1. Biến (variable)....................................................................................... 97 2.3.2. Hằng (constant) ..................................................................................... 98 2.3.3. Hàm (function)...................................................................................... 99 2.3.4. Biểu thức (expression) .......................................................................... 99 2.3.5. Phép gán ................................................................................................ 99 2.4. Định dạng hiển thị số ................................................................................... 99 2.5. Các phép toán cơ bản ................................................................................. 100 2.5.1. Phép toán số học.................................................................................. 100 2.5.2. Các phép toán so sánh ......................................................................... 101 2.5.3. Các phép toán logic ............................................................................. 101 2.5.4. Thứ tự thực hiện phép toán ................................................................. 102 2.6. Các hàm toán học thông dụng.................................................................... 102 2.7. Một số lệnh cơ bản ..................................................................................... 103 2.7.1. Lệnh who, whos .................................................................................. 103 2.7.2. Lệnh clc ............................................................................................... 103 2.7.3. Lệnh clear............................................................................................ 104 BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 90 2.7.4. Lệnh save............................................................................................. 104 2.7.5. Lệnh load............................................................................................. 105 2.7.6. Lệnh demo........................................................................................... 105 2.8. Mfile.......................................................................................................... 105 2.8.1. Giới thiệu............................................................................................. 105 2.8.2. Thao tác với Mfile.............................................................................. 106 BÀI TẬP................................................................................................................ 107 TÀI LIỆU THAM KHẢO..................................................................................... 108 BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 91 CHƯƠNG 2. TỔNG QUAN VỀ MATLAB GIỚI THIỆU Chương này giúp sinh viên làm quen với MATLAB; các khái niệm biến, hằng, biểu thức; giao diện làm việc của MATLAB; định dạng hiển thị số; các phép toán, các hàm toán học thông dụng; một số lệnh cơ bản và giới thiệu về Mfile. MỤC TIÊU CỦA CHƯƠNG Sử dụng MATLAB để giải quyết các bài toán cơ bản. NỘI DUNG CỦA CHƯƠNG 2.1 Giới thiệu về MATLAB 2.1.1. Giới thiệu MATLAB (viết tắt của MATrix LABoratory) là một chương trình do công ty MathWorks (Mỹ) viết cho máy tính cá nhân nhằm hỗ trợ cho các tính toán kỹ thuật tương ứng với các phần tử cơ bản là ma trận. MATLAB là một ngôn ngữ lập trình thực hành bậc cao được sử dụng để giải các bài toán về kỹ thuật. MATLAB tích hợp được việc tính toán, thể hiện kết quả, cho phép lập trình, giao diện làm việc rất dễ dàng cho người sử dụng. Dữ liệu cùng với thư viện được lập trình sẵn cho phép người sử dụng có thể: + Sử dụng các hàm có sẵn trong thư viện, các phép tính toán học thông thường. + Lập trình tạo ra những ứng dụng mới. + Mô phỏng các mô hình thực tế. + Phân tích, khảo sát và hiển thị dữ liệu. + Dùng phần mềm đồ hoạ cực mạnh + Phát triển, giao tiếp với một số phần mềm khác như C, C++, Java, Fortran. MATLAB được điều khiển thông qua các tập lệnh. Nó cũng cho phép lập trình với dạng file chương trình (gọi là Mfile với phần mở rộng là .m). Các lệnh hay các tập lệnh của MATLAB lên đến hàng ngàn và ngày càng được mở rộng bởi các Toolbox hay các hàm ứng dụng được xây dựng từ người sử dụng. Có rất nhiều Toolbox để trợ giúp cho việc lập trình trong các ngành khác nhau. BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 92 Dùng MATLAB có thể giải quyết các bài toán nhanh hơn ngôn ngữ lập trình C, C++,… 2.1.2. Khả năng ứng dụng của MATLAB Nhờ việc dùng các Toolbox để trợ giúp cho việc lập trình. MATLAB được ứng dụng trong rất nhiều ngành, lĩnh vực như: + Có chức năng của một máy tính cá nhân. + Ứng dụng trong Toán học: đại số tuyến tính, xác suất,… + Trong ngành CNTT: xử lý ảnh, xử lý tín hiệu số,… + Trong ngành Điều khiển, tự động hóa. + Trong ngành Kỹ thuật điện, điện tử. + Trong ngành Kỹ thuật điện tử truyền thông + Trong ngành Sinh học + Trong phân tích mô hình tài chính + Trong lĩnh vực đo lường, kiểm tra + Trong dự báo chuỗi quan sát,… 2.2. Cửa sổ làm việc của MATLAB 2.2.1. Khởi động, kết thúc 2.2.1.1 Khởi động MATLAB Trong HĐH Windows 7, tương tự những ứng dụng khác, để khởi động MATLAB, ta thực hiện: + Cách 1: nhấn đúp chuột tại biểu tượng MATLAB trên Desktop + Cách 2: nhất nút Start > chọn MATLAB 2.2.1.2. Kết thúc MATLAB Để kết thúc làm việc với MATLAB, ta thực hiện: + Cách 1: gõ “exit” hoặc “quit” tại dấu nhắc lệnh >> + Cách 2: mở menu File > chọn Exit MATLAB + Cách 3: ấn tổ hợp phím Ctrl + Q + Cách 4: ấn tổ hợp Alt + F4 BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 93 2.2.2. Giao diện MATLAB Trong bài giảng này, chúng tôi dùng phiên bản MATLAB R2016a. Giao diện của nó tương tự MS Office 2010, gồm ba thẻ: HOME, PLOTS, APPS, mỗi thẻ có các nút lệnh tương ứng (Toolstrip), ngoài ra còn có các thẻ xuất hiện theo ngữ cảnh. Chúng ta làm việc với MATLAB chủ yếu thông qua bốn cửa sổ chính, gồm: cửa sổ Current Folder, Command Window, Command History và cửa sổ Workspace. Tùy cách lựa chọn bố cục (layout) mà các cửa sổ đó sắp xếp khác nhau, sau đây là một cách: 2.2.2.1. Cửa sổ Command Window Đây là nơi giao tiếp chính của MATLAB, được dùng để nhập các lệnh, nhập giá trị các biến, hiển thị giá trị, tính toán giá trị biểu thức, thực thi các hàm có sẵn trong thư viện hoặc các hàm do người dùng tự tạo ra. Cửa sổ Command Window Cửa sổ Command History Cửa sổ Current Folder Cửa sổ Workspace BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 94 2.2.2.2. Cửa sổ Workspace Là cửa sổ không gian làm việc, hiển thị tên và các thuộc tính của các biến mà ta sử dụng, gồm: Name, Value, Min, Max,... Các biến này được giải phóng mỗi khi ta thoát khỏi MATLAB. Để hiển thị các thuộc tính của các biến, ta nhấn chuột phải tại cửa sổ này > chọn Choose Columns > chọn thuộc tính. 2.2.2.3. Cửa sổ Command History Đây là cửa sổ lịch sử các lệnh, nghĩa là các dòng mà bạn nhập vào cửa sổ Command Window (các dòng này có thể là dòng nhập biến, nhập giá trị, nhập lệnh,…) sẽ được lưu lại trong cửa sổ Command History. Cửa sổ này cho phép ta sử dụng lại những lệnh đó bằng cách nhấn đúp chuột lên các lệnh, các biến,… nếu ta muốn sử dụng lại chúng. BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 95 Để xóa các lệnh trong cửa sổ này, ta thực hiện các cách sau: + Cách 1: nhấn chuột phải tại thanh tiêu đề cửa sổ Command History > chọn Clear Command History. + Cách 2: Nhấn thẻ HOME > Clear Commands > Command History. 2.2.2.4. Cửa sổ Current Folder Hiển thị các thư mục con và tệp của thư mục hiện thời. BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 96 2.2.3. Dấu nhắc lệnh MATLAB sử dụng dấu nhắc lệnh là “>>”. Các lệnh được nhập sau dấu nhắc đó và được thực hiện bởi phím Enter. Nếu có sai sót trong quá trình nhập lệnh, hãy ấn phím Enter đến khi nhận được dấu nhắc lệnh. Nhiều lệnh có thể được viết trên một dòng, được phân cách nhau bằng dấu phẩy (,) hoặc chấm phẩy (;). Kết thúc lệnh là dấu phẩy (,) hoặc không dấu thì kết quả của lệnh hiện ra màn hình. Nếu kết thúc là dấu chấm phẩy (;) thì kết quả không hiện ra màn hình. Ví dụ: Nếu lệnh quá dài cần xuống dòng, ta có thể dùng dấu ba chấm (…) để báo cho MATLAB biết lệnh còn tiếp tục ở dòng tiếp theo. 2.2.4. Một số phím chuyên dụng + Phím ↑ Lấy lại lệnh đã thực hiện phía trước + Phím ↓ Lấy lại lệnh đã thực hiện phía sau + Phím ← Đưa con trỏ sang trái một ký tự + Phím → Đưa con trỏ sang phải một ký tự + Phím Home Đưa con trỏ về đầu dòng + Phím End Đưa con trỏ về cuối dòng + Phím Delete Xóa ký tự bên phải con trỏ + Phím Back space Xóa ký tự bên trái con trỏ BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 97 + Ctrl + C Ngắt chương trình đang chạy 2.2.5. Lời chú thích MATLAB dùng ký hiệu “%” để đặt trước lời chú thích. Ví dụ: >> a + b %Thuc hien phep cong 2 bien a, b >> c = 1 2 3 4 5 % Tao vec to c co 5 phan tu 2.3. Các yếu tố cơ bản 2.3.1. Biến (variable) Biến là một vùng nhớ được đặt tên và dùng để chứa một hoặc một dãy các giá trị. MATLAB quy định đặt tên biến như sau: + Tên biến phải bắt đầu là chữ cái, tiếp theo là chữ cái, chữ số, dấu gạch dưới. Ví dụ đúng: a1, a_1, a_5, gia_tri Ví dụ sai: 1a, x+, x + Tên biến có phân biệt chữ hoa, chữ thường + Tên biến không được đặt trùng tên với các từ khóa của MATLAB, ví dụ : if, for, end,… MATLAB không yêu cầu ta phải khai báo kiểu dữ liệu và kích thước của biến. Để tạo một biến mới ta chỉ cần gõ tên biến, dấu “=” và giá trị gán cho biến. Nếu biến đã tồn tại trong MATLAB, giá trị của nó sẽ được thay đổi. Ví dụ: BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 98 MATLAB dùng biến “ans” để đặt tên cho biến trong trường hợp ta không đặt tên biến hoặc dùng để trả kết quả của lệnh. Ví dụ: 2.3.2. Hằng (constant) Hằng là một đại lượng có giá trị không thay đổi khi thực hiện chương trình. MATLAB cung cấp các hằng đặc biệt như sau: Hằng Ý nghĩa pi Số pi = 3.1415 eps Số vô cùng bé, bằng 2.2204e016 i, j Đơn vị ảo: i2 = j2 = 1 inf Số vô cùng lớn. Ví dụ: 100 NaN Not a Number: kết quả không xác định. Ví dụ: 00 BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 99 2.3.3. Hàm (function) MATLAB cung cấp rất nhiều hàm toán học: hàm toán học sơ cấp, hàm toán chuyên dụng, hàm chuyên xử lý ma trận,… Để xem các danh sách các hàm mà MATLAB cung cấp, ta dùng lệnh: help elfun, help specfun, help elmat. Để biết cách sử dụng một hàm ta dùng lệnh help theo sau bởi tên của hàm. Ví dụ: >> help exp 2.3.4. Biểu thức (expression) Biểu thức là kết quả ghép nối các toán tử và các toán hạng để diễn đạt một công thức, trong đó: toán tử là các phép toán, toán hạng là hằng, biến, hàm. Ví dụ: >> a1=5; >> sin(5)+(4+ a1)exp(2) % sin: hàm sin; exp: hàm ex Trong MATLAB, biếu thức thực là biểu thức trả về giá trị số thực. Biểu thức logic là biểu thức trả về giá trị số nguyên, cụ thể: giá trị = 0: mệnh đề sai, giá trị khác 0: mệnh đề đúng. 2.3.5. Phép gán Tương tự các ngôn ngữ lập trình khác, MATLAB cũng sử dụng dấu bằng (“=”) để làm phép gán, cú pháp như sau: = với ý nghĩa dùng để gán giá trị của biểu thức cho biến. Ví dụ: >> x1 = sin(5)+(4+ a1)exp(2) 2.4. Định dạng hiển thị số MATLAB dùng hàm “format” để định dạng hiển thị số mà không làm ảnh hưởng đến định dạng của giá trị dữ liệu được lưu trữ. Cụ thể như sau: BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 100 Định dạng Ý nghĩa format short Hiển thị 4 chữ số thập phân (ngầm định) format long Hiển thị 15 chữ số thập phân format short e Hiển thị dạng số e cùng 4 chữ số thập phân format long e Hiển thị dạng số e cùng 15 chữ số thập phân format hex Hiển thị dạng số Hexa (độ chính xác kép 64 bit) format + Cho biết số đó là dương, âm hay bằng 0 format bank Hiển thị 2 chữ số thập phân (dạng tiền tệ) format rat Hiển thị dang phân số Ví dụ: 2.5. Các phép toán cơ bản 2.5.1. Phép toán số học MATLAB cung cấp các phép toán số học như sau: + Phép cộng (+): a + b + Phép trừ (): a – b + Phép nhân (): a b BG Tin học nhóm ngành KT Chương 2 Viện KTCN Trường ĐH Vinh 101 + Phép chia phải (): ab + Phép chia trái (\): a\b + Phép lũy thừa (): ab Ví dụ: 2.5.2. Các phép toán so sánh Trong MATLAB dùng các phép toán so sánh như sau: + Phép bằng (==): a == b (chú ý: 2 dấu “=” liên tiếp) + Phép khác (~=): a ~= b + Phép lớn hơn (>): a > b + Phép bé hơn (=): a >= b + Phép bé hơn hoặc bằng (> + Cách 2: mở menu File -> chọn Exit MATLAB + Cách 3: ấn tổ hợp phím Ctrl + Q + Cách 4: ấn tổ hợp Alt + F4 Viện KTCN - Trường ĐH Vinh 92 BG Tin học nhóm ngành KT - Chương 2.2.2 Giao diện MATLAB Trong giảng này, dùng phiên MATLAB R2016a Giao diện tương tự MS Office 2010, gồm ba thẻ: HOME, PLOTS, APPS, thẻ có nút lệnh tương ứng (Toolstrip), ngồi cịn có thẻ xuất theo ngữ cảnh Chúng ta làm việc với MATLAB chủ yếu thơng qua bốn cửa sổ chính, gồm: cửa sổ Current Folder, Command Window, Command History cửa sổ Workspace Tùy cách lựa chọn bố cục (layout) mà cửa sổ xếp khác nhau, sau cách: Cửa sổ Command History Cửa sổ Current Folder Cửa sổ Command Window Cửa sổ Workspace 2.2.2.1 Cửa sổ Command Window Đây nơi giao tiếp MATLAB, dùng để nhập lệnh, nhập giá trị biến, hiển thị giá trị, tính tốn giá trị biểu thức, thực thi hàm có sẵn thư viện hàm người dùng tự tạo Viện KTCN - Trường ĐH Vinh 93 BG Tin học nhóm ngành KT - Chương 2.2.2.2 Cửa sổ Workspace Là cửa sổ không gian làm việc, hiển thị tên thuộc tính biến mà ta sử dụng, gồm: Name, Value, Min, Max, Các biến giải phóng ta khỏi MATLAB Để hiển thị thuộc tính biến, ta nhấn chuột phải cửa sổ -> chọn Choose Columns -> chọn thuộc tính 2.2.2.3 Cửa sổ Command History Đây cửa sổ lịch sử lệnh, nghĩa dòng mà bạn nhập vào cửa sổ Command Window (các dịng dịng nhập biến, nhập giá trị, nhập lệnh,…) lưu lại cửa sổ Command History Cửa sổ cho phép ta sử dụng lại lệnh cách nhấn đúp chuột lên lệnh, biến,… ta muốn sử dụng lại chúng Viện KTCN - Trường ĐH Vinh 94 BG Tin học nhóm ngành KT - Chương Để xóa lệnh cửa sổ này, ta thực cách sau: + Cách 1: nhấn chuột phải tiêu đề cửa sổ Command History -> chọn Clear Command History + Cách 2: Nhấn thẻ HOME -> Clear Commands -> Command History 2.2.2.4 Cửa sổ Current Folder Hiển thị thư mục tệp thư mục thời Viện KTCN - Trường ĐH Vinh 95 BG Tin học nhóm ngành KT - Chương 2.2.3 Dấu nhắc lệnh MATLAB sử dụng dấu nhắc lệnh “>>” Các lệnh nhập sau dấu nhắc thực phím Enter Nếu có sai sót q trình nhập lệnh, ấn phím Enter đến nhận dấu nhắc lệnh Nhiều lệnh viết dòng, phân cách dấu phẩy (,) chấm phẩy (;) Kết thúc lệnh dấu phẩy (,) khơng dấu kết lệnh hình Nếu kết thúc dấu chấm phẩy (;) kết khơng hình Ví dụ: Nếu lệnh q dài cần xuống dịng, ta dùng dấu ba chấm (…) để báo cho MATLAB biết lệnh tiếp tục dòng 2.2.4 Một số phím chuyên dụng + Phím ↑ Lấy lại lệnh thực phía trước + Phím ↓ Lấy lại lệnh thực phía sau + Phím ← Đưa trỏ sang trái ký tự + Phím → Đưa trỏ sang phải ký tự + Phím Home Đưa trỏ đầu dịng + Phím End Đưa trỏ cuối dịng + Phím Delete Xóa ký tự bên phải trỏ + Phím Back space Xóa ký tự bên trái trỏ Viện KTCN - Trường ĐH Vinh 96 BG Tin học nhóm ngành KT - Chương + Ctrl + C Ngắt chương trình chạy 2.2.5 Lời thích MATLAB dùng ký hiệu “%” để đặt trước lời thích Ví dụ: >> a + b %Thuc hien phep cong bien a, b >> c = [1 5] % Tao vec to c co phan tu 2.3 Các yếu tố 2.3.1 Biến (variable) Biến vùng nhớ đặt tên dùng để chứa một dãy giá trị MATLAB quy định đặt tên biến sau: + Tên biến phải bắt đầu chữ cái, chữ cái, chữ số, dấu gạch Ví dụ đúng: a1, a_1, a_5, gia_tri Ví dụ sai: 1a, x+, x+ Tên biến có phân biệt chữ hoa, chữ thường + Tên biến khơng đặt trùng tên với từ khóa MATLAB, ví dụ : if, for, end,… MATLAB khơng u cầu ta phải khai báo kiểu liệu kích thước biến Để tạo biến ta cần gõ tên biến, dấu “=” giá trị gán cho biến Nếu biến tồn MATLAB, giá trị thay đổi Ví dụ: Viện KTCN - Trường ĐH Vinh 97 BG Tin học nhóm ngành KT - Chương MATLAB dùng biến “ans” để đặt tên cho biến trường hợp ta không đặt tên biến dùng để trả kết lệnh Ví dụ: 2.3.2 Hằng (constant) Hằng đại lượng có giá trị khơng thay đổi thực chương trình MATLAB cung cấp đặc biệt sau: Ý nghĩa Hằng pi Số pi = 3.1415 eps Số vô bé, 2.2204e-016 i, j Đơn vị ảo: i2 = j2 = -1 inf Số vô lớn Ví dụ: 10/0 NaN Not a Number: kết khơng xác định Ví dụ: 0/0 Viện KTCN - Trường ĐH Vinh 98 BG Tin học nhóm ngành KT - Chương 2.3.3 Hàm (function) MATLAB cung cấp nhiều hàm toán học: hàm toán học sơ cấp, hàm toán chuyên dụng, hàm chuyên xử lý ma trận,… Để xem danh sách hàm mà MATLAB cung cấp, ta dùng lệnh: help elfun, help specfun, help elmat Để biết cách sử dụng hàm ta dùng lệnh help theo sau tên hàm Ví dụ: >> help exp 2.3.4 Biểu thức (expression) Biểu thức kết ghép nối toán tử toán hạng để diễn đạt cơng thức, đó: tốn tử phép tốn, tốn hạng hằng, biến, hàm Ví dụ: >> a1=5; >> sin(5)+(4+ a1)*exp(2) % sin: hàm sin; exp: hàm ex Trong MATLAB, biếu thức thực biểu thức trả giá trị số thực Biểu thức logic biểu thức trả giá trị số nguyên, cụ thể: giá trị = 0: mệnh đề sai, giá trị khác 0: mệnh đề 2.3.5 Phép gán Tương tự ngôn ngữ lập trình khác, MATLAB sử dụng dấu (“=”) để làm phép gán, cú pháp sau: = với ý nghĩa dùng để gán giá trị biểu thức cho biến Ví dụ: >> x1 = sin(5)+(4+ a1)*exp(2) 2.4 Định dạng hiển thị số MATLAB dùng hàm “format” để định dạng hiển thị số mà không làm ảnh hưởng đến định dạng giá trị liệu lưu trữ Cụ thể sau: Viện KTCN - Trường ĐH Vinh 99 BG Tin học nhóm ngành KT - Chương Định dạng Ý nghĩa format short Hiển thị chữ số thập phân (ngầm định) format long Hiển thị 15 chữ số thập phân format short e Hiển thị dạng số e chữ số thập phân format long e Hiển thị dạng số e 15 chữ số thập phân format hex Hiển thị dạng số Hexa (độ xác kép - 64 bit) format + Cho biết số dương, âm hay format bank Hiển thị chữ số thập phân (dạng tiền tệ) format rat Hiển thị dang phân số Ví dụ: 2.5 Các phép tốn 2.5.1 Phép toán số học MATLAB cung cấp phép toán số học sau: + Phép cộng (+): a + b + Phép trừ (-): a – b + Phép nhân (*): a * b Viện KTCN - Trường ĐH Vinh 100 BG Tin học nhóm ngành KT - Chương + Phép chia phải (/): a/b + Phép chia trái (\): a\b + Phép lũy thừa (^): a^b Ví dụ: 2.5.2 Các phép tốn so sánh Trong MATLAB dùng phép toán so sánh sau: + Phép (==): a == b (chú ý: dấu “=” liên tiếp) + Phép khác (~=): a ~= b + Phép lớn (>): a > b + Phép bé (=): a >= b + Phép bé ( save % ghi tất biến vào tệp matlab.mat >> save ninhnq % ghi tất biến vào tệp ninhnq.mat >> save ninhnq x y z % ghi biến x, y, z vào tệp ninhnq.mat >> save ninhnq x* % ghi biến có ký tự đầu “x” vào tệp ninhnq.mat 2.7.5 Lệnh load Cú pháp: load (1) load filename (2) load filename var1 var2 var3 (3) Ý nghĩa: đọc biến ghi trước Giải thích: + Dạng (1): đọc tất biến từ tệp matlab.mat + Dạng (2): đọc tất biến từ tệp filename.mat + Dạng (3): đọc biến var1, var2, var3 từ tệp filename.mat Ví dụ: >> load % đọc tất biến từ tệp matlab.mat >> load ninhnq % đọc tất biến từ tệp ninhnq.mat >> load ninhnq x y% đọc biến x, y từ tệp ninhnq.mat 2.7.6 Lệnh demo Cú pháp: demo Ý nghĩa: chạy chương trình demo MATLAB Giải thích: demo chương trình có sẵn trong Matlab, chương trình minh họa số chức Matlab 2.8 M-file 2.8.1 Giới thiệu Trong MATLAB, việc lập trình dấu nhắc lệnh Command Window nhanh hiệu Tuy nhiên, số lệnh tăng lên, ta muốn thay đổi giá trị Viện KTCN - Trường ĐH Vinh 105 BG Tin học nhóm ngành KT - Chương nhiều biến thực lại số lệnh với giá trị mới, việc gõ lệnh dấu nhắc lệnh thời gian nhàm chán Do MATLAB cung cấp cho giải pháp là: cho phép ta lưu lệnh vào tệp văn bản, MATLAB thực lệnh tệp (tương tự ngơn ngữ Pascal, C, C++, ), tệp gọi M-file Danh từ “M-file” để tệp phải có phần mở rộng “.m”, ví dụ: ptb2.m, matran.m,… M-file có hai dạng: dạng script dạng function: + Dạng script: dạng M-file đơn giản, khơng có đối số, chứa lệnh MATLAB làm việc dấu nhắc cửa sổ lệnh Danh từ “script” để MATLAB đơn đọc lệnh theo kịch có tệp + Dạng function: dạng M-file phức tạp hơn, dùng để xây dựng hàm MATLAB, có đối số vào, đối số Khi lập trình cần quan tâm đến tham số truyền cho hàm kết hàm trả 2.8.2 Thao tác với M-file 2.8.2.1 Tạo M-file Để tạo M-file mới, ta thực sau: + Cách 1: nhấn thẻ HOME -> chọn New Scrift + Cách 2: nhấn thẻ HOME thẻ EDITOR (thẻ ngữ cảnh)-> chọn New -> chọn Script Function + Cách 3: ấn tổ hợp Ctrl + N + Cách 4: dấu nhắc lệnh MATLAB, gõ: >>edit Khi đó, MATLAB mở cửa sổ soạn thảo (ngồi bốn cửa sổ có), cho phép gõ nội dung chương trình vào 2.8.2.2 Mở M-file có Để mở M-file có, ta thực sau: + Cách 1: nhấn thẻ HOME EDITOR (thẻ ngữ cảnh) -> chọn Open + Cách 2: ấn tổ hợp Ctrl + O Một hộp thoại cho phép ta mở thư mục chứa tệp, chọn tệp cần mở -> chọn Open Viện KTCN - Trường ĐH Vinh 106 BG Tin học nhóm ngành KT - Chương + Cách 3: dấu nhắc lệnh MATLAB, gõ: >>open 2.8.2.3 Ghi M-file Khi soạn thảo xong chương trình, ta tiến hành ghi M-file sau: + Cách 1: nhấn nút (Save) truy nhập nhanh (Quick Access Toolbar) + Cách 2: Nhấn thẻ EDITOR -> chọn Save + Cách 3: ấn tổ hợp Ctrl + S Khi đó, hộp thoại cho phép ta chọn thư mục, gõ tên tệp cần ghi (tên tệp không chứa dấu cách, có phần mở rộng ngầm định m) nhấn nút Save 2.8.2.4 Thực M-file Để chạy chương trình, ta làm sau: + Cách 1: nhấn thẻ EDITOR -> nhấn nút Run công cụ + Cách 2: cửa sổ soạn thảo, ấn phím F5 + Cách 3: dấu nhắc cửa sổ lệnh MATLAB, gõ tên chương trình cần chạy BÀI TẬP Tính tay biểu thức sau, thử lại MATLAB: a 10 / \ – + * b ˆ / c ˆ ˆ d + round(6 / + * 2) / – e + floor(6 / 11) / – f + ceil(-6 / 9) – g fix(-4/9)+fix(3*(5/6)) Tính biểu thức sau tay dùng MATLAB để kiểm tra kết quả: a / * b - / + ^ - c 20 / \ + - * d ^ / e ^ ^ f + round(6 / + * 2) / - g + floor(6 / + * 2) / – h + ceil(6 / + * 2) / - 3 Tính biểu thức sau tay dùng MATLAB để kiểm tra kết quả: a && -5 b 15 && -3 c < || d || -5 < e && -5 < f && -10 || > Viện KTCN - Trường ĐH Vinh 107 BG Tin học nhóm ngành KT - Chương g && < > || h && < > || Tính biểu thức sau tay dùng MATLAB để kiểm tra kết quả: a / * > < b > * + < > + > < * d > >= < * < e \ 27 / > = f + * / < >= * > Tính tay biểu thức sau, thử lại MATLAB: a \ 16 >= 10 && < + > 15 / < && >= || / c – = * || && > + \ d 15 – > * && + || < ^ + > e 10 + – \ && || / ^ Cho a=75, b=15 Tính tay biểu thức sau, thử lại MATLAB: a mod(a,b) b rem(a,b) c gcd(a,b) d lcm(a,b) Thử lại với cặp giá trị (a,b) khác Thực phép tính: 10/3 MATLAB với dạng hiển thị số khác Thao tác với lệnh học TÀI LIỆU THAM KHẢO [1] Nguyễn Hoàng Hải, Nguyễn Việt Anh, Lập trình MATLAB ứng dụng, Nhà xuất Khoa học Kỹ thuật, 2006 [2] Trần Quang Khánh, Giáo trình sở MATLAB ứng dụng, Nhà xuất Khoa học Kỹ thuật, 2012 Viện KTCN - Trường ĐH Vinh 108