MATLAB LECTURE - Trang 23

9/16/2015

4

Soạn thảo Script file trong Matlab

13

• Biến toàn cục (global variable) và biến cục bộ hay biến địa phương

(local variable

). Biến toàn cục được khai báo theo cú pháp

global var_1 var_2

• Các biến toàn cục được xóa khỏi môi trường tính toán bằng lệnh clear

[tên biến]. Biến cục bộ chỉ được sử dụng trong một hàm, biến này không
được liệt kê trong cửa sổ workspace, và do đó không thể tác động đến
được trong môi trường làm việc.

• Biến persistent trong một hàm có thể được thống nhất với cách khai

báo

persistent var_1 var_2

• Trái với các đại lượng đã được khai báo bằng global, các đại lượng với

khai báo persistent

chỉ được biết đến trong hàm mà nó được khai báo.

Do đó các hàm khác không thể tác động được đến biến này. Các biến
persistent

chỉ được xóa khi hàm chứa nó thoát ra khỏi bộ nhớ (clear

function_name) hoặc khi hàm được thay đổi sau đó được ghi lại.

Các vòng lặp và rẽ nhánh

14

Lệnh for

for

var_= bien_chay

các

lệnh

end

Lệnh while

while

dieukien,

các lệnh

end

Lệnh if (nếu .. thì ..)

if

dieukien

...
<elseif

> ……. <else> …….

end

Lệnh switch (chuyển)

switch

..

case

..

<otherwise ..>

end

Lệnh ngắt vòng lặp trong for
và while

break

;

Các vòng lặp và rẽ nhánh

15

function

tong =

tongvector(v

)

% ham tinh tong cac phan tu cua mot vector
n=length(v); % tra lai so phan tu, chieu dai cua vector
s = 0; % khoi gan cho tong
for i = 1:n % hoac for i = 1 : 1 : n
s = s + v(i);
end;
tong = s;
% save with file name

tongvector.m

Ví dụ về lệch for. Viết một hàm sử dụng vòng lặp for để tính tổng các
phần tử của một véctơ v. Trên thanh công cụ, ta lựa chọn New –> m-file
để mở một cửa sổ soạn thảo, trong cửa sổ này ta soạn nội dung sau

Sử dụng hàm

>> x=[1:2:50];
>> s=tongvector(x)
s = 625

Các vòng lặp và rẽ nhánh

16

% su dung vong lap while
function tongS
n=100;
S=0; i=1;

while i<=n
S = S+1/i;
i = i+1;
end

tong=S;
disp('Voi n = 100, tong la :')
disp(tong)

Ví dụ về lệch while. Viết hàm tính tổng S = 1+1/2+1/3+ ... +1/100

>> >> tong_S
Voi n = 100, tong la :
5.1874

% su dung vong lap for
function tong_Sn

n=100;
S=0;

for i=1:n
S=S+1/i;
end

tong=S;
disp('Voi n = 100, tong la :')
disp(tong)

>> >> tong_S
Voi n = 100, tong la :
5.1874

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.