
1
CHƯƠNG 1: MATLAB CƠ BẢN
§1.CÁCTOÁNTỬCƠBẢNCỦAMATLAB
1.Cáctoántửcơbản:Matlablàmộtphầnmềmcaocấpdùngđểgiảicácbài
toán.ĐểkhởiđộngMATLABtabấmđúpvàoiconcủanó.CácfileMATLAB
códạng*.mvàchỉchạytrongmôitrườngMATLAB.MATLABxửlísốliệu
nhưlàmatrận.Khitađánhlệnhvàocửasổlệnh,nósẽđượcthihànhngayvà
kếtquảhiệnlênmànhình.Nếutakhôngmuốnchokếtquả hiệnlênmàn
hìnhthìsaulệnhtađặtthêmdấu“;”.Nếulệnhquádài,khôngvừamộtdòng
dòngcóthểđánhlệnhtrênnhiềudòngvàcuốimỗidòngđặtthêmdấu...rồi
xuốngdòng.Khisoạnthảolệnhtacóthểdùngcácphímtắt:
↑Ctrl‐Pgọilạilệnhtrướcđó
↓Ctrl‐N gọilệnhsau
←Ctrl‐Blùilạimộtkítự
→Ctrl‐Ftiếnlênmộtkítự
Ctrl‐→Ctrl‐Rsangphảimộttừ
Ctrl‐←Crtl‐Lsangphảimộttừ
home Ctrl‐A vềđầudòng
end Ctrl‐Evềcuốidòng
escCtrl‐U xoádòng
delCtrl‐D xoákítựtạichỗconnháyđứng
backspaceCtrl‐Hxoákítựtrướcchỗconnháyđứng
)CácphéptoáncơbảncủaMATLABgồm:
+ cộng
‐trừ
* nhân
/ chiaphải
\ chiatrái
^ luỹthừa
‘ chuyểnvịmatrậnhaysốphứcliênhợp
)Cáctoántửquanhệ:
<nhỏhơn
<=nhỏhơnhaybằng
>lớnhơn
>=lớnhơnhoặcbằng
==bằng

2
~=khôngbằng
)Cáctoántửlogic:
& và
| or
~ not
)Cáchằng:
pi3.14159265
isốảo
jtươngtựi
eps saisố2‐52
realmin sốthựcnhỏnhất2‐1022
realmax sốthựclớnnhất21023
infvôcùnglớn
NaN Notanumber
2.Nhậpxuấtdữliệutừdònglệnh:MATLABkhôngđòihỏiphảikhaibáo
biếntrướckhidùng.MATLABphânbiệtchữhoavàchữthường.Cácsố
liệuđưavàomôitrườnglàmviệccủaMATLABđượclưulạisuốtphiênlàm
việcchođếnkhigặplệnhclearall.MATLABchophéptanhậpsốliệutừdòng
lệnh.Khinhậpmatrậntừbànphímtaphảituântheocácquyđịnhsau:
•ngăncáchcácphầntửcủamatrậnbằngdấu“,”haydấutrống
•dùngdấu“;”đểkếtthúcmộthàng
•baocácphầntửcủamatrậnbằngcặpdấungoặcvuông[]
Đểnhậpcácmatrậnsau:
⎡⎤ ⎡⎤
⎢⎥ ⎢⎥
=− = − =
⎡⎤
⎣⎦
⎢⎥ ⎢⎥
⎢⎥ ⎢⎥
⎣⎦ ⎣⎦
124 1
A325 B1421 C4
153 7
tadùngcáclệnh:
A=[123;3‐24;153]
B=[1421]
C=[1;4;7]
3.Nhậpxuấtdữliệutừfile:MATLABcóthểxửlíhaikiểufiledữliệu:file

3
nhịphân*.matvàfileASCII*.dat.ĐểlưucácmatrậnA,B,Cdướidạngfile
nhịphântadùnglệnh:
saveABCABC
vànạplạicácmatrậnA,Bbằnglệnh:
loadABCAB
NếumuốnlưusốliệucủamatrậnBdướidạngfileASCIItaviết:
saveb.datB/ascii
Taviếtchươngtrìnhct1_1.mnhưsau:
clear
A=[123;456]
B=[3;‐2;1];
C(2)=2;C(4)=4
disp(’Nhanphimbatkydexemnhap/xuatdulieutufile’)
saveABCABC%luuA,B&CduoidangMAT‐filecoten’ABC.mat’
clear(’A’,’C’)%xoaAvaCkhoibonho
loadABCAC%docMAT‐filedenhapAvaCvaobonho
saveb.datB/ascii%luuBduoidangfileASCIIcoten’b.dat’
clearB
loadb.dat%docASCII
b
x=input(’Nhapx:’)
formatshorte
x
formatrat,x
formatlong,x
formatshort,x
4.Nhậpxuấtdữliệutừbànphím:Lệnhinputchophéptanhậpsốliệutừ
bànphím.Vídụ:

4
x=input(’Nhapx:’)
Lệnhformatchophépxácđịnhdạngthứccủadữliệu.Vídụ:
formatrat%sohuuti
formatlong%sosẽcó14chusosaudauphay
formatlonge%sodangmu
formathex%sodanghex
formatshorte%sodangmungan
formatshort%trovesodangngan(default)
Mộtcáchkhácđểhiểnthịgiátrịcủabiếnvàchuỗilàđánhtênbiếnvàocửasố
lệnhMATLAB.Tacũngcóthểdùngdispvàfprintfđểhiểnthịcácbiến.Ví
dụ:
disp(ʹTrisocuax=ʹ),disp(x)
Taviếtchươngtrìnhct1_2.mnhưsau:
clc
f=input(ʹNhapnhietdoFahrenheit[F]:ʹ);
c=5/9*(f‐32);
fprintf(ʹ%5.2f(doFahrenheit)la%5.2f(doC).\nʹ,f,c)
fid=fopen(ʹct1_2.datʹ,ʹwʹ);
fprintf(fid,ʹ%5.2f(doFahrenheit)la%5.2f(doC).\nʹ,f,c);
fclose(fid);
Trongtrườnghợptamuốnnhậpmộtchuỗitừbànphím,tacầnphảithêmkí
tựsvàođốisố.Vídụ:
ans=input(ʹBantraloi<co>hoac<khong>:ʹ,ʹsʹ)
5.Cáchàmtoánhọc:
a.Cáchàmtoánhọccơbản:
exp(x) hàmx
e
sqrt(x) cănbậchaicủax
log(x)logarittựnhiên

5
log10(x) logaritcơsố10
abs(x)moduncủasốphứcx
angle(x) argumentcủasốphứca
conj(x) sốphứcliênhợpcủax
imag(x) phầnảocủax
real(x) phầnthựccủax
sign(x) dấucủax
cos(x)
sin(x)
tan(x)
acos(x)
asin(x)
atan(x)
cosh(x)
coth(x)
sinh(x)
tanh(x)
acosh(x)
acoth(x)
asinh(x)
atanh(x)
b.Cáchàmtoánhọctựtạo:MATLABchophéptatạohàmtoánhọcvà
lưunóvàomộtfileđểdùngnhưlàhàmcósẵncủaMATLAB.Vídụtacầntạo
hàm:
12
1
f(x) 18x
=+
vàhàm:
22
112 12
22
212 112
f(x ,x ) x4x5
f(x) f(x,x) 2x 2x 3x 2.5
⎡⎤
+−
⎡⎤
==
⎢⎥
⎢⎥
−−−
⎣⎦
⎣⎦
Muốnthếtatạorafilef1.mnhưsau:
functiony=f1(x)
y=1./(1+8*x.^2);
vàfilef2.m:

