Giáo trình MATLAB - SIMULINK

Chia sẻ: Huynh Ngoc Thuan Thuan | Ngày: | Loại File: DOC | Số trang:99

3
2.061
lượt xem
1.075
download

Giáo trình MATLAB - SIMULINK

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

MATLAB (viết tắt từ matrix laboratory) được phát triển từ dự án LINPACK & EISPACK nhằm tạo ra thư viện ma trận phục vụ cho tính toán. Qua quá trình phát triển lâu dài, MATLAB được phát triển thành một công cụ rất mạnh, được ứng dụng khá phổ biến trong các trường đại học ở khắp thế giới, đặc biệt là các nước như Mỹ, Bỉ, Canada, ... như là công cụ không thể thiếu trong các giáo trình từ cơ bản đến nâng cao trong các lĩnh vực: toán học cao cấp, khoa học và kỹ thuật....

Chủ đề:
Lưu

Nội dung Text: Giáo trình MATLAB - SIMULINK

  1. GIÁO TRÌNH MATLAB - SIMULINK 1
  2. CHƯƠNG 0. TỔNG QUAN VỀ MATLAB 0.1 Cấu trúc chung và các lĩnh vực ứng dụng của MATLAB: MATLAB (viết tắt từ matrix laboratory) được phát triển từ dự án LINPACK & EISPACK nhằm tạo ra thư viện ma trận phục vụ cho tính toán. Qua quá trình phát triển lâu dài, MATLAB được phát triển thành một công cụ rất mạnh, được ứng dụng khá phổ biến trong các trường đại học ở khắp thế giới, đặc biệt là các nước như Mỹ, Bỉ, Canada, ... như là công cụ không thể thiếu trong các giáo trình từ cơ bản đến nâng cao trong các lĩnh vực: toán học cao cấp, khoa học và kỹ thuật. Trong công nghiệp, MATLAB công cụ lựa chọn cho nghiên cứu nâng cao hiệu quả sản xuất, phân tích đánh giá và ứng dụng. Với MATLAB, bài toán tính toán, phân tích, thiết kế và mô phỏng trở nên dễ dàng hơn trong nhiều lĩnh vực chuyên ngành như: Điện, Điện tử, Cơ khí, Cơ điện tử, Vật lý, ...  MATLAB là công cụ tính toán rất mạnh dễ dùng, trực quan dễ mở rộng và phát triển.  MATLAB có khả năng liên kết đa môi trường, liên kết dễ dàng với ngôn ngữ lập trình C++, Visual C, FORTRAN, JAVA, ...  MATLAB có khả năng xử lý đồ hoạ mạnh trong không gian hai chiều và ba chiều.  Các TOOLBOX trong MATLAB rất phong phú, đa năng là công cụ nghiên cứu, thiết kế cực kỳ hiệu quả trong các lĩnh vực chuyên ngành.  Công cụ mô phỏng trực quan SIMULINK chạy trong môi trường MATLAB giúp cho bài toán phân tích thiết kế dễ dàng, sinh động hơn.  MATLAB có kiến trúc mở, dễ dàng trong việc xây dựng thêm các module tính toán kỹ thuật theo tiêu chuẩn công nghiệp và truyền thông. MATLAB xây dựng sẵn các phép tính xử lý ma trận, các hàm toán học, các phép xử lý đồ hoạ với thư viện phong phú. Từ đó cho phép người dùng viết các chương trình (m-files), xây dựng các hàm chuyên tính toán cho mỗi lĩnh vực (gọi là các TOOLBOXS) như: Điều khiển tự động, Kỹ thuật điện, Điện tử, truyền thông, xử lý ảnh, xử lý tín hiệu số, tối ưu hoá, mô phỏng các quá trình thực tế ... Trên cơ sở các thư viện có sẵn, người dùng lập nên các chương trình ứng d ụng riêng theo nhu cầu riêng với cấu trúc chương trình dễ hiểu, rõ ràng và tận dụng s ức 2
  3. mạnh các công cụ có sẵn, đặc biệt công cụ xử lý ma trận để viết nên các ứng dụng mà thời gian lập trình tiết kiệm rất nhiều. Ngoài ra MATLAB cho phép viết ngôn ngữ C/C++, FORTRAN trong cửa sổ MATLAB và biên dịch chương trình viết bằng MATLAB sang C/C++, FORTRAN. Từ đó ta có thể biên dịch sang chương trình ứng dụng (*.exe) chạy độc lập (stand-alone application). Đặc biệt, ta có thể viết chương trình C/C++, Fortran, LabView, ... gọi MATLAB chạy ngầm để tính toán sau đó trả kết quả về chương trình. Ngoài ra MATLAB có thể chạy trên các máy tính khác nhau, với các hệ điều hành khác nhau như: MS Windows, X Windows (Unix/Linux) và Macintosh mà vẫn giữ nguyên các chương trình và dữ liệu, không cần một sự biến đổi nào. 0.2 Giới thiệu SIMULINK và TOOLBOXS trong MATLAB SIMULINK là công cụ mô phỏng trực quan trong môi trường MATLAB, kết hợp với thư viện TOOLBOXS rất phong phú cho các ngành, các lĩnh vực kỹ thuật, giúp cho bài toán phân tích thiết kế dễ dàng, sinh động hơn. Do đó rất thích hợp cho sinh viên nghiên cứu khoa học, làm báo cáo đồ án môn học, đặc biệt đồ án tốt nghiệp, Các kỹ s ư làm việc trong các lĩnh vực nghiên cứu, điều khiển các hệ thống kỹ thuật, phân tích hệ thống, ... Các Toolboxs: - Control System Toolbox cho lĩnh vực điều khiển - Tự động hoá, Điện tử, Cơ khí. - Power System Toolbox cho chuyên ngành Hệ thống điện, Thiết bị điện, Tự động hoá, Cơ khí. - Nonlinear control Design blocksets để mô phỏng, phân tích, thiết kế tối ưu hệ thống điều khiển phi tuyến. - Signal Processing Toolbox và Image procesing Toolbox dành cho ngành ngành Điện tử viễn thông, Công nghệ thông tin và Cơ điện tử. - Communication Toolbox dành cho ngành điện tử viễn thông- TĐH Đo lường - Data acquisition Toolbox thu thập dữ liệu, xây dựng hệ thu thập dữ liệu vào/ra với thiết bị bên ngoài. - Fuzzy logic và Neural Network Toolbox phân tích thiết kế hệ thống trên cơ sở logic mờ và mạng nơ ron nhân tạo. - Aerospace Toolbox và Math Toolbox cho ngành Cơ khí - Cơ điện tử. 3
  4. 4
  5. CHƯƠNG 1. CÁC THAO TÁC LẬP TRÌNH TRÊN MATLAB 1.1 Các lệnh cơ bản quản lý MATLAB 1.1.1 Quản lý lệnh và các hàm - Cửa sổ MATLAB: bao gồm các phần sau: Simulink (mở cửa sổ soạn thảo chương trình mô phỏng simulink) path browser (mở cửa sổ quan sát các đường dẫn tìm kiến của MATLAB và có thể xoá hoặc bổ sung đường dẫn tìm kiếm) workspace browser (mở cửa sổ quan sát và sửa chữa các biến trong không gian workspace) open(mở cửa sổ soạn thảo với chương trình cũ) New (mở cửa sổ soạn thảo mới chương trình) Hình 2.1 Cửa sổ dòng lệnh MATLAB dòng lệnh(commandline) Từ cửa sổ dòng lệnh, ta có thể gọi lệnh thi hành: »path cho đường dẫn các thư mục trong danh mục tìm kiếm (search path) »addpath Bổ sung các thư mục vào search path của MATLAB »rmpath xoá thư mục khỏi search path của MATLAB »pathtool mở cửa sổ giao diện cho phép xem và sửa đổi đường dẫn tìm kiếm search path giống như editpath (hình 1.2) Hình 2.2 Cửa sổ path Browser soạn đường dẫn tìm kiếm tệp M-file. »ver hiển thị version của MATLAB, Simulink và Toolboxes 5
  6. »help hướng dẫn sử dụng sau help »helpwin danh sách các lệnh và hướng dẫn sử dụng »helpdesk cửa sổ trợ giúp trong môi trường Internet Explorer »demo chạy các chương trình demo cho nhiều lĩnh vực Hình 2.3 Cửa sổ HelpDesk Hình 2.4 Cửa sổ Helpwin 1.1.2 Quản lý biến, không gian workspace trên cửa sổ lệnh (Command window) 1. who hiển thị danh sách các biến 2. whos hiển thị danh sách các biến và kích thước của nó 3. workspace hiển thị cửa sổ workspace cho phép xem và chỉnh sửa các giá trị biến 4. clc xoá các dòng text trên màn hình 5. clear xoá tất cả các biến trong workspace 1.1.3 Làm việc với Files môi trường làm việc 1. dir thumuc liệt kê các file trong thumuc chỉ ra 2. edit tenfile soạn thảo mới một M-file 3. open tenfile mở file tenfile để sửa chữa 4. save lưu các biến trong workspace lên đĩa Các cú pháp: save fname lưu các biến vào tệp nhị phân "MAT-file" fname.mat. Nếu không có fname thì mặc nhiên là file matlab.mat. save fname X Chỉ lưu biến X. save fname X Y Z chỉ lưu các biến X, Y, Z. (có thể sử dụng ký tự đại diện '*'). save fname X Y Z -ASCII lưu các biến ASCII 8 bit nhị phân. save fname X Y Z -ASCII -DOUBLE lưu dạng ASCII 16 bit nhị phân. save fname X Y Z -APPEND bổ sung các biến vào tệp MAT-file đã có. 6
  7. Hàm save('fname','var1','var2') khi 'fname','var1','var2' là xâu ký tự. 5. load tải giá trị các biến được lưu ở Files trên đĩa vào workspace. Các cú pháp: load FNAME tải các biến từ MAT-file 'fname.mat' đã có. Nếu không có fname thì mặc nhiên là file matlab.mat. load FNAME X Y Z ... chỉ tải các biến đá chỉ ra (có thể sử dụng ký tự đại diện '*'). load FNAME.EXT tải file ASCII, trong file có thể có chú thích (bắt đầu bởi %). Kết quả gán cho biến có tên FNAME (không có phần mở rộng) load FNAME -ASCII hoặc load FNAME -MAT. Hàm load('fname') sử dụng khi fname được gán dạng xâu ký tự. 6. pwd hiển thị thư mục hiện hành 7. quit hoặc exit thoát khỏi MATLAB 1.1.4 Các phím thao tác trên cửa số dòng lệnh Home đưa con trỏ về đầu dòng End đưa con trỏ về cuối dòng ↑ hiển thị lại các lệnh đã xoá trước đó ↓ hiển thị lại các lệnh đã nhập trước đó ←, → di chuyển con trỏ Ctrl+k xoá từ vị trí con trỏ đến cuối dòng 1.2 Dữ liệu, hàm và cấu trúc lệnh trong MATLAB 1.2.1 Khái niệm dữ liệu và biến Trong Matlab có các kiểu dữ liệu: (kiểu số, kiểu xâu, kiểu cấu trúc và kiểu files)  Dữ liệu kiểu số: dưới dạng mảng hoặc vectơ các số phức (dạng đại số: a + jb)  Dữ liệu kiểu xâu: dưới dạng các xâu (char) và mảng các xâu ký tự  Dữ liệu kiểu đối tượng: dạng đối tượng hình ảnh, đồ hoạ, ...  Dữ liệu kiểu cấu trúc: dạng các thành phần (bản ghi và mảng cấu trúc)  Dữ liệu kiểu tệp (files): là các tệp lưu thông tin trên đĩa Với mỗi kiễu dữ liệu, cần chú ý khi làm việc:  Khái niệm kiểu dữ liệu  Làm việc trực tiếp với dữ liệu 7
  8. • Các phép toán khi làm việc (đại số, quan hệ, logic) • Các hàm, lệnh có sẵn trong thư viện • Chuyển đổi kiễu dữ liệu • Vào, ra với dữ liệu Tên (biến, hằng, hàm, ...) nói chung theo quy ước giống ngôn ngữ C++ Cụ thể:  Bao gồm: • Các chữ cái hoa ‘A’ ‘B’ ... ‘Z’, chữ cái thường ‘a’ ‘b’ ... ‘z’ • Các chữ số ‘0’ ‘1’ ... ‘9’ • Dấu gạch dưới ‘_’  Ký tự đầu của tên phải bằng chữ cái  Có sự phân biệt chữ cái thường và chữ cái HOA  Độ dài tối đa của tên 31 ký tự (19 ký tự đối với ver. 5.3) Tên các hàm (kể cả m-files) đã được đặt cũng có thể được sử dụng làm tên của biến, như vậy hàm này sẽ không được sử dụng trong quá trình tồn tại của biến, cho đến khi có lệnh xoá các biến đó trong bộ nhớ: lệnh clear hoặc clear .  Các hàm, lệnh trong Matlab sử dụng chữ cái thường. 1.2.2 Các ký hiệu và các toán tử 1.2.2.1 Các ký hiệu , phân cách giữa các tham số của hàm, cột của ma trận hoặc ngăn cách các chỉ s ố hàng, cột khi truy cập phần tử của ma trận ; đặt sau câu lệnh không cho hiển thị kết quả của lệnh lên cửa s ổ hay khai báo thêm 1 hàng mới của ma trận [ ] Dùng để tạo véc tơ, ma trận hoặc khai báo tham số ra của hàm. Cú pháp: Tên ma trận = [a11 a12…a1n ; a21 a22… a2n ;…;…] Trong đó: a11, a12, ..., a1n, ... là các giá trị tại hàng 1 cột 1 đến các giá trị tại hàng 1 cột n, ..., có m-1 dấu chấm phẩy ‘;’ sẽ có m hàng. Ví dụ: Tạo ma trận gồm 3 hàng và 3 cột với giá trị là 1 2 3 4 5 6 7 8 9 8
  9. »a = [1 2 3; 4 5 6; 7 8 9] a= 1 2 3 4 5 6 7 8 9 ( ) khai báo tham số vào của hàm hoặc truy cập phần tử ma trận. Ví dụ: A(1,2) truy cập phần tử a12 Tạo vector đơn gồm có n phần tử. Cú pháp 1: Tênvector = [pt1 pt2 pt3 … ptn] Tênvector = [pt1, pt2, pt3, …, ptn] Trong đó: pt1 pt2 …ptn: là các phần tử của véc tơ. Ví dụ: Tạo vector a gồm có 4 phần tử, với các giá trị là:1, 2, 3, 4 »a = [1 2 3 4] a= 1 2 3 4 Cú pháp 2: Tênvector = gtđầu:gia:gtcuối Trong đó: gtđầu: là giá trị đầu của vector. gia: số gia (có thể âm nếu gtđầu > gtcuối). gtcuối: giá trị cuối. Ví dụ: Tạo vector a có giá trị đầu 0.5, giá trị cuối 1.5, số gia 0.2 »a = 0.5:0.2:1.5 a= 0.50000.70000.90001.10001.30001.5000 ... dùng để tiếp tục dòng lệnh dài khi xuống hàng. Ví dụ: »set(h,’facecolor’,[0 1], ... ‘EdgeColor’,’k’,’Linewidth’,2) 9
  10. : Tạo vector hoặc ma trận phụ và lặp đi lặp lại các giá trị. Trong đó: Khai báo Công dụng j:k Tạo ra chuỗi j, j+1, j+2,…., k-1, k j:i:k Tạo ra chuỗi j, j+i, j+2i,….,k-i, k A(: , j) Chỉ cột thứ j của ma trận A A(i , :) Chỉ hàng thứ i của ma trận A(: , :) Chỉ toàn bộ ma trận A A(j : k) Chỉ phần tử A(j), A(j+1)…A(k) (ưu tiên theo cột) A(: , j , k) Chỉ các phần tử A(:, j), A(:, j+1)…A(:, k) A(:) Chỉ tất cả các thành phần của ma trận A % đứng trước các lời chú giải trong các câu lệnh. ' đặt sau trên biến ma trận để chuyển vị phức ma trận. .’ đặt sau trên biến ma trận để chuyển vị ma trận. Ví dụ: nếu A= [ 4.0000 + 2.0000i 3.0000 5.0000 - 7.0000i 3.0000 + 4.0000i] thì A’= 4.0000 - 2.0000i 5.0000 + 7.0000i 3.0000 3.0000 - 4.0000i và A.’= 4.0000 + 2.0000i 5.0000 - 7.0000i 3.0000 3.0000 + 4.0000i ‘ ‘ mở đầu và kết thúc cho các xâu văn bản (string) { } được dùng trong các câu lệnh gán phần tử mảng, mảng cấu trúc. 1.2.2.2 Các phép toán đại số + cộng 2 ma trận/vectơ hoặc 2 số vô hướng với nhau - trừ 2 ma trận/vectơ hoặc 2 số vô hướng với nhau \ toán tử chia trái ma trận/véc tơ. Ví dụ: A\B tương đương A-1*B / toán tử chia phải ma trận/véc tơ. Ví dụ: A/B tương đương A*B-1 ./ hoặc .\ chia phải hay chia trái từng phần tử của ma trận * nhân hai ma trận với nhau 10
  11. .* nhân các phần tử tương ứng. Ví dụ: C=A.*B tức là cij =aij*bij ^ luỹ thừa ma trận hay số vô hướng. Ví dụ: a^2 tức là a2 .^ luỹ thừa từng phần tử của ma trận Ví dụ: Đầu tiên, sử dụng lệnh: format rat Phép toán với véc tơ, ma trận Phép toán với các phần tử 1 4 x 2 y 5 3 6 x’ 123 y’ 4 5 6 5 -3 x+y 7 x–y -3 9 -3 3 -1 x+2 4 x–2 -0 5 1 4 x*y không thực hiện được x.* y 10 18 x’* y 32 x’.* y không thực hiện được 4 5 6 x * y’ 8 10 12 x.* y’ không thực hiện được 12 15 18 2 2 x*2 4 x.* 2 4 6 6 4.0000 x\y 2.2857 x.\ y 2.5000 2.0000 0.5000 2.0000 2\x 1.0000 2./ x 1.0000 1.5000 0.6667 0 0 0.1667 0.2500 x/y 0 0 0.3333 x./ y 0.4000 0 0 0.5000 0.5000 0.5000 0.5000 11
  12. x/2 1.0000 x./ 2 1.0000 1.5000 1.5000 1 x^y không thực hiện được x.^ y 32 729 1 x^2 không thực hiện được x.^ 2 4 9 2 2^x không thực hiện được 2.^ x 4 8 1.2.2.3 Các phép toán quan hệ và logic • Các phép toán quan hệ: == So sánh bằng < ; > ; >= ; =[1 2 3;4 5 6;7 8 9] ans = 1 1 1 1 1 1 0 0 0 »x=6 x= 6 »A=[1 2 3;4 5 6;7 8 9] 12
  13. A= 1 2 3 4 5 6 7 8 9 »x>=A ans = 1 1 1 1 1 1 0 0 0 »x=A x= 1 2 3 4 5 6 7 8 9 »x==A ans = 1 1 1 1 1 1 1 1 1 »x=2 x= 2 »x==A ans = 0 1 0 0 0 0 0 0 0 »x
  14. 1 1 1 • Các phép toán logic & phép và (nhân) logic AND | phép hoặc (cộng) logic OR ~ phép phủ định logic NOT xor phép logic EXCLUSIVE OR Trong đó: Kết quả phép toán là 1(khác 0) nếu phép logic là đúng và là 0 nếu phép logic là sai. Phép toán logic có độ ưu tiên thấp nhất so với phép toán đại số và quan hệ. Ví dụ: Cho phép toán 1>2 & 3+4 thì máy tính sẽ thực hiện 3+4 được 7, sau đó tới 1>2 được 0 rồi thực hiện 0 & 7 và cuối cùng ta được kết quả là 0. (thay 1
  15. 1 » a=[1 2 0] a= 1 2 0 » y=all(a) y= 0 » a=[1 2 3;4 5 6;7 -8 9] a= 1 2 3 4 5 6 0 -8 9 » y=all(a) y= 0 1 1 » a=[1 2 3; 4 5 0;7 0 9] a= 1 2 3 4 5 0 7 0 9 » y=all(a) y= 1 0 0 2. Hàm any Kiểm tra vector/cột ma trận có giá trị nào khác 0 hay không. Cú pháp: y = any(x) y = any(x,DIM) Trong đó: y biến chứa kết quả. y = 1 khi có 1 phần tử khác 0. y = 0 khi tất cả các phần tử bằng 0. x tên vector, hay ma trận. 15
  16. DIM hướng kiểm tra ma trận, Ví dụ: » a=[1 2 3]; » y=any(a) y= 1 » b=[1 0 3 0]; » y=any(b) y= 1 » c=[1 2 0 4;0 2 0 4;1 2 3 4;3 4 5 6] c= 1 2 0 4 0 6 7 8 1 2 3 0 5 0 7 8 » y=any(c) y= 1 1 1 1 » d=[0 0 0 0;0 1 3 0] d= 0 0 0 0 0 1 3 0 » y=any(d) y= 0 1 1 0 3. Hàm exist Kiểm tra biến hay file có tồn tại hay không. Cú pháp: e = exist(‘name’) Trong đó: name: là tên file hay tên biến. 16
  17. e: biến chứa giá trị trả về. e Ý nghĩa 0 name không tồn tại trong vùng làm việc 1 name là biến đang tồn tại trong vùng làm việc 2 name đang tồn tại trên đĩa (m-file hoặc file không xác định kiểu) 3 name là MEX-file 4 name là file dịch từ phần mềm Simulink (.mdl) 5 name là hàm của Matlab 6 name là p-file 7 name là thư mục Ví dụ: »e = exist(‘dir’) e= 5 4. Hàm find Tìm phần tử trong vector/cột ma trận theo yêu cầu. Cú pháp: i = find(x) [i,j] = find(x) [i,j,V] = find(x) Trong đó: i: chỉ vị trí của phần tử cần tìm trong vector. i,j: chỉ số hàng và số cột tương ứng của phần tử cần tìm. V: chứa giá trị của phần tử cần tìm. x: tên vector, ma trận hay yêu cầu đề ra. Nếu không nêu ra yêu cầu thì mặc nhiên là tìm các phần tử khác 0. Yêu cầu thường có mặt các phép toán so sánh và logic. Ví dụ: » x=[1 8 0 2 3 0] x= 1 8 0 2 3 0 » k=find(x) k= 1 2 4 5 » a=[5 0 0;8 0 3] a= 17
  18. 5 0 0 8 0 3 » [i,j,k]=find(a) i= 1 2 2 j= 1 1 3 k= 5 8 3 1.2.2.5 Các giá trị đặc biệt MATLAB tự định nghĩa: pi : hằng số π i, j : ký hiệu đơn vị ảo. Nếu biến đặt trùng tên i hoặc j thì nó đè lên ký hiệu i, j (sau đó không sử dụng được) inf : đại diện cho giá trị vô cực ∝ (infinite) NaN: giá trị vô định 0 chia 0 (Not a Number) eps : độ chính các tương đối (khi sử dụng định dạng format long, eps = 2.220446049250313e-016) 1.2.3 Các lệnh tương tác vào/ra (Interactive Input/Output) = lệnh gán (tương tự lệnh gán trong các ngôn ngữ khác) input nhập dữ liệu từ bàn phím. Cú pháp: Có 2 dạng: R = input('How many apples:') R = input('What is your name:','s') % nhập dữ liệu vào dạng string R giá trị nhập từ bàn phím fprintf cho phép in thông số ra theo định dạng. 18
  19. Cú pháp: fprintf(định dạng, tham số cần in) Giải thích: (xem thêm lệch sprintf) Định dạng bao gồm cả text và các ký tự định dạng đặc biệt (%e, %f, %g, \n, ...,các số và dấu chấm) được ghi trong dấu nháy đơn để điều khiển in các giá trị. %e : in ra dưới dạng số phảy động %f : in ra dưới dạng số phảy tĩnh %g : in ra dưới dạng số phảy tĩnh/động tuỳ thuộc bản thân giá trị %s : in ra dạng xâu ký tự \n, \r : xuống dòng (xuống dòng và lùi về đầu dòng) \t : thêm khoảng tab trống \\ : đưa ra \ %% : đưa ra % %o, %x, %u in ra dạng cơ số 8 (o), 16 (x), 10 không dấu Ví dụ: fprintf(‘ket qua la: %4.1f radian\n’, a); %Kết quả trên màn hình (với a=35) ket qua la: 35.0 radian format điều khiển định dạng đầu ra Các định dạng kiểu hiển thị như sau: (mặc nhiên MATLAB hiển thị format short) Cú pháp Giải thích Ví dụ format short Hiển thị 4 số sau dấu chấm 3.1416 format long Hiển thị 15 số sau dấu chấm 3.141592653589792 format rat Hiển thị dạng phân số tối giản 355/133 format + Hiển thị số dương hay âm + format short e Hiển thị 4 số sau dấu chấm, ký pháp kỹ thuật 0.3142e+01 format long e Hiển thị 15 số sau dấu chấm với ký pháp kỹ 0.314159265358979e+01 thuật format short g Hiển thị 4 số sau dấu chấm chính xác hơn short 3.1416 và short e format long g Hiển thị 15 số sau dấu chấm chính xác hơn long 3.141592653589792 và long e format hex Hiển thị cơ số 16 4a02dbc format bank Hiển thị 2 số sau dấu chấm 3.14 1.2.4 Các lệnh, cấu trúc điều khiển chương trình (Control Flow) Cấu trúc if, else, elseif: Lệnh điều kiện. Cho phép if lồng nhau 19
  20. Cú pháp: if lệnh; lệnh; elseif lệnh; lệnh; else lệnh; lệnh; end; Ví dụ: if I = = J A(I,J) = 2; elseif abs(I-J) = = 1 A(I,J) = -1; else A(I,J) = 0; end; Lệnh end kết thúc câu lệnh for, while, switch, try, và if Cấu trúc switch Dùng trong câu lệnh lựa chọn nhiều trường hợp. Giống như câu lệnh CASE.. OF trong Pascal Cú pháp: switch case , lệnh; ..., lệnh; case lệnh; ..., lệnh; otherwise, lệnh; ..., lệnh; end; Cấu trúc for vòng lặp xác định. Cho phép nhiều vòng for lồng nhau Cú pháp: for , 20
Đồng bộ tài khoản