- XƯt vÝ dô sau:
1. Khai bĨo biỏn xờu
Pascal sö dông tõ khoĨ STRING ợố khai bĨo xờu.ớé dÌi tèi ợa cĐa xờu ợùoc viỏt trong [ ] sau tõ khoĨ STRING. Khai bĨo
ớả dÌi tèi ợa cĐa ngỡn ngƠ phô thuéc voÌ ngỡn ngƠ lẹp trÈnh, thêng lÌ 255 kÝ tù.
‘nGuyởn Van A ‘
Hái cđn cã cĨc thao tĨc gÈ ợố chừnh söa sờu kÝ tù nÌy ?( Cđn ợa xờu vồ dÓng ‘Nguyởn Van A’)
HS: ớa ra ý kiỏn cĐa mÈnh.
GV: phờn tÝch ý kiỏn vÌ gîi ý ợố cĨc em nhẹn ra cđn:
- Xãa bắt mét sè dÊu cĨch
- Chuyốn chƠ hoa vồ chƠ thêngvÌ ngîc lÓi GV: ớa ra mét sè cờu hái:
- LÌm sao biỏt kÝ tù lÌ mảt dÊu cĨch ? - LÌm sao ợố xoĨ ợi mét vÌi kÝ tù ?
- LÌm sao ợố thởm vÌo xờu mảt vÌi kÝ tù?
- LÌm sao ợố cã ợîc chƠ in hoa tŨng ụng vắi chƠ thêng ?
- LÌm sao cã ợuùŨc chƠ cĨi Ũng ụng vắi chƠ hoa?
- LÌm sao biỏt sờu hiơn cã bao niởu kÝ tù ? Tõ ợã ợa ra cĨc thĐ tôc chuẻn vÌ hÌm chuẻn cĐa Pascal thêng dĩng ợố sö lÝ sờu.
ụng dông vắi mçi thĐ tôc hoậc hÌm cĐa Pascal cô thố ợố cĨc em hiốu ợîc ý nghưa cĨc thĐ tôc vÌ hÌm nÌy.
Trong mỡi trêng soÓn thộo cĐa Pascal,giĨo viởn chừ cđn lÌm mét chŨng trÈnh ợŨn giộn cã sö dông mét trong cac thĐ tôc hoậc hÌm nÌy ợố cĨc em theo dâi.
GiĨo viởn soÓn sỎn cĨc vÝ dô nÌy ợố tiơn cho hảc sinh theo dâi trởn mÌn hÈnh còng nh viơc chÓy thö vÌ khỡng lÌm mÊt thêi gian chŨng trinh.
Vắi mçi vÝ dô, giĨo viởn ợi sờu vÌo cờu lơnh trùc tiỏp ợĨp ụng yởu cđu cĐa vÝ dô, nh vẹy cĨc
nh sau:
Var <tởn biỏn >: String [ ợả dÌi lắn nhÊt cĐa xờu ]; VÝ dô: Var tởn:String [10] Ho - dem: String [50]; Que: String ; Chó ý:
- Nỏu khỡng khai bĨo ợé dÌi tèi ợa cho biỏn xờu kÝ tù thÈ ợé dÌi ngđm ợẺnh cĐa xờu lÌ 255
- ớả dÌi lắn nhÊt cĐa xờu lÌ 255 kÝ tù - Hững xờu kÝ tù ợîc ợật trong cập nhĨy ợŨn’’
2. CĨc thao tĨc sĐ lÝ xờu
- vắi cĨc xờu kÝ tù cã cĨc phƯp ghƯp xờu vÌ phƯp so sĨnh hai xờu kÝ tù.
- PhƯp ghƯp xờu: KÝ hiơu bững dÊu +. VÝ dô: ‘Ha’+ ‘Noi’ cho kỏt quộ lÌ ‘Ha noi’
PhƯp so sĨnh:<,<=,>, >=, =,<>,
Pascal tù ợéng so sĨnh lđn lît tõng kÝ tù tõ trĨi sang phội.
VÝ dô:’AB’<’AC’, ‘ABC’>’ABB’ ‘ABC’<’ABCD’
Mét sè thĐ tôc chuẻn dĩng ợố sö lÝ xờu: - Delete(St,vt,n) xoĨ n kÝ tù cĐa xờu St b¾t ợđu tù vẺ trÝ vt.
- Insert(S1,S2,vt) chỉn xờu S1 vÌo vẺ trÝ S2 b¾t ợđu tõ vẺ trÝ vt cĐa S2
- Val(St,x,m ớăi giĨ trẺ xờu St thÌnh sè ghi giĨ trẺ vÌo biỏn X, Nỏu khỡng ợăi ợ- îc thÈ vẺ trÝ gờy lçi ghi trong m, nỏu ợăi thÌnh cỡng thÈ m=o
- Str(X,St)Chuyốn sè X thÌnh xờu kÝ tù lu trong St
Mét sè hÌm chuẻn:
- Copy(St,vt,n)Sao chƯp tõ xờu St, n kÝ tù tõ vẺ trÝ vt.
- Pos(S1, S2)TÈm vẺ trÝ xót hiơn ợđu tiởn cĐa s1 trong s2
VÝ dô 1: Nhẹp 1 xờu, viỏt ra mÌn hinh xờu dÌi hŨn
VÝ dô 2: Nhẹp 1 xờu, kiốm tra xem kÝ tù ợđu tiởn cĐa xờu S1cã trĩng vắi ký tù cuèi cĩng cĐa xờu S2 hay khỡng?
VÝ dô 3: Nhẹp 1 xờu, viỏt ra mÌn hÈnh xờu ợã theo thụ tù ngîc lÓi cĐa cĨc kÝ tù trong xờu.
VÝ dô 4: Nhẹp 1 xờu,viỏt ra mÌn hÈnh xờu ợã nhng ợỈ ợîc bá tÊt cộ cĨc kÝ tù lÌ dÊu cĨch.
VÝ dô 5: Nhẹp 1 xờu, viỏt ra mÌn hÈnh xờu gạm
mỈ ASCII
- Ord(ch) cho mỈ cĐa ký tù ch trong bnộg mỈ 3. Mét sè vÝ dô VD1 Uses crt; Var s1, s2:String ; Begin Clrscr;
Write(‘ Nhap xau thu 1’);Readln (S1); Write(‘ Nhap xau thu 2’);Readln (S2); If Length(S1) > Length(S2) then
Write(S1) Else Write(S2); Readln; End. VD2 Uses crt; Var S1, S2:String ; Begin Clrscr;
Write(‘ Nhap xau thu 1’);Readln (S1); Write(‘ Nhap xau thu 2’);Readln (S2); X:=Length(S2);
If S1[1] = S2[x] then Write(‘Trung nhau’
Else Write(‘Khac nhau’); Readln; End. VD3 Program VD3; Uses crt; Var i, k: Byte; A: String; Begin
Write(‘Nhap xau: ‘); Readln(a); K:=Length(a);
For i:=k downto 1 do Write(a[i]); Readln;
End. VD4
cĨc kÝ tù sè cĐa xờu ợã . Program VD4; Uses crt; Var i, k: Byte; A, b: String; Begin
Write(‘Nhap xau: ‘); Readln(a); K:=Length(a);
B:= ‘’;
For i:= 1 to k do
If a[i] <> ‘’ then b:= b + a[i]; Write(b); Readln; End. VD5 Program VD5; Uses crt; Var i: Byte; S1, S2: String; Begin
Write(‘Nhap xau S1: ‘); Readln(S1); S2:=’’
For i:=1 to Length(S1) do
If (‘0’ < = S1[i] and (s1[i] <=9 then S2:=S2+S1[i];
Write(S2); Readln; End.
V. CĐng cè, dận dß
- Nh¾c lÓi mét sè khĨi niơm mắi - Nh¾c lÓi cÊu tróc cờu lơnh - Ra bÌi tẹp vồ nhÌ
Tiỏt 25 BÌi 13: Kiốu bộn ghi
(1 tiỏt lý thuyỏt - NgÌy soÓn: 19 / 12 / 200 )
I. Môc tiởu
1. Kiỏn thục
- Biỏt khĨi niơm kiốu bộn ghi
2. Kü nÙng
- Biỏt cĨch khai bĨo bộn ghi
II. PhŨng phĨp, phŨng tiơn dÓy hảc
1. PhŨng phĨp: Thuyỏt trÈnh, vÊn ợĨp
2. PhŨng tiơn: MĨy tÝnh, mĨy chiỏu, phỡng chiỏu hoậc bộng
III. Néi dung bÌi giộng
HoÓt ợéng cĐa giĨo viởn vÌ hảc sinh Néi dung cđn ợÓt ăn ợẺnh lắp :
ChÌo thđy cỡ
CĨn bé lắp bĨo cĨo sư sè XƯt vÝ dô sau :
Viỏt chŨng trÈnh dĩng ợố quộn lÝ thÝ sinh cĐa mét kÈ thi tuyốn sinh .
ChŨng trÈnh cĐa ta cđn quộn lÝ ợîc: SBD cĐa thÝ sinh ,
Hả tởn cĐa thÝ sinh , Giắi tÝnh , ớiốm cĐa cĨc mỡn ,...
GV: ớa ra mét sè cờu hái sau :
- LÌm thỏ nÌm ợố quộn lÝ toÌn bé thỡng tin trởn cĐa hảc sinh?
- Mçi thỡng tin trởn cã kiốu dƠ liơu lÌ gÈ?
HS: Cã thố quộn lý mçi dƠ kiơn trởn lÌ mét mộng mét chiồu
Ngỡn ngƠ lẹp trÈnh bẹc cao cã cĨch tè hŨn ợố quộn lý dƠ liơu trởn bộn ghi -->bộn ghi
GV lÊy, mét bộng ợiốm cĐa hảc sinh rại chừ râ: mçi hÌng ta gải lÌ mét bộng ghi, mçi cét lÌ mét trêng,
GV: Mçi ngỡn ngƠ cã mét cĨch khai bĨokiốu bộn ghi khĨc nhau .
Mét sè khĨi niơm
- Kiốu bộn ghi thêng ợîc dĩng ợố mỡ tộ cho cĨc ợèi tîng cã cĩng mét sè thuảcc tÝnh mÌ cĨc thuéc tÝnh cã thố cã cĨc kiốu dƠ liơu khĨc nhau.
- Bộng ghi thêng ợîc gải lÌ Recort,
mçi Recort sị lu trƠ dƠ liơu vồ mét ợèi tîng cđn quộn lý.
- Mçi thuéc tÝnh cĐa ợèi tîng tŨng ụng vắi mét trêng cĐa bộn ghi. CĨc trêng khĨc nhau cã thố cã dƠ liơu khĨc nhau.
- CĨc ngỡn ngƠ lẹp trÈnh thêng cho cĨch ợố xĨc ợinh:
+ Tởn kiốu bộn ghi + Tởn cĨc trêng
+ Kiốu dƠ liơu cĐa têng + CĨch khai boĨ biỏn
+ CĨch tham chiỏu ợỏn trêng
CĨch khai bĨo vÌ sö dông kiốu bộnghi trong ngỡn ngƠ Pascal
Ngỡn ngƠ Pascal khỡng cho bÓn khai bĨo biỏn bộn ghi trùc tiỏp mÌ phội thỡng qua khia bĨo kiốu bộn ghi.
Trắc hỏt phội khai bĨo kiốu bộn ghi ợîc khai bĨo thỡng qua kiốu bộn ghi nÌy.
GV:LÌm thỏ nÌo ợố cã thố khai bĨo ợîc nhiồu biỏn bộn ghi cã cĩng mét kiốu?
HS: GV sị gîi ý ợố hảc sinh ợa ra ợã lÌ sö dông kiốu mộng trong ợã phđn tö mộng sị cã kiốu bộn ghi.
VÝ dô vồ khai bĨo bộn ghi
Khai bĨo lÌ mét kiốu bộn ghi ợố xö lý bộng kỏt quộ thi cĐa cĨc hảc sinh.
Mçi bộng ghi sị bao gạm: hả vÌ tởn cĐa hảc sinh(Hoten), ngÌy thĨng nÙm sinh(Ngaysinh), Giắi tÝnh(NamNu), vÌ ợiốm thi cĨc mỡn cĐa mçi hảc sinh(Toan, Ly, Hoa, VÙn, Su, Dia, Tin).
HỈy xĨc ợẺnh kiốu cĨc dƠ liơu cho cĨc trêng trởn (Mçi néi dung trởn lÌ mảt trêng cĐa bộn ghi)
GV: Khi cã nhu cđu thay ợăi thỡng tin trong tõng trêng, lÌm thỏ nÌo ợố truy cẹp tõng trêng cĐa bộn ghi?
Mçi ngỡn ngƠ cã mét cĨch truy cẹp khĨc nhau nhng thêng ợîc viỏt lÌ:
<Tởn biỏn bộn ghi >.<Tởn trêng >
GV: ớa ra mét sè vÝ dô.
GV: VÈ bộn ghi cã nhiồu trêng nởn viơc gĨn giĨ trẺ cho bộn ghi phục tÓp hŨn cĨc biỏn khĨc. Khi nhẹp thỡng tin vÌo tõ bÌn phÝm, ta thêng phội nhẹp cho tõng trêng.
VÝ dô :
ChŨng trÈnh sau ợîc viỏt trong ngỡn ngƠ Pascal dĩng kiốu bộn ghi ợố xö lý bộng kỏt quộ
ớố khai bĨo biỏn bộn ghi, thêng khai bĨo mét kiốu bộn ghi sau ợã khai bĨo biỏn bộn ghi.
CĨch khai bĨo kiốu:
Type<Tởn kiốu bộn ghi >= Record <Tởn trêng 1>:<Kiốu trêng 1>; ... ...
<Tởn trêng n>:<Kiốu trêng n>; End;
CĨch khai bĨo biỏn:
Var<Tởn biỏn >: <Tởn kiốu bộn ghi >; Var <Tởn mộng >:Array[1...n] Of <Tởn kiốu bộn ghi >;
Type hocsinh = Record
Hoten: String[30]; Ngaysinh: String[10]; NamNu: Boolean;
Toan, Ly, Hoa, VÙn, Su, Dia, Tin : Real;
End;
Var A, B: Hocsinh;
LŨp: Array[1...100] Of Hocsinh;
ớố truy cẹp vÌo tõng têng cĐa bộn ghi, ta viỏt :
<Tởn biỏn bộn ghi>.<Tởn trêng > Su, Dia, Tin). VÝ dô : A. Hoten B. Ngaysinh Lop[i]. Toan Lop[i]. Ly
... vắi i lÌ chừ sè nÌo ợã cĐa mộng Lop