Cac Ham Va Thu Tuc Trong Pascal

Embed Size (px)

Citation preview

Vietebooks Bi 1:

Nguyn Hong Cng

Cc hm v th tc trong Pascal Yu cu: Dng cc phm F1, Alt F1, Ctrl + F1 xem cu trc v cc thng s u vo ca tng lnh trong Pascal v ghi vo dng pha di ca cc cu lnh. V d: - Window To mt ca s mn hnh mi Procedure Window (X1,Y1,X2,Y2:Byte); Bn c th Copy cc v d ca Pascal v th chy n hiu r hn v cch s dng ca cc hm v cc th tc... I. Mt s Unit hay dng trong Pascal for DOS Khi s dng mt Unit no bn cn phi khai bo tn Unit sau t kho uses. Cc Unit c th c Pascal to trc hoc do chnh bn nh ngha. 1. Unit System: Khng phi khai bo sau t kho uses, n l th vin cha cc hng, binn th tc, hm xut, nhp, x l d liu, cp pht, qun l b nh. Cc th tc v hm trong Unit system: Cc th tc (Procedure): - Append M mt tp tin vn bn ghi - Reset M mt tp tin c c thm d liu. - ReWrite To mi v m tp tin. - Assign Gn tn mt tp tin ngoi tr vo - Read Gn gi tr cho mt hay nhiu bin bin tp tin. - Readln Gn gi tr cho mt hay nhiu bin - Close ng bin tp tin. - Str i gi tr kiu s sang dng chui - Exit Thot chng trnh hoc vng k t. lp. - Val i gi tr kiu chui sang dng s. - FillChar in mt s byte c gi tr vo - Write Xut d liu ra tp tin, mn hnh. mt bin. - Writeln Xut d liu ra tp tin, mn hnh. - Halt Kt thc ngang chng trnh. - Inc Tng gi tr mt bin. - Randomize Khi to ch to s ngu nhin. Cc hm (Function): - ABS Ly gi tr tuyt I - Arctang Ly gi tr Arctang ca mt gi tr lng gic. - Cos Ly gi tr lng gic Cosin ca mt gc. - Chr Ly k t trong bng m ASCII - Concat Ni cc chui. - Eof Kim tra trng thi kt thc ca tp tin. - Eoln Trng thi kt thc dng ca tp tin vn bn. - Exp Ly lu tha c s e ca mt s. - Length Ly chiu di ca mt chui - Ord Ly th t ca mt k t trong bn m ASCII. 2. Unit Crt: Trang 1 - Paramcount Tng s tham s truyn vo ca chng trnh. - ParamStr Ni dung ca tham s. - Pi Gi tr 3,1416... - Pos V tr ca mt chui con trong chui ln. - Random To mt s ngu nhin. - Round Lm trn mt s. - Sin Cho gi tr lng gic Sinus ca mt gc. - Sqr Bnh phng ca mt s - Sqrt Cn bc hai ca mt s. - Upcase i k t thng thnh k t in.

Vietebooks

Nguyn Hong Cng

L th vin cha cc hng, bin, th tc, hm dng xut d liu dng vn bn trn mn hnh, cc th tc c lin quan n m thanh. Unit Crt gm c: Cc hng lin quan n mu: Blank 0 Blue 1 Green 2 Syan 3 Red 4 Magenta 5 Brow 6 LightGray 7 DarkGray 8 LightRed 12 LightMagent 13 Yellow 14 White 15 Blink 128 Cc bin: Winmax: Word Gi tr nh di phi ca ca s. Winmin: Word Gi tr nh tri trn ca ca s. Cc hm v th tc: - Clrscr: Xo v t mu cho ca s hin ti - Delay: Dng chng trnh trong mt thi gian - Gotoxy: a con tr ti to mn hnh. - NoSound: Tt m thanh - Sound: Pht m thanh vi mt tn s. - Textbackground: nh mu nn. - Textcolor nh mu ch - Window To mt ca s mn hnh mi - Keypressed Kim tra nu c mt phm c nhn - ReadKey Ly gi tr ca mt ph m c bm - WhereX V tr ct ca con tr - WhereY V tr h ng ca con tr.

3. Unit Dos: L th vin cha cc hng, bin, th tc dng truy xut n cc tp tin trn a, truy xut b nh my tnh... Unit DOS gm c: - GetDate Ly ngy ca h thng my tnh - GetTime gi ca h thng my tnh - SetDate t li ngy cho my tnh - SetTime t cho my tnh - DiskFree Cho s byte cn trng trn a - DiskSize Cho lng ca a. Ly li gi dung

4. Unit Graph: L th vin cha cc hng, bin, th tc, hm dng truy xut d liu ra mn hnh trong ch ho. Unit Graph gm c: - CloseGraph ng ch ho - DetectGraph Xc nh Card v Mode ho - Initgraph Khi to ch ho - GraphResult Kt qu khi ng ho - ClearDevice Xo mn hnh ho - SetViewport nh ca s trn mn hnh - ClearViewport Xo ca s to bi Viewport - GetMaxX Ly gi tr ln nht ca to X trong ch ho - GetMaxY Ly gi tr ln nht ca to Y trong ch ho - GetX Ly gi tr hin hnh ca to X trong ch ho - GetY Ly gi tr hin hnh ca to Y trong ch ho - Moveto Di chuyn co tr ti mt to mi - MoveRel Di chuyn con tr ngm nh n mt khong cch. - SetBkColor t mu nn trong ch ho - SetColor t mu v - GetBkColor Ly mu nn trong ch ho - GetColor Ly mu v - PutPixel V mt im nh ti to

Trang 2

Vietebooks - GetPixel Ly mu ca im nh ti to

Nguyn Hong Cng

* Cc kiu bin, hng, hm, th tc lin quan n cch vit ch trong ho: + Hng lin quan n Font ch: Const DefaultFont = 0; TriplexFont = 1; SmallFont = 2; SansSerifFont = 3; GothichFont = 4; + Hng lin quan n hng ch: Const HorizDir = 0 VertDir = 1 + Hng lin quan n ln ch: UserCharSize = 0; + Hng lin quan n cn chnh ch: CenterText = 1; LeftText = 0; RightText = 2; BottomText = 0; TopText = 2; + Cc th tc lin quan: - GetTextSettings - OutText - OutTextXY - SetTextJustify - SetTextStyle - TextHight - TextWidth Ly cch nh ch Vit mt chui ti to Vit mt chui ti to t cch cn chui t kiu ch Ly cao ca chui Ly rng ca chui

* Cc kiu bin, hng, th tc lin quan n v ng: + Hng lin quan n loi ng Const Solidln = 0; Dottedln = 1; CenterLn = 2; DashedLn = 3 + Cc th tc lin quan: - GetLineSettings - SetLineStyle - SetWritemode - Line - LineRel - LineTo - DrawPoly - Circle - Arc - Ellipse - Rectangle * Cc hng, bin, th - SetFillStyle - SetFillPattern - FloodFill - Bar - Bar3D Ly thng s thit k ng t kiu ng nh Mode v ng V mt on thng V on t v tr con tr cch mt on V on thng t v tr con tr n v tr mi V hnh a gic V ng trn V cung trn V cung Ellipse V hnh ch nht

tc lin quan n v hnh: t kiu t t mu t T mt vng V hnh ch nht c t V hnh khi ch nht 3 chiu

Trang 3

Vietebooks FillPoly PieSlice Sector FillEllipce V V V V a gic c t hnh qut Ellipse hnh r qut trn hnh Ellipce

Nguyn Hong Cng

* Cc th tc c bit: + Const: NormalPut = 0; CopyPut =0 XORPut = 1; ORPut = 2; ANDPut = 3 NOTPut = 4; + Th tc: - GetImage - PutImage - SetActivePage - SetVisualPage - ImageSize - Sector - FillEllipce Lu tr mt vng mn hnh V li vng mn hnh lu tr t tran v hot ng Dt trang hin th Ly ln vng mn hnh V hnh r qut trn V hnh Ellipce

* Cc th tc c bit: + Const: NormalPut = 0; CopyPut =0 XORPut = 1; ORPut = 2; ANDPut = 3 NOTPut = 4; + Th tc: - GetImage - PutImage - SetActivePage - SetVisualPage - ImageSize - Sector - FillEllipce Lu tr mt vng mn hnh V li vng mn hnh lu tr t tran v hot ng Dt trang hin th Ly ln vng mn hnh V hnh r qut trn V hnh Ellipce

II. Cu trc mt chng trnh vit bng Pascal Mt chng trnh my tnh l mt dy lnh nhm ch th, hng dn my tnh thc hin mt thao tc no , thc hin cc php tnh trn cc d liu. Cu trc chung nht ca Pascal gm 3 phn: 1. Phn tiu 2. Phn khai bo 3. Phn thn chng trnh Chng c quy nh bng c php sau: Program ...; t tn cho chng trnh Uses ...; Khai bo cc Unit s dng trong chng trnh Const ...; Khai bo cc hng s dng trong chng trnh Type ...; nh ngha cc kiu bin Var ...; Khai bo cc bin s dng trong chng trnh Procedure ...; Cc chng trnh con s dng trong chng trnh Function ...; Cc hm s dng trong chng trnh Begin Statement; Cc th tc v lnh End. Trang 4

Vietebooks

Nguyn Hong Cng

1. Phn tiu ca chng trnh: Bt u bng t kho PROGRAM tip l tn ca chng trnh do bn t ra (Tn chng trnh khng c k t trng). VD: Program Chao_Cac_Ban; 2. Phn khai bo: M t cc kiu d liu, cc bin, cc hng, cc chng trnh con ... USES Dng khai bo cc Unit (nu c), cc Unit cch nhau bi du phy (,), cui khai bo l du chm phy (;). VD: Uses Crt,Graph; Const T kho khai bo hng s VD: Const Max=40; TYPEDng khai bo cc kiu d liu do bn nh ngha Var Dng khai bo cc bin ca chng trnh VD: Var M,N:integer; ST:String; Functiong khai bo v trin khai hm t to do bn to ra. Procedure Khai bo trin khai chng trnh con do bn to ra. 3. Phn thn chng trnh: Gm hai t kho BEGIN v END bao cc lnh ca chng trnh. Sau t kho END l du chm (.) bo hiu chm dt chng trnh. Cc cu lnh trong phn thn chng trnh s c thc hin tun t, lnh no nm trc s c thc hin trc, lnh no nm sau s c thc hin sau. Bi 2 Khai bo bin cc kiu d liu chun 1. Khai bo bin: Bt k mt bin no khi s dng trong chng trnh u phi khai bo, vic khai bo bin gm hai phn: - Khai bo tn bin (tn bin do bn t). - Khai bo kiu d liu, l tn cc kiu d liu chun, d liu khng chun. Phn tn v phn d liu cch nhau bi du hai chm (:). Cc bin khai bo c bt u bng t kho Var , cc bin cng kiu cch nhau bng du phy (,), cc bin khc kiu cch nhau bng du chm phy (;). Var , : ; : ; 2. Khai bo Hng v hng bin: Hng cng ging nh bin nhng trong ni dung ca hng s khng thay i trong qu trnh thc hin chng trnh. Vic khai bo hng bt u bng t kho Const Const = ; Hng c gn thng mt gi tr m khng cn khai bo kiu. VD: N =20 Str = String; Trang 5

Vietebooks Thoat=True;

Nguyn Hong Cng

3. D liu kiu s: a. Cc php ton trn d liu kiu s nguyn: Trong Pascal nh ngha kiu s nguyn chun nh sau: Kiu (type) Phm vi (Range) ln ShortInt -128 ... 128 1 Byte Integer -32768 ... 32767 2 Byte LongInt -2147483648 ... 2147483647 4 Byte Byte 0 ... 255 1 Byte Word 0 ... 65535 2 Byte * Php ton s hc: Chc nng K hiu Php cng + Php tr Php nhn * Php chia nguyn Div Php ly phn d Mod Cc php ton ny tc ng nn kiu d liu s nguyn cho d liu kiu nguyn. * Hm, th tc trn d liu s nguyn: - PRED(x) Cho phn t ng trc x - SUCC(x) Cho ra phn t ng sau x - INC(x,r) Tng gi tr ca x nn r n v. Tng ng vi x:=x+r. - DEC(x,r) Gim gi tr ca x xung r n v. Tng ng vi x:=x-r. (Th tc INC(x), DEC(x) xem nh tng, gim x mt n v). * Php so snh Logic: Cc php so snh nh: Chc nng K hiu Bng nhau = Khc nhau Nh hn < Ln hn > Ln hn v bng >= Nh hn v bng