1
LP TRÌNH CĂN BN
GII THIU VCU TRÚC D
LIU VÀGII THUT
2
Nidung
1. Tbài toán đến chương trình
2. Gii thut
lKiudliu
lKi nim vngôn nglp trình
lChương trình dch
3
1.TBàiToán ĐếnChươngTrình
lCácbướcgiibàitoánbngmáytính
lMôtcácbướcgiibàitoán
lVsơđồ x
lViếtchươngtrìnhxlýbngngônnggi
lChnngônnglptrìnhvàchuynchương
trìnhtngônnggisang ngônnglp
trình
lThchinchươngtrình: nhpvàocáctham
s, nhnkếtqu
4
2. GiiThut
lKháinimgiithut
lCác đặctrưngcagiithut
lNgônngbiudingiithut
lMtsgiithutcơbn
lCáccutrúcsuyluncơbncagii
thut
lTgiithutđếnchươngtrình
5
KiNimGiiThut
lVíd:Hoán đổichtlngtrong2 bìnhA (nước
mm) vàB (rượu):
lYêucuphicóthêmmtbìnhthbagilàbìnhC.
lBước1: Đổ rượutbìnhBsang bìnhC.
lBước2: Đổ nướcmmtbìnhAsang bìnhB.
lBước3: Đổ rượutbìnhC sang bìnhA.
lGii thut làmt y các thao tác trên nhng d
liu vào sao cho sau mt hu hn bước ta thu
được kết quca bài tn”.
6
Các ĐặcTrưngCaGiiThut
lTínhkếtthúc
lSbướclàhuhn
lTínhxác định
lMáyphithchinđược
lChocùngkếtqutrêncácmáykcnhau
lTínhphdng
lTínhhiuqu
lThigian
lTàinguyênmáy
7
NgônNgBiuDinGiiThut
lNgônngtnhiên
lNgônngsơđồ
lNgônnggi
8
NgônNgTNhiên
lLàngônngcachúngta
lVíd:Giithutgiiphươngtrìnhbcnht
ax+b=0.
Bước1: Nhngiátrca các tham sa, b.
Bước2: Xétgiátrcaaxem cóbng0haykhông?
Nếua=0thìlàm bước3,nếuakc không t
làm bước4.
Bước3: (abng0)Nếubbng0 =>pt vô snghim.
Nếubkc0=> pt vô nghim.
Bước4:( akhác0) Takết lun phương trình
nghimx=-b/a.
9
NgônNg Sơ Đồ (1)
lMôtgiithutbngcácsơđồ hìnhkhiđã
đượcquy ướctrước
10
NgônNg Sơ Đồ (2)
lVíd:Dùnglưuđđể biudingiithuttìm
USCLNnhưsau:
11
NgônNgGi
lLàmtskếthpgiangônngtnhiên vi
cáccutrúc câulnhcamtngônnglp
trình.
lVíd: Giithutgiiphươngtrìnhbcnht
ax+b=0.
lNhpvàoa, b
lIf a==0 then
If b==0 then
Kếtlunphươngtrìnhvôsnghim
else
Kếtlunphươngtrìnhvônghim
else
Kếtlunphươngtrìnhcónghimx=-b/a
12
MtSGiiThut Cơ Bn(1)
lVíd1: Yêucu:
lNhpvào1 yn
shnga
1
, a2, .., an
lTínhtngS:
S= a1 + a2 + a3 + ...
+ an
lIn S ramànhình
13
MtSGiiThut Cơ Bn(2)
lVíd2: Yêu
cu:
lNhpvào2
sa vàb
2 hsca
pt: ax+b=0
lChobiết
nghimca
phương
trình.
14
C
á
c
C
u
Tr
ú
c
Suy
Lu
n
B
n
CaGiiThut(1)
lGiithutđượcthiếtkếtheo 3 cutrúcsuylun
cơbn:
lTunt(Sequential):
lCáccôngvicđượcthchintunt, côngvicynitiếp
côngvickia.
lCutrúclachn(Selection)
lLachnmtcôngvicđể thchincăncvàomtđiukin
nào đó
lCutrúc1:Nếu< điukin> (đúng) thìthchin<ngvic>
lCutrúc2:Nếu< điukin> (đúng) thìthchin<ngvic
1>, ngượcli(điukinsai) thìthchin<ngvic2>
lCutrúc3: Trườnghp< i> thchin<ngvici>
15
C
á
c
C
u
Tr
ú
c
Suy
Lu
n
B
n
CaGiiThut(2)
lCutrúclp(Repeating)
lLplithc hin mtcôngvickhông hoc
nhiulncăncvàomtđiukinnào đó.
lCó2 dng nhưsau:
lLpvi sln xác định
lLpvi sln khôngxác định
16
TGiiThutĐếnChươngTrình
lC2 đều tpcácchth(instruction) làm
thếnào để giiquyết1 côngvic(task).
lGiithut
lNóichuynvicon người, dhiu.
lDùngngônngđơngin(English) khôngviết
bngmã.
lChươngtrình
lNóichuynvimáytính.
lCóthđượcxemnhư1 dinthìnhthc(formal
expression) ca1 giithut.
17
3. KiuDLiu
lVíd:
int x,y;
float r=3.25;
lKiudliulàmttphpcácgiátrcócùng
mtnhcht tphpcácphéptoán thao
táctrêncácgiátrịđó”.
lCó2 loi
lKiudliusơcp
lKiudliucócutrúc
18
KiuDLiu Sơ Cp
lKiudliusơcplàkiudliu
giátrcanó đơnnht”.
lVíd:Kiuint trong C
llàkiusơcp
lgmcác snguyênt-32768..32767
lvàcácphéptoán: +, -, *, /, %…
19
KiuDLiuCóCuTrúc
lKiudliucócutrúclàkiudliu
màcácgiátrcanólàskếthpca
cgiátrkhác”.
lVíd:KiuchuikýttrongC.
llàkiucócutrúc.
lVíd: char *chuoi= Chao cacban!”;
20
4. NnNgLpTnh
lKháinimvngônnglptrình
lChươngtrìnhdch