pascal cơ bản

Upload: dam-me

Post on 08-Jul-2018

230 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/19/2019 Pascal Cơ Bản

    1/112

    Chương 1CÁC THÀNH PHẦN CƠ BẢN CỦANGÔN NGỮ LẬP TRÌNH PASCAL

      Pascal là một ngôn ngữ lập trình bậc cao do Niklaus Wirth, giáo sư đin toán trư!ng "#i h$c k%thuật &urich '(h)* +- đ. /u0t n1m 23456 7ng l0* t8n Pascal đ9 k: nim nhà toán h$c ;à nhà tri

  • 8/19/2019 Pascal Cơ Bản

    2/112

  • 8/19/2019 Pascal Cơ Bản

    3/112

    Giáo trình bài tập Pascal

    ]U d)F Tác t8n ;i

  • 8/19/2019 Pascal Cơ Bản

    4/112

    Giáo trình bài tập Pascal

    ThưKng 7CÁC ]6j EỮ L6k CƠ BẢN

    ]HA6 BÁ2 HlNGb B6mNb ]6jb B6j THC DÀ Co LkNH6. CÁC ]6j EỮ L6k CƠ BẢN

    1. ]#p, 'g#cw ( khVaF B22L3ANw mi.n giá trJF ZTR3b ;ALS3[6w Tác phqp toánF phqp so sánh '}, , ‚- ;à các phqp toán logicF vNG, O, RO, N(6(rong Pascal, khi so sánh các giá trJ bool?an ta tuen th?o ui tcF v^+Q (OQ6iI sX v ;à > là hai giá trJ ki9u >ool?an6 . ]#p, 0 hQc3.1. Các $i9 s% th;c<

    Trn p, PhX9 *# E,ng 'ưsng+ingl? 26„×25w•„ → €6•×25†€ƒ • b*t?

    O?al D63×25w€3 → 264×25†€ƒ … b*t?Goubl? „65×25w€D• → 264×25†€5ƒ ƒ b*t?

  • 8/19/2019 Pascal Cơ Bản

    5/112

    Giáo trình bài tập Pascal

    Q/t?nd?d €6•×25w•3€D → 262×25†•3€D 25 b*t?Ch= > F Tác ki9u sB thc +ingl?, Goubl? ;à Q/t?nd?d *8u cCu phIi sX d)ng chung ;Ai bộ đSng /X ljsB hoc phIi bi8n dich chưKng trình ;Ai chz thJ uN\ đ9 li8n kng t?n t@i các 3h73 toán ABV ,+ DA!3.3. Các hàm s% h?c s@ !"n cho $i9 s% n#n &à s% th;c<SvRZw[F (rI ;. /D

    SvRTZw[F (rI ;. c1n bậc hai ca / '/≥5-ABSZw[F (rI ;. ‡/‡S6NZw[F (rI ;. sin'/- th?o radianC2SZw[F (rI ;. cos'/- th?o radianARCTANZw[F (rI ;. arctang'/- th?o radianLNZw[F (rI ;. ln'/-34PZw[F (rI ;. ?/

    TRNCZw[F (rI ;. sB ngu*8n gCn ;Ai / nh0t nhưng bq hKn /66NTZw-F (rI ;. phCn ngu*8n ca /;RACZw[F (rI ;. phCn thập phen ca /R2NEZw[F ^àm trn sB ngu*8n /PR3EZn[F (rI ;. giá trJ đLng trưAc nSCCZn[F (rI ;. giá trJ đLng sau n2EEZn[F Tho giá trJ (OQ nŠ-}ŠvŠ6w SCCZch[F cho kj t đLng sau kj t ch6 ]U d)F +TT'ŠvŠ-}Š>Š666. ]HA6 BÁ2 HlNGw yng là một đ#i lư@ng cV giá trJ không tha* đ=i trong suBt chưKng trình6w T phápF

    C2NSTTrn hyngV f G#á (zVd  hocF

    C2NSTTrn hyngVe f B#p, hIc hyngVd

    ]U d)FTN+( _a/ } 255\ Nam? } Š(ran ]an yungŠ\

  • 8/19/2019 Pascal Cơ Bản

    6/112

    Giáo trình bài tập Pascal

    Tontinu? } v^+Q\^ogic } GG'„-\ Y^ogic }(OQZ

    Ch= > F ChE các h+* chuFn 0ưới đâG *ới đư'c cho 3h73 s< 0Hng trong *It bi(u thJc hKng FABS CHR H6 L2 L3NGTH 2EE 2RE

    PTR R2NE PR3E SCC S6{32; SAP TRNC666. ]HA6 BÁ2 B6mNw >i

  • 8/19/2019 Pascal Cơ Bản

    7/112

    Giáo trình bài tập Pascal

    ^.1. C‚, '~nh ơn g#8nw CA lnh án -[R6T3LNdTác th t)c tr8n cV chLc n1ng như sauF

    '2- +au khi /u0t giá trJ ca các tham sB ra màn hình thì con trf không /uBng dng6'D- +au khi /u0t giá trJ ca các tham sB ra màn hình thì con trf /uBng đCu dng ti

  • 8/19/2019 Pascal Cơ Bản

    8/112

    Giáo trình bài tập Pascal

    • (h t)c CLRSCR F Roá màn hình ;à đưa con trf ;. gVc tr8n b8n trái màn hình6

    • (h t)c CLR32LF RVa các kj t t ;J trU con trf đN(F));Writel( " '*2);&eadl;

    Ed.>ài tập D6€F]i

  • 8/19/2019 Pascal Cơ Bản

    9/112

    Giáo trình bài tập Pascal

    a"; +a lấy giá trị của b4"tam; +b lấy lại giá trị của tam4Writel(a " 'a'’ " ‘');&eadl;

    Ed. b‹ hông đư@c phqp dHng biài tập D6•F]i F

    Tông thLc tUnh khoIng cáchF h }DD

    66

     V W

    C  G V ; W ii

    +

    ++

    >ài tập D64F ]i F

    $i / là sB thL hai thì sB thL nh0t làF 'nw/-6 (h?o đ. ta cVF P'/- } / D6'nw/-6yàm P đ#t cc đ#i khi P'/- } w€/D † Dn/ } 5  / } Dn‹€6

    >ài tập D6ƒF _àn hình đS h$a ca một má* tUnh cV độ phen giIiF …•5/•ƒ56 >i

  • 8/19/2019 Pascal Cơ Bản

    10/112

    Giáo trình bài tập Pascal

    a"K%*; "%L*;"a5;ritel(); readl;

    Ed.

    Program i/@ie2;Var a'Word;

    >ogIt;Begi

    a"K%*; "%L*;"a5;ritel(); readl;

    Ed.y* cho biiogIt;Begi

    a"K%*; "%L*;"a5 DIV $*;ritel(); readl;

    Ed.y* cho bi

  • 8/19/2019 Pascal Cơ Bản

    11/112

    Giáo trình bài tập Pascal

    Chương >CÁC Co LkNH C‡ Cˆ TR‰C

    6. Co LkNH RŠ NHÁNH1.1. L~nh 6; T phápF

    Z1[6; B TH3N SdZ7[6; B TH3N S1 3LS3 S7d

    Ch= > F -hi s< 0Hng câu lNnh BX thì đJng trước t% khoá SYZS kh>ng đư'c cL 0Ru chR* 3hFG O[61.7. L~nh CAS3 T phápF

    EXng 1 EXng 7CAS3 B 2;

    Cn0 1e S1dCn0 7e S7d...

    Cn0 ne Snd3NEd

    CAS3 B 2;Cn0 1e S1dCn0 7e S7d...

    Cn0 ne Snd3LS3 Sn\1d3NEd

    (rong đVF >F >i9u thLc ki9u ;ô hưAng đ

  • 8/19/2019 Pascal Cơ Bản

    12/112

    Giáo trình bài tập Pascal

    Ch= > F hi sX d)ng ceu lnh lp O cCn ch j các đi9m sauF -h>ng nên tu\ tiNn thaG đ]i giá tr) c^a bi.n đ.* bên trong ,_ng lM3 XDU ,ì l+* như ,4G cL th( 

     s& kh>ng ki(* soát đư'c bi.n đ.*! `iá tr) a; ,+ in trong câu lNnh XDU s& đư'c ;ác đ)nh ngaG khi ,+o đầu ,_ng lM3! Ao đL

    cho 0 trong ,_ng lM3 ta cL thaG đ]i giá tr) c^a nL thì s8 lần lM3 cng kh>ng thaG đ]i!5.3.2. On lp $hôn Dác /nh

    EXng R3P3AT EXng H6L3R"/

    Sdn#' Bd

    h#' B E Sd

    Ž ngh/F

    • Mn QRPRS* F ^p l#i công ;ic + cho đ}(OQ thì dng6

    • Mn TUV7R F (rong khi bi9u thLc >}(OQ thì ti

    ài tập €62F ]i

    \

    =

    Thá

    h#'

    B

    \

    =

    Thá+\

  • 8/19/2019 Pascal Cơ Bản

    13/112

    Giáo trình bài tập Pascal

    Uses ,rt;

    Var a-.-x : real;

    Begin

    Write('a & '); Readln(a);

    Write('. & '); Readln(.);

    ! a & hen Y Nài tập €6€F ]i

  • 8/19/2019 Pascal Cơ Bản

    14/112

    Giáo trình bài tập Pascal

    Mor i"$ to N do "i;Writel(et Oua la ');&eadl;

    Ed.

    Cách 2F GHng ;ng lp OQPQv(6Program ài tập €6„F ]i

  • 8/19/2019 Pascal Cơ Bản

    15/112

    Giáo trình bài tập Pascal

    Var N''i' Iteger;Begi

    Clr7r; "*;Mor i"$

  • 8/19/2019 Pascal Cơ Bản

    16/112

    Giáo trình bài tập Pascal

    BegiPi"Pi5t;"J; i"i$;t"%(25i$);

    Ed;Writel(o Pi " 'Pi*%);&eadl;

    Ed.>ài tập €6ƒF]i

  • 8/19/2019 Pascal Cơ Bản

    17/112

    Giáo trình bài tập Pascal

    ng ;Ai mi bộ abc, ta sŒ ki9m traF N

  • 8/19/2019 Pascal Cơ Bản

    18/112

    Giáo trình bài tập Pascal

    >ài tập €62€F ]iài tập €624F ]i

  • 8/19/2019 Pascal Cơ Bản

    19/112

  • 8/19/2019 Pascal Cơ Bản

    20/112

    Giáo trình bài tập Pascal

    Chương FCHƠNG TRÌNH C2Ne THỦ T‘C DÀ HÀ

    6. ]HÁ6 N6k D’ CHƠNG TRÌNH C2NThưKng trình con 'T(T- là một đo#n chưKng trình thc hin tr$n ;n ha* một chLc n1ng nào đV6

    (rong (urbo Pascal, cV D d#ng T(TF• (h t)c 'POTQGOQ-F GHng đ9 thc hin một ha* nhi.u nhim ;) nào đV6

    • yàm 'NT(xN-F (rI ;. một giá trJ nào đV 'cV ki9u ;ô hưAng, ki9u string hoc ki9u contrf-6 yàm cV th9 sX d)ng trong các bi9u thLc6

     Ngoài ra, trong Pascal cn cho phqp các T(T lSng ;ào nhau666. Cˆ TR‰C CHNG CỦA “T CHƠNG TRÌNH C‡ S” E‘NG CTCPOOv_ (8n[chưKng[trình\+Q+ TO(\TN+( 666666666666\(PQ 666666666666\]vO 666666666666\POTQGOQ (y(T'Tác tham sB-Ž\hai báo Tonst, (*p?, ]arŽ>QxN

    66666666666666QNG\NT(xN yv_'Tác tham sB-ŽFi9u dữ liu‚\hai báo Tonst, (*p?, ]arŽ>QxN

    66666666666666yv_F}iá trJ‚\QNG\

    >QxN YThưKng trình chUnhZ6666666666666666666(y(T'666-Ž\6666666666666666666vF} yv_'666-Ž\6666666666666666666

    QNG6Ch= > F (rong uá trình /e* dng T(T, khi nào thì n8n dHng th t)c‹hàm‘EMng h_9 EMng h …c

    w

  • 8/19/2019 Pascal Cơ Bản

    21/112

    Giáo trình bài tập Pascal

    Var P' iWord;Begi

    P"$;Mor i"$

  • 8/19/2019 Pascal Cơ Bản

    22/112

    Giáo trình bài tập Pascal

    F.7. Phương "há" h#% &% g#8# h,! ~ „,#• (ham sB hVa bài toán

    • (ìm trư!ng h@p su* bi, do đV bộ nà* đư@c thu nhận6w N

  • 8/19/2019 Pascal Cơ Bản

    23/112

    Giáo trình bài tập Pascal

    Var =rra?$..2*f R *..$; +D? /\ /h 7 0c d9i tXi 0a l9 2*4B?te;

    Pro7edure Ietua;Var iB?te;

    BegiMor i"$

  • 8/19/2019 Pascal Cơ Bản

    24/112

    Giáo trình bài tập Pascal

    Begi.............

    Ed;END.

    Ch= > F• (8n ca nit phIi trHng ;Ai t8n Eil?6

    • Thz cV những chưKng trình con đư@c khai báo ` phCn xN(QOvTQ mAi sX d)ng đư@c ` các

    chưKng trình khác6

    • Tác th t)c ;à hàm đư@c khai báo ` phCn xN(QOvTQ thì bt buộc phIi cV trong phCn

    x_P^Q_QN(v(xN6.7. D … 9#nh h–/

    (#o nit _(^ lưu ` Eil? _(^6Pv+6

    :NI< Sn;INN(a'Iteger)Iteger;Begi

    W/ile aQ DoBegi

    IR a N"a;Ed;Mu7tio NG:nEN

  • 8/19/2019 Pascal Cơ Bản

    25/112

    Giáo trình bài tập Pascal

    >e* gi!, ta cV th9 ;i&C&;Write($*'T'’CH:NG N 7ua ‘'a'’ @a ‘''’ la’':C>N(a'));Write(‘N/a m " ‘); &eadl(m);IR NG:nENài tập •62F ]i

  • 8/19/2019 Pascal Cơ Bản

    26/112

    Giáo trình bài tập Pascal

    BegiWrite(‘N/a -p tu 7/"’); &eadl(7/);Writel(‘? tu /oa la ‘' >WC=E(7/));&eadl;

    Ed.>ài tập •6€F ]iài tập •6„F ]i

  • 8/19/2019 Pascal Cơ Bản

    27/112

    Giáo trình bài tập Pascal

    :e 7rt;Pro7edure /ug(F$'?$'F2'?2Iteger);Var i'_Iteger;Begi  GotoF?(F$'?$); Write(q2$L); +V 4  GotoF?(F$'?2); Write(q$U2); +V 4 +V 2 @is gag 7ja -/ug4  Mor i"F$$

  • 8/19/2019 Pascal Cơ Bản

    28/112

    Giáo trình bài tập Pascal

    &eadl;Ed.BÀ6 TẬP Ti G6Ả6>ài tập •64F ]iài tập •6ƒF ]iài tập •63F ]iài tập •622F ^ập hàm đ ui đ9 tUnh d* ibonaciF

    'n- }  1 1 2

    1 2 2

    ,

    ( ) ( ) ,

    n n

    F n F n n

    = ∨ =− + − >

    >ài tập •62DF ]iài tập •62€F ]iài tập •62•F ]iài tập •62„F Re* dng một nit +yT6Pv+ chLa các th t)c ;à hàm thc hin các chLc n1ng sauFw iIi phưKng trình bc nh0t6w iIi phưKng trình bc hai6

    w (ìm _a/‹_in ca D sB a,b6w (ìm +T^N ;à >+TNN ca D sB ngu*8n a,b6w i9m tra sB ngu*8n dưKng n cV phIi là sB ngu*8n tB ha* không‘w i9m tra sB ngu*8n dưKng n cV phIi là sB hoàn thin ha* không‘w "=i một sB ngu*8n dưKng n sang d#ng nhJ phen6

    w xn ra màn hình bIng cữu chưKng t D → 36

    +au đV, t ;i

  • 8/19/2019 Pascal Cơ Bản

    29/112

    Giáo trình bài tập Pascal

    Chương EỮ L6k ]6j ẢNG ZARRA[

    6. ]HA6 BÁ2 ẢNGT phápF

    TP3 ]#p, 98ngV f ARRA |ch— 0} 2; ]#p, a '#~,VdDAR B#%n 98ngVe]#p, 98ngVd

    hoc khai báo trc ti

  • 8/19/2019 Pascal Cơ Bản

    30/112

    Giáo trình bài tập Pascal

    +I -t Ou ra m9 /8/4Writel(‘P/a tu lo /at 7ua mag ’' SaF);&eadl;

    Ed.

    >ài tập „6DF]i

  • 8/19/2019 Pascal Cơ Bản

    31/112

    Giáo trình bài tập Pascal

    +y F4Mor i"$

  • 8/19/2019 Pascal Cơ Bản

    32/112

    Giáo trình bài tập Pascal

    >ài tập „6„F iI sX mIng v đ đư@c sp /

  • 8/19/2019 Pascal Cơ Bản

    33/112

    Giáo trình bài tập Pascal

    Mor i"$

  • 8/19/2019 Pascal Cơ Bản

    34/112

    Giáo trình bài tập Pascal

    SaF"=i'$f;Mor _"2

  • 8/19/2019 Pascal Cơ Bản

    35/112

    Giáo trình bài tập Pascal

    tam"tam5F;"aif5tam;

    Ed;R";

    Ed;

    Pro7edure c

    D 4 … € 2… 3 DD 2„3 „ 2 D5 ƒ D2 2• D• € ƒ (e* 4 D„ 2€ 2 23 "ông

    D• 2D „ 2ƒ …22 • 24 25 D€

     Nam

     Ph^n phápFRu0t phát t ô b8n phIi ca ô nm giữa6 "i th?o hướn ôn b`c đ9 đi.n các sB 2, D, 666hi đi.n sB, cCn ch j một sB ngu*8n tc sauF

    w N

  • 8/19/2019 Pascal Cơ Bản

    36/112

    Giáo trình bài tập Pascal

    Clr7r; +\/ @\ ~ Fu`t /,t4  i" DIV 2 $;  _" DIV 2 2; +is 7,7 X - t| $ 0 54  Mor -"$ ài tập „625F ]i đ#i din cho D tập h@p 'không th9cV D phCn tX trHng nhau trong một tập h@p-6 (rong uá trình nhập, phIi ki9m traF n6J tưKn F

    Gu*t ua t0t cI các phCn tX a i∈v6 N thì ;i

  • 8/19/2019 Pascal Cơ Bản

    37/112

    Giáo trình bài tập Pascal

    &eeat  Write(F"); &eadl(F);  IR ot iem

  • 8/19/2019 Pascal Cơ Bản

    38/112

    Giáo trình bài tập Pascal

    IR SaF

  • 8/19/2019 Pascal Cơ Bản

    39/112

    Giáo trình bài tập Pascal

    BÀ6 TẬP Ti G6Ả6>ài tập „62€F Nhập ;ào một mIng các sB ngu*8n6

    a‹ R

    ;à k là chz sB cho mIng T6w (rong khi 'i}m- ;à '˜}n- thìF

    Y(Lc là khi đSng th!i cI D d* v, > đ.u chưa du*t h˜Ž\ ˜F}˜†2\

    w N FTông thLc tUnh t=ng D ma trậnF C#™ f A#™ \ B#™

    Tông thLc tUnh tUch D ma trậnF C#™ f ∑=

    n

    kik    V W2

    |

    >ài tập „62…F ]iài tập „624F ]i

  • 8/19/2019 Pascal Cơ Bản

    40/112

    Giáo trình bài tập Pascal

    Chương ̂4o ]Ž Ti ZSTR6NG[

    6. ]HA6 BÁ2 ]6j STR6NGTP3 Trn]#p, f STR6NG|/w}d

    DAR Trn -#%n e Trn]#p,dhoc khai báo biài tập …62F ]i

  • 8/19/2019 Pascal Cơ Bản

    41/112

    Giáo trình bài tập Pascal

    BegiWrite(‘N/a Fau t ‘); &eadl(t);Mor i"$ to legt/(t) do tif":7ae(tif);Write(‘au -et Oua ‘' t);

    &eadl;Ed.>ài tập …6DF ]iegt/(t)f"q#2 Do Delete(t'>egt/(t)'$);+a 7,7 -p t€ tryg gi‚a Fhu4W/ile P(q#2q#2't)Q* Do Delete(t'P(q#2q#2't)'$);

    Ed;Begi

    Write(‘N/a Fau t ‘); &eadl(t);•2

  • 8/19/2019 Pascal Cơ Bản

    42/112

    Giáo trình bài tập Pascal

    oaegt/(t)'$);

    +a 7,7 -p t€ tryg gi‚a Fhu4W/ile P(q#2q#2't)Q* Do Delete(t'P(q#2q#2't)'$);

    Ed;Begi

    Write(‘N/a Fau t ‘); &eadl(t);oa

  • 8/19/2019 Pascal Cơ Bản

    43/112

    Giáo trình bài tập Pascal

    +Gii t/ut 06 Oui4Mu7tio Deui(ttrig)trig;Begi

    IR >egt/(t)Q"$ egt/(t)f Deui(Co?(t'$'>egt/(t)J$));Ed;Begi

    Write(‘N/a Fau t ‘); &eadl(t);Write(‘au dao guo7 ‘' auDao(t));&eadl;

    Ed.>ài tập …64F ]i

  • 8/19/2019 Pascal Cơ Bản

    44/112

    Giáo trình bài tập Pascal

    W/ile (iQ">egt/(t)) =ND (Not ) DoIR tif IN ‘*’..’U’f

  • 8/19/2019 Pascal Cơ Bản

    45/112

    Giáo trình bài tập Pascal

    Writel(au au -/i giai ma 't); &eadl;Ed.>ài tập …625F ]iegt/(t2) amDa?au(t$'t2);  +>`? t|g X 7ja 2 Fhu t| /i ag tr,i4

    Mor i">egt/(t$) Do

  • 8/19/2019 Pascal Cơ Bản

    46/112

    Giáo trình bài tập Pascal

    &eadl;Ed.BÀ6 TẬP Ti G6Ả6>ài tập …622F ]i F(ách tng t đ9 so sánh '/?m bài tập „-6

    >ài tập …62DF ]i F

    w Nài tập …62•F ]i F(ách tng t nBi ;ào đCu /eu mAi '/?m bài tập „-6

    >ài tập …62„F ]iài tập …62ƒF ]i>>TGGGGGGGQQ sau khi nqn sŒ tr` thành •v€>T4GDQ6>ài tập …623F ]i

  • 8/19/2019 Pascal Cơ Bản

    47/112

    Giáo trình bài tập Pascal

    Chương ]6j BẢN GH6 ZR3C2RE[

    6. ]HA6 BÁ2 Ež L6k ]6j R3C2RE

    TP3 Trn]#p, f R3C2RE;#'1 e ]#p,1d;#'7 e ]#p,7d...;#'Ne ]#p,Nd

    3NEdDAR B#%n e Trn]#p,d]U d)F(PQ yoc+inh } O?cord

    yot?n F +tringD5Ž\

      (uoi F xnt?g?r\Gi?m(> F r?al\

    Qnd\]vO y+ F yoc+inh\66. 4ˆT NHẬP EỮ L6k ]6j R3C2RE

     hôn th9 !Nn các th t"c DtnhậpW các ph:p toán so sánh %i &ới các biHn $i9 rZcor! màchd c, th9 s@ !"n thôn Fa t+n tr8n ca biHn rZcor! ,.

    7.1. T(,q nh!" (Qc #%"e TênbiếnRecord.Field

    7.7. SŸ …ng c‚, '~nh 6THWITH TênbiếnRecord DO

    BEI!"# l$ Field%&"# l$ Field'&..."# l$ Field!&

    E!D&7.>. Gán -#%n Rc(F (a cV th9 gán D biài tập 462F ]i

  • 8/19/2019 Pascal Cơ Bản

    48/112

    Giáo trình bài tập Pascal

    Write(‘P/a ao " ‘); &eadl(7$.);  Writel(‘N/a o /u7 72’);

    Write(‘P/a t/u7 a " ‘); &eadl(72.a);Write(‘P/a ao " ‘); &eadl(72.);

      +

  • 8/19/2019 Pascal Cơ Bản

    49/112

    Giáo trình bài tập Pascal

    Write(Diem 7o o ); &eadl(DiemC);  Write(Diem 7/u?e ga/ ); &eadl(DiemCN);  Ed;  Writel(N/a /im at -? de /a tieN/a QEC de -et t/u7!);  7/"&ead-e?;  :til 7/"q2;Ed;Pro7edure IDa/a7/;Var 7/C/ar;  iB?te;Begi  Clr7r;  Writel(DIES

  • 8/19/2019 Pascal Cơ Bản

    50/112

    Giáo trình bài tập Pascal

    Clr7r;  Writel(CH:NG n DIES

  • 8/19/2019 Pascal Cơ Bản

    51/112

    Giáo trình bài tập Pascal

    Begi  "*;  Ror i" $ to do  egi  iR i" t/e _"$ ele _"i$;  "((Pif.F5P_f.?JP_f.F5Pif.?));  ed;  Die

  • 8/19/2019 Pascal Cơ Bản

    52/112

  • 8/19/2019 Pascal Cơ Bản

    53/112

    Giáo trình bài tập Pascal

    Chương OEỮ L6k ]6j ;6L3

    6. ]HA6 BÁ2(*p? (8n ki9u il?‚ } ;#'   i9u phCn tX‚\]ar (8n bi*t?\

    Qnd\]ar E,gF +anPham\

    hoc khai báo trc ti

  • 8/19/2019 Pascal Cơ Bản

    54/112

  • 8/19/2019 Pascal Cơ Bản

    55/112

    Giáo trình bài tập Pascal

    T phápF A""nZ;[dThLc n1ngF _` Eil? đ tSn t#i đ9 b= sung nội dung ;ào cuBi Eil?6

    3.2.2. *h t"c QZa!lnT phápF R/'nZ;bw[dThLc n1ngF "$c một dng t ;J trU con trf Eil? ;à gán cho bi?gin  OQvG'E,/-\  666  Qnd\666T^+Q'E-\

    6D. ;6L3 ]HÔNG •€NH ]6j Z;6L3 DẬT LŽ[F.1. ]há# n#~9

    il? không đJnh ki9u là Eil? không /ác đJnh ki9u ca mi thành phCn trong Eil?, mà đư@c hi9u làmột d* b*t?, mi phCn tX cV kUch thưAc k b*t?, u* đJnh b`i ngư!i lập trình6 il? không đJnh ki9utưKng h@p ;Ai m$i ki9u Eil?6

    F.7. ]h/# -á]ar  Trn -#%n ;#'Ve ;#'d

    „„

  • 8/19/2019 Pascal Cơ Bản

    56/112

    Giáo trình bài tập Pascal

    F.>. Các h …c *_ h_9 cƒ hp h/ ác (rn #' &h`ng #nh p,6.3.1. fK eilZ

     # eil1 chưa cL trên đfaF RY(#Z;b &[d # eil1 đ cL trên đfaF R0Z;b &[diá trJ k mô tI sB lư@ng b*t? sŒ đư@c đ$c ghi trong một thao tác6 Uch thưAc ca Eil? phIi là bội

    sB ca k6F.>.7. 4,?t nh!" a '#~,

    T phápF B'c&R/Z;b wb n |b]„}[dB'c&(#Z;b wb n |b]„}[d

    ThLc n1ngFw "$c‹ hi n šbIn ghi›6 _i šbIn ghi› đư@c hi9u là một phCn tX k b*t?6w / chLa nội dung đ$c‹ghiw là sB lưKng›bIn ghi› đư@c thc hin6

    Ch@ xeil? không đJnh ki9u thư!ng đư@c dHng trong các thao tác sao chqp ;Ai tBc độ cao6

    BÁ6 TẬP †>ài tập ƒ62F (#o một Eil? +xNy]xQN6Gv( đ9 lưu thông tin ca một lAp sinh ;i8n6 _i sinh ;i8n cCnnhững thông tin sauF y$ t8n, Ngà* sinh, –u8 uán, "i9m trung bình, R

  • 8/19/2019 Pascal Cơ Bản

    57/112

    Giáo trình bài tập Pascal

    @./ote" B/ote;  rite(Nga? i/ (ddmm????) );  readl(@.ga?i/);  rite(ueOua );  readl(@.OueOua);  rite(Diem trug i/ );  readl(@.diemt);  iR @.diemtQT t/e  @.Feloai"D  ele  iR @.diemtQK.T t/e  @.Feloai"C  ele  iR @.diemtQL t/e  @.Feloai"B

      ele  @.Feloai"=;  rite(R'@);  ed;  i7(i);  util B/ote " ;  7loe(R);ed.>ài tập ƒ6DF xn toàn bộ nội dung ca Eil? +xNy]xQN6Gv( ra màn hình, n

  • 8/19/2019 Pascal Cơ Bản

    58/112

    Giáo trình bài tập Pascal

    ritel(q#2$*' D=NH =CH INH VIEN);  ritel(q#2K'H

  • 8/19/2019 Pascal Cơ Bản

    59/112

    Giáo trình bài tập Pascal

    ed;  ed;

    7loe(R);ritel(Da/ a7/ a? gom '' i/ @ie);

      readl;ed.>ài tập ƒ6•F (hông tin ;. đi9m ca sinh ;i8n cV h$ t8n là >hot?n, ngà* sinh là >nga* ;à u8 uán là>u?uan bJ sai lch6 y* sữa đi9m ;à /

  • 8/19/2019 Pascal Cơ Bản

    60/112

    Giáo trình bài tập Pascal

    Feloai"D  ele  iR diemt QK.T t/e  Feloai"C  ele  iR diemt QL t/e  Feloai"B  ele  Feloai"=;  "Rileo(R);  ee-(R'J$);  rite(R'@);  eFit;  ed;  ed;

    Cloe(R);readl;Ed.>ài tập ƒ6„F xn ra màn hình toàn bộ nội dung ca một Eil? ;1n bIn, t8n Eil? đư@c đư@c nhập t bàn

     phUm khi thc hin chưKng trình6Program ViduAT;Var 

    R ài tập ƒ6…F "

  • 8/19/2019 Pascal Cơ Bản

    61/112

    Giáo trình bài tập Pascal

    Rileame't trig;N>ie'Ntr ord;i ?te;

    Begirite(‘N/a te Rile ‘);readl(Rileame);aig(R'Rileame);reaet(R);NBl"*;Ntr"*;/ile ot EoR(R) do

    egireadl(R't);i7(Ntr);Ror i" $ to legt/(t) do

    iR tif " q#2 t/ei7(NBl);ed;

    Cloe(R);ritel(‘o dog ‘'Ntr);

    ritel(‘o -? tu trag ‘' NBl)readl;

    Ed.>ài tập ƒ64F +ao chqp nội dung ca Eil? +xNy]xQN6Gv( ;ào Eil? ;1n bIn +xNy]xQN6(R( sao chomi sinh ;i8n lưu trong một dng6Program ViduA;

  • 8/19/2019 Pascal Cơ Bản

    62/112

    Giáo trình bài tập Pascal

    ed;rerite(g);/ile ot EoR(R) do

    egiread(R' @);it/ @ do

    egitr(diemt'diemT2);

      t" /oteq#2ga?i/q#2OueOuaq#2Bdiem;ritel(g't);

    ed;ed;

    Cloe(R);Cloe(g);readl;

    Ed.>ài tập ƒ6ƒF _ột ma trận m/n sB thc đư@c chLa trong một Eil? ;1n bIn cV t8n _(6xNP gSmF dngđCu chLa hai sB m, n\ m dng ti

  • 8/19/2019 Pascal Cơ Bản

    63/112

    Giáo trình bài tập Pascal

    Ror i" $ to m dorite(g'if*2'q#2);

    7loe(g);Ed.Ch= > F

    • ThưKng trình tr8n không ki9m tra s tSn t#i ca Eil? _(6xNP, n } 'b ˜k -n/p, T } 'ckl- p/, đư@c chLa trong Eil?_v(OxR6xNP gSmF dng đCu chLa • sB m, n, p, 6 m†n†p dng ti

    ;à p hàng ma trận T6 ]i/T rSi ghi l8n Eil? ;1n bIn cV t8n _v(OxR6( trong đVF Gng đCu chLam, \ m dng ti

  • 8/19/2019 Pascal Cơ Bản

    64/112

    Giáo trình bài tập Pascal

    Ror _" $ to do  Ror -"$ to do

    Di'lf " Di'lf =i'_f5B_'-f5C-'lf;rite(g'Di'lf' q#2);

    ed;ritel(g);

    ed;7loe(g);readl;

    Ed.Chú ýF Tông thLc tUnh giá trJ ca các phCn tX ma trận G } 'd il-m/ như sauF>ài tập ƒ625F _ột ma trận m/n sB thc đư@c chLa trong một Eil? ;1n bIn cV t8n G^xQ6xNP gSmFdng đCu chLa hai sB m, n\ m dng ti

  • 8/19/2019 Pascal Cơ Bản

    65/112

    Giáo trình bài tập Pascal

    G

  • 8/19/2019 Pascal Cơ Bản

    66/112

    Giáo trình bài tập Pascal

    NoAread" uRiˆeele

    NoAread" ài tập ƒ62„F ]iài tập ƒ62ƒF (#i một cXa hàng, ngư!i ta uIn lj các ho#t động _v‹>œN trong n1m bng cHngmột lo#i hoá đKn6 _i hoá đKn là một bIn ghi gSm các trư!ngF

    +oyoadon 'sB hoá đKn-\ (hang 'tháng mua‹bán-\ _ahang 'm hàng mua‹bán-\ ^oai 'nhậnmột trong hai giá trJ _'mua- hoc > 'bán-

     Như ;ậ* c1n cL ;ào trư!ng ^oai ta bi

  • 8/19/2019 Pascal Cơ Bản

    67/112

    Giáo trình bài tập Pascal

    ]ar EF Eil? oE hoadon\

    >ài tập ƒ623F Ngư!i ta uIn lj các đCu sách ca một thư ;in bng một bIn ghi gSm cV các trư!ngF_asach, (?nsach, (?ntacgia, Nha/b 'nhà /u0t bIn-, Nam/b 'n1m /u0t bIn-, +o^uong6 ]i6Gv( ;ào Eil? ;1n bIn TvN>6(R(, mi cán bộ tưKngLng một dng6

      ướng 0nF hai báo mi cán bộ là một bIn ghi như sau(*p?

    +t25 } +tring25Ž\+tD5 } +tringD5Ž\Tanbo } O?cord

    yot?n, GiachiF +tD5, Nga*sinhF +t25\ Ydd‹mm‹****Zy+luong, y+PhucapF r?al\

    …4

  • 8/19/2019 Pascal Cơ Bản

    68/112

    Giáo trình bài tập Pascal

    +oG(F +t25\ Y+B đin tho#i Z?nd\

    ]ar EF Eil? oE Tanbo\

    • hi nhập ngà* sinh phIi ki9m tra đJnh d#ng th?o *8u cCuF dd‹mm‹****• (u=i ca một cán bộ đư@c tUnh bng n1m hin t#i tr cho n1m sinh6 N1m sinh l0* t • kj t cuBi

    cHng ca ngà* sinh ;à chu*9n sang d#ng sB6>ài tập ƒ6D2F ]iv6(R( ;à lưu ;ào mIng v

    'mIng các _vG(- ;Ai k là sB phCn tX ca mIng6• (hi

  • 8/19/2019 Pascal Cơ Bản

    69/112

    Giáo trình bài tập Pascal

    ThưKng 3EỮ L6k ]6j C2N TR¥

    6. ]HA6 BÁ2  (*p?  (8n ki9u con trf‚ } i9u ca bi

  • 8/19/2019 Pascal Cơ Bản

    70/112

    Giáo trình bài tập Pascal

    cập đ= sung ;ào đCu danh sáchZ

     p6N?/tF}irst\

    irstF}p\

    3.3.3. B] sn mqt n=t &ào c%i !anh sách 

    Ru0t phát danh sách không cV nt nào cI6 Nt mAi th8m ;ào sŒ nm cuBi danh sách6 hi đV ta cCn

    hai bi?gin N?Ÿ'p-\O?adln'p6xnEo-\

     p6N?/tF} Nil\

    xE irst } Nil th?nirstF} pQls?

    45

  • 8/19/2019 Pascal Cơ Bản

    71/112

    Giáo trình bài tập Pascal

    ^ast6n?/tF} p\^astF} p\

    Qnd\Qnd\3.3.6. t !anh sách

    Gu*t danh sách là th1m ;à /X lj tng nt trong danh sách6Proc?dur? Gu*?t\]ar pF (ronut\>?gin pF} irst\Whil? p ‚ nil do

    >?ginRX lj p‚\

     pF} p6N?/t\ Ydu*t ua nt ti

    osung'p,/-\]ar F (roNut\>?gin

     N?Ÿ'-\6inEoF}/\iE Eirst } nil th?n

     b?gin6n?/t F} nil\

    Eirst F} \?nd?ls?

     b?gin6n?/tF} p6n?/t\

     p6n?/tF} \?nd\

    Qnd\3.3.). oá mqt n=t $hXi !anh sách(h t)c sau thc hin ;ic /Va một nt trf b`i p ra khfi danh sách6

    Proc?dur? Roa'p-\

    ]ar F (roNut\>?gin

    iE irst } nil th?n?/it\

    iE p } irst th?nirst F} irst6n?/t

    ?ls? b?gin

    F} irst\Whil? 6n?/t ‚ p do

    F} 6n?/t\6n?/tF} p6n?/t\

    ?nd\

    42

  • 8/19/2019 Pascal Cơ Bản

    72/112

  • 8/19/2019 Pascal Cơ Bản

    73/112

    Giáo trình bài tập Pascal

    util ot -O;ed;

    Pro7edure IAoAduog;Var 

    ài tập 36€F iI sX d* giá trJ các nt trong danh sách đ đư@c sp t1ng dCn6 ]i

  • 8/19/2019 Pascal Cơ Bản

    74/112

    Giáo trình bài tập Pascal

    Var 'O

  • 8/19/2019 Pascal Cơ Bản

    75/112

    Giáo trình bài tập Pascal

    egi" Rirt;/ile ( Q il) ad (Š.Giatri Q *) do

    egiO" ;" Š.ài tập 36•F iI sX danh sách khác rng6 ]i

  • 8/19/2019 Pascal Cơ Bản

    76/112

    Giáo trình bài tập Pascal

    O" Š.

  • 8/19/2019 Pascal Cơ Bản

    77/112

    Giáo trình bài tập Pascal

    ear7/" ;Ed;

    -. P(c,( E'¨]ZD/( ;#(0e T(N,d &e Y([  thc hin ;ic /oá nt thL k trong danhsách 'nit;@ar 

    ài tập 36…F Tho Eil? ;1n bIn cV t8n NQN6xNP lưu các sB ngu*8n, giữa các sB trong Eil? cáchnhau một kj t trng hoc d0u /uBng dng6 ]i

  • 8/19/2019 Pascal Cơ Bản

    78/112

    Giáo trình bài tập Pascal

    eFt Cotro;ed;

    @ar Rirt Cotro;

    Pro7edure >a?AduAlieu;@ar 

    Cotro;o iteger;R teFt;

    Begiaig(R' ‘NG:nEN.INP’);reet(R);Rirt" il;/ile ot EoR(R) do

    egi

    read(R' o);e();Š.iRo" o;Š.eFt" Rirt;Rirt" ;

    ed;7loe(R);

    Ed;Pro7edure

  • 8/19/2019 Pascal Cơ Bản

    79/112

    Giáo trình bài tập Pascal

    ed;" Š.eFt;

    ed;ritel(R' ma chưa cV trong danh sách mAi b= sung-6

    Pro7edure BougBN(@ar Mirt

  • 8/19/2019 Pascal Cơ Bản

    80/112

    Giáo trình bài tập Pascal

    OŠ.tie" ;ed;

    -. P(c,( ]h#T/ZD/( ;#(0e T(BN[ nhập dữ liu cho danh sách cV nt đCu trf b`i irst, uátrình nhập dng khi m bnh nhen đưa ;ào là /eu rng '8u cCu sX d)ng th t)c >o+ung>N-6

    Pro7edure /oihoa6Mu7tio oBN(Mirt

  • 8/19/2019 Pascal Cơ Bản

    81/112

    Giáo trình bài tập Pascal

    /ile Q il doegi

    it/ doiR tuoi Q" t/e

    ritel(ma' q#2'/ote' q#2' tuoi);" Š.tie;

    ed;Ed;

    . P(c,( 4/BNZD/( ;#(0e T(BNd B9/e S[ /oá bnh nhen cV m >ma khfi danh sách6Pro7edure oaBN(Var Mirt

  • 8/19/2019 Pascal Cơ Bản

    82/112

    Giáo trình bài tập Pascal

    -. ;,nc#n ETh,Z;#(0e T(ELd T'e S^[e Lng6n trI ;. doanh thu ca đ#i lj cV sB đin tho#i là(?l, n

  • 8/19/2019 Pascal Cơ Bản

    83/112

    Giáo trình bài tập Pascal

    . P(c,( 4/ELZD/( ;#(0e T(ELd T'e S^[ /Va đ#i lj cV sB đin tho#i (?l ra khfi danhsách6

    Pro7edure oaD>(Var Mirt ;

  • 8/19/2019 Pascal Cơ Bản

    84/112

    Giáo trình bài tập Pascal

    D6 ]i

  • 8/19/2019 Pascal Cơ Bản

    85/112

    Giáo trình bài tập Pascal

    ;à sB lư@ng b= sung là n th?o *8u cCuF Nma đ cV trong thư ;inthì chz t1ng sB lư@ng l8n n, ngư@c l#i th8m một đCu sách mAi ;ào thư ;in ;Ai sB lư@ng n;à bIo toàn thL t ca m sách6

    -. ]i(giaF +tD5- trI ;. sB đCu sách ca tácgiI >(gia6

    . ]imaF +t€\ >don;iF +t25\ nF Ÿord-\

    l0* ra khfi kho n bdon;i lo#i ;ật tư cV m là >ma th?o *8u cCu sauF

    •  Nma không cV trong kho thì thông báo kho không cV lo#i ;et tư nà*;à kdon;i cV trHng ;Ai G](inh ca lo#i ;ật tư nà* không, nmaF+t€-\ trI ;. sB lư@ng ;ật tư cV m là>ma cn tSn trong kho, n

  • 8/19/2019 Pascal Cơ Bản

    86/112

    Giáo trình bài tập Pascal

    Chương 1W•© HªA

    6. ÀN HÌNH TR2NG CHm •“ •© HªA Z GRAPH6C[yình Inh trong ch< độ đS h$a đư@c t#o ra bng các đi9m Inh 'Pi/?l-, sB đi9m Inh ca màn hình

    đS h$a tH* thuộc ;ào tng lo#i TvOG màn hình ;à _GQ ui đJnh cho màn hình đV6]ic lập trình trong ch< độ đS h$a cCn phIi /ác đJnh đư@c lo#i màn hình đang sX d)ng ;à chưKng

    trình phIi ;ận hành đư@c tr8n nhi.u lo#i màn hình khác nhau6($a độ ca một đi9m Inh tr8n màn hình đS h$a c—ng giBng như trong ch< độ ;1n bIn '(QR(- ;Ai

    đi9m Inh đCu ti8n tr8n gVc trái màn hình là '5,5-, t$a độ đznh dưAi phIi tH* thuộc ;ào độ phen giIica màn hình, TvOG màn hình ;à _GQ màn hình6  '5,5-

    '_a/R,_a/-"9 dX d)ng đư@c ch< độ đS h$a tr8n màn hình, ta cCn phIi cV các il? sauF

    OvPy6(P ThLa các lnh đS h$a| 6>x ThLa ont màn hình| 6TyO ThLa ont kj tư

    66. ]H«6 T2 DÀ TH2ÁT ]H¥6 CHm •“ •© HªA7.1. ]hU# X ch% : ¬ h–/

    (h t)c 6N6TGRAPH'd,mFxnt?g?r\ PathF+tring-\

    trong đVFw dF Thz TvOG màn hình6(hông thư!ng, một chưKng trình phIi đư@c ch#* tr8n nhi.u lo#i màn hình khác nhau n8n ta cV th9

    khai báoFd } G?t?ct ' } 5 -

    ]Ai hng G?t?ct, má* sŒ t động tìm TvOG màn hình tưKng Lng đ9 ch#* chưKng trình6w mF Thz _GQ màn hình6(rong trư!ng h@p khai báo d } G?t?ct thì không cCn thi

  • 8/19/2019 Pascal Cơ Bản

    87/112

    Giáo trình bài tập Pascal

    Dete7tGra/(Gd'Gm);  IitGra/(gd'gm'C‹.1. H_9 G/w4e6ng(d

    Tho t$a độ cột lAn nh0t ca màn hình6>.7. H_9 G/we6ng(d

    Tho t$a độ dng lAn nh0t ca màn hình6>.>. Th …c 2D3T2Zwbqe6ng([d

    ƒ4

  • 8/19/2019 Pascal Cơ Bản

    88/112

    Giáo trình bài tập Pascal

    Gi chu*9n con trf t ;J trU đang đLng đ.^. L?q 9_, c/ 9: #p9 X# –/ : wbqeyàm Q(PxRQ^'/,*Fxnt?g?r-FWord\

    6D. •‹T À TR˜N ÀN HÌNH •© HªAF.1. • 9_, ch # ưsng c$n *

    GHng th t)c +Q(T^O'TolorF>*t?-\F.7. • 9_, nœn

    GHng th t)c +Q(>T^O'TolorF>*t?-\D. C”A S® TR2NG CHm •“ •© HªA.1. • cŸ/ 0¯ (rn 9_n h)nh

    (h t)c +Q(]xQWPO('/2,*2,/D,*DFxnt?g?r\ TlipF>ool?an-\]Ai /2,*2F đznh tr8n trái ca cXa s=6  /D,*DF đznh dưAi phIi ca cXa s=6  Tlip } (OQF những gì ;ư@t khfi màn hình sŒ bJ ct bf6  Tlip } v^+QF những gì ;ư@t khfi màn hình sŒ không bJ ct bf6| hi t#o cXa s= thì t$a độ tr8n màn hình sŒ tha* đ=i th?o6

    ($a độ mAi } ($a độ c— w ($a độ đznh tr8n trái6.7. 4ƒ/ h)nh 8nh (ng cŸ/ 0¯

    w RVa hình Inh trong cXa s=, ta dHng th t)c T^QvO]xQWPO(\w RVa toàn bộ màn hình, ta dHng th t)c T^QvOGQ]xTQ\

    D6. D6mT CHỮ TR2NG CHm •“ •© HªA

    ^.1. Ch–n ;n cha (a dHng th t)c +Q((QR(+(^Q'Eont,Gir,si£?FWord-\w Tác Eont cV th9 chLa các hng sauF

    G?Eaultont } 5\ (ripl?/ont } 2\ +mallont } D\+ans+?riEont } €\ othicont } •\

    w Gir cV các hng sauFyori£Gir } 5 ( trái ua phIi6]?tGir } 2 ( dưAi l8n tr8n6

    w +i£?F độ lAn ca chữ6^.7. Ch–n "h‚n - cha 

    GHng th t)c +Q((QR(¤+(x'y£,]tFWord-\

    Th$n ;J trU ca chữ /ung uanh t$a độ đJnh s“n6w y£ là phen bB chữ th?o tr)c ngang6 TV các hng sauF

    ^?Et(?/t } 5 Thữ ;i

  • 8/19/2019 Pascal Cơ Bản

    89/112

    Giáo trình bài tập Pascal

    GHng th t)c ((QR(R'/,*FWord\ +tF+tring-\Th jF Tách /u0t chui ca hai th t)c tr8n đư@c ui đJnh trong th t)c +Q((QR(¤+(x ;à+Q((QR(+(^Q6D66. DŠ CÁC HÌNH CƠ BẢN.1. Ch–n p, ưKng

     GHng th t)c +Q(^xNQ+(^Q'^s,Pt,(kFWord-\(h t)c nà* /ác đJnh ki9u đư!ng đư@c ;Œ trong đS h$a6^sF ki9u đư!ng ;Œ6 ^s cV các giá trJ sauF

    5F "ư!ng li.n nqt2F Nqt đLtDF Nqt ch0m g#ch€F Nqt g#ch•F "ư!ng do ngư!i thi

  • 8/19/2019 Pascal Cơ Bản

    90/112

    Giáo trình bài tập Pascal

    O.7. D h)nh cha nh! cƒ ` 9_, U -rn (ng(h t)c >vO'/2,*2,/D,*DFxnt?g?r-\]Œ hình chữ nhật cV tô màu ;à m”u tô đư@c /ác đJnh b`i th t)c +Q(x^^+(^Q6

    O.>. D h)nh h:" cha nh!(h t)c >vO€G'/2,*2,/D,*D,GhFWord\ (opF>ool?an-\]Œ hình hộp chữ nhật cV t$a độ đznh tr8n là '/2,*2-, đznh dưAi là '/D,*D- ;à chi.u dà* là Gh6

      Gh'/2,*2-

    '/D,*D-TV np hông cV np

    (op } (OQF yình hộp cV np6(op } v^+QF yình hộp không cV np6O.F.D h)nh 3''#"

    (h t)c x^^Q^^xP+Q'/,*Fxnt?g?r\ O/,O*FWord-\O.. D h)nh „,X (Œn

    (h t)c PxQ+^xTQ'/,*Fxnt?g?r\ g2,gD,OFWord-\]Œ hình u#t trn cV tem '/,*-, gVc đCu g2, gVc cuBi gD, bán kUnh O6

    O.^. D h)nh „,X 3''#"th t)c +QT(O'/,*Fxnt?g?r\ g2,gD,O/,O*FWord-\

    O.. L_9 '/ng 9_, 9: *Mng &n(h t)c ^Gx^^'/,*Fxnt?g?r\ TolorFWord-\

    (rong đVF'/,*-F đi9m nm trong ;Hng kUn6TolorF màu muBn tô6

    O.O. D / g#ác"Bi ;Ai một đa giác b0t k{ cV N đznh, ta phIi khai báo N†2 đznh đ9 ;Œ đư!ng g0p khc ;Ai t$a độ

    đi9m đCu trHng ;Ai t$a độ đi9m cuBi6"9 ;Œ đa giác ta dHng th t)cF GOvWP^'NpFWord\ ]ar P-\trong đVF•  NpF sB đznh ca đa giác † 2• PF chLa t$a độ các đznh, là một mIng cV Np thành phCn cV ki9u dữ liu là Point(*p? đư@c

    đJnh ngha trong nit raph như sauF

  • 8/19/2019 Pascal Cơ Bản

    91/112

    Giáo trình bài tập Pascal

    (hông thư!ng, màn hình sŒ làm ;ic ;à hin ra tr8n trang 56 Go đV, đ9 ;a /?m màn hình ;a ;Œl8n trang màn hình khác, ta thư!ng dHng hai th t)c tr8n đi km ;Ai nhau6

    "9 thc hin t động chưKng trình khi sX d)ng c pháp lật hình nà*, ta thư!ng th?o một giIi thuậtsauF

    • (#o biài tập 2562F ]i

  • 8/19/2019 Pascal Cơ Bản

    92/112

    Giáo trình bài tập Pascal

    Pro7edure Writetr(dF'd?Iteger;ttrig); Var i'_Iteger; Begi  etteFtt?le(T'*'L);  _"$K;  (5 Viet 7/u og 5)  Ror i"* to $T do  egi  et7olor(_);  outteFtF?(dFi'd?i't);  i7(_);  ed;  et7olor(%*);  outteFtF?(dFi'd?i't); Ed;

    Begi gd"IN>:E&D&IVE&(VG=2TK'NI>); GS"%; iitgra/(gd'gm'7‹‹BGI); Writetr($'$**' P/am =/ P/uog); readl; CloeGra/;Ed.>ài tập 256DF ]Œ các hình chữ nhật ng”u nhi8n tr8n màn hình6:e Crt'Gra/;

    Pro7edure aDo/oa;Var Gd'GmIteger;Begi

    Gd"*;IitGra/(Gd'Gm'’D‹BP‹BGI’);

    Ed;

    Mu7tio &adColorB?te;  Begi  &adColor"&adom(SaFColor J $)$;  Ed;

    Pro7edure DeSo;  Var F$'?$'F2'?2Iteger;  Begi  &adomiˆe;  &eeat

    F$"&adom(GetSaF);?$"&adom(GetSaFn);F2"&adom(GetSaF J F$) F$;?2"&adom(GetSaF J ?$) ?$;etColor(&adColor);&e7tagle(F$'?$'F2'?2);Dela?(T**);

      :til e?Preed;

    3D

  • 8/19/2019 Pascal Cơ Bản

    93/112

  • 8/19/2019 Pascal Cơ Bản

    94/112

    Giáo trình bài tập Pascal

    Var 7/C/ar;BEGIN

    7/"&eade?;END;+‡M4Pro7edure Sodu$;BEGIN

    >ie(T*'T*'2**'#**);Wait;

    END;Pro7edure Sodu2;BEGIN

    Cir7le(2**'2**'$**);Wait;

    END;

    Pro7edure Sodu#;BegiEllie(2**'#**'*'#K*'$**'$T*);Wait;

    Ed;Pro7edure Sodu%;BEGIN

    &e7tagle(T*'T*'2**'#**);Wait;

    END;Pro7edure SoduT;

    BEGINut

  • 8/19/2019 Pascal Cơ Bản

    95/112

    Giáo trình bài tập Pascal

    etRillt?le($'SauNe);  ar(F$'?$'F2'?2);  et7olor(SauVie

  • 8/19/2019 Pascal Cơ Bản

    96/112

    Giáo trình bài tập Pascal

    Ed;  q2Begi  >uuott"ott;  ott"ottJ$;  iR ottQ$ t/e ott"oDog;  ele7t"ott;

    BoF(uuouuo

  • 8/19/2019 Pascal Cơ Bản

    97/112

    Giáo trình bài tập Pascal

    Begi  ClearDe@i7e;  I CH=;

      DogSNKf"VIE< DNG :=NG C=;  DogSNf"

  • 8/19/2019 Pascal Cơ Bản

    98/112

    Giáo trình bài tập Pascal

    Ed;Pro7edure Hi/Ca2; Begi  etColor($T);  Pieli7e(7'n7'$T'#%T'&); +Ve ug 7a4  etColor(*);  Cir7le(7 & di@ 2 'n7 J & di@ 2'%); +Sat 7a4 Ed;+‡MJ4Begi  gd"%;  IitGra/(gd'gm'’’);  7"GetSaF di@ 2;  n7"GetSaFn di@ 2; &"T*; i"*;

      Hi/*f"Hi/Ca$;  Hi/$f"Hi/Ca2;  age$"*; age2"$;  &eeat  etViualPage(age$);  et=7ti@ePage(age2);  i"$Ji;  Hi/if; Dela?(2**);  age$"$Jage$;  age2"$Jage2;  :til e?Preed;

      CloeGra/;Ed.>ài tập 256…F ]i

  • 8/19/2019 Pascal Cơ Bản

    99/112

    Giáo trình bài tập Pascal

    Begigd"%;Iitgra/(gd'gm'C‹BP‹gi);et7olor($%);etteFtt?le($'*'T);&u(P/am =/ P/uog);Cloegra/;

    Ed.>ài tập 2564F ]iie(tartJ'tartnJK'tartJ$*'tartnJ$2);Cir7le(tart$*'tartnJ$2'2);Cir7le(tartJ$*'tartnJ$2'2);

    Ed;

    Pro7edure Pla?;Var F$'?$'F2'?2'iˆeWord;

      F'?Iteger;  PPoiter;

    BegiVeDiaBa?;F$"tart J (r$);?$"tartn J $%;F2"tart r $;?2"tartn (r di@ #) #;(5 >1u @9 Fa / 5)iˆe"Imageie(F$'?$'F2'?2);GetSem('iˆe);

    33

  • 8/19/2019 Pascal Cơ Bản

    100/112

    Giáo trình bài tập Pascal

    GetImage(F$'?$'F2'?2'PŠ);PutImage(F'?'PŠ'&Put); + a / 4F"GetSaF di@ 2;?"GetSaFn di@ 2;(5 Di 7/u?Z 0a a? 5)&eeat

    PutImage(F'?'PŠ'&Put); + V 0a a? 4Dela?(2**);PutImage(F'?'PŠ'&Put); + a 0a a? 4So@e(F'?);

    :til e?Preed;MreeSem('iˆe); + Gii /g @g /Y 4

    Ed;BEGIN

    aDoHoa;

    Pla?;CloeGra/;END.>ài tập 256ƒF ]i

  • 8/19/2019 Pascal Cơ Bản

    101/112

    Giáo trình bài tập Pascal

    @ar iB?te; =glereal;

     Begi  IR (Q#)or("SaF) t/e  Begi  Writel(/og tao duo7 ta di/!);  EFit;  Ed;  Mor i"$ to do  Wit/ Pif do  Begi  =gle"25Pi5((iJ$) =*#K*);  F"P*.F &oud(&5Co(=gle));  ?"P*.? J &oud(&5i(=gle));  Ed;

      P$f"$f; Ed;BEGIN

    Write(‘N/a o di/ 7ua da gia7 deu " ‘); &eadl(N);aDoHoa;P*.F"GetSaF di@ 2;P*.?"GetSaFn di@ 2; =*"U*;&"GetSaFn di@ %;

  • 8/19/2019 Pascal Cơ Bản

    102/112

    Giáo trình bài tập Pascal

    Gd"*;IitGra/(Gd'Gm'’D‹BP‹BGI’);

    Ed;unction (x:real):real;

     Begin

      :&axx < .x < c; *nd;

    /rocedure Ve$ohi("in-"ax:real);

     var x2-y2:integer;

      dx-x-=:real;

      x-y:>ord;

     Begin

      x:&9et"ax? div %;

      y:&9et"ax@ div %;

      A:&9et"ax?15;

      dx:&+2;

      x:&"in;

      x2:&x < Round(x=);

      y2:&y 0 Round((x)=);

      "oveto(x2-y2);

      While x"ax do

      Begin

      x:&xài tập 25625F ]Œ hình bông hoa6J tưKn F

    GHng t$a độ cc6 iI sX ta cV t$a độ cc trong đVF(r)c ccF /Vc ua*F α  

    thì t$a độ cc ca một đi9m trong mt phng là cp '/,*- ;AiF/ } E'α-6Tos'α-

    * } E'α-6+in'α-(rong đVF E'α- là phưKng trình do ta ui đJnh6

    25D

  • 8/19/2019 Pascal Cơ Bản

    103/112

    Giáo trình bài tập Pascal

    ]U d)FE'α- } k6Tos'nα- F yình bông hoa6

     ình b>ng hoaE'α- } a6α 'a‚5- F "ư!ng /on Bc vcsim?t6E'α- } k6'2†Tos'α--F yình trái tim6

    :e Crt'Gra/;

     @ar &'7/u-?real;Pro7edure aDo/oa;Var Gd'GmIteger;Begi

    Gd"*;IitGra/(Gd'Gm'’D‹BP‹BGI’);

    Ed;Mu7tio M(&'=l/areal)real; + ie

  • 8/19/2019 Pascal Cơ Bản

    104/112

    Giáo trình bài tập Pascal

    &"$T; 7/u-?"%5Pi; VeHi/(7/u-?); reeat util e?Preed; CloeGra/;END.>ài tập 25622F ]it đCu t đư!ng ngang  5 cV độ dài bng 26• "9 t#o cung bậcw2'g$i là  2-, chia đư!ng thành ba phCn ;à tha* đo#n giữa bng tam giác đ.ucV c#nh dài 2‹€6 >e* gi!, toàn bộ đư!ng cong cV độ dài •‹€6

    • Tung bậcwD  D cV đư@c bng cánh dng ti

  • 8/19/2019 Pascal Cơ Bản

    105/112

    Giáo trình bài tập Pascal

    "%;  Go7"$L*;  >egt/"$T*;  So@eto(#**'2**);  o7/(Go7'>egt/');  &eeat util -e?reed;  Cloegra/;END.>ài tập 2562DF ]i

  • 8/19/2019 Pascal Cơ Bản

    106/112

    Giáo trình bài tập Pascal

    "$T;  Go7"*;  >egt/"$#*;  So@eto(2**'2**);  &og(Go7'>egt/');  reeat util -e?reed;  Ed;BEGIN  aDoHoa;  VeCACug;  Cloegra/;END.

    C Cn >ài tập 2562€F ]i

  • 8/19/2019 Pascal Cơ Bản

    107/112

    Giáo trình bài tập Pascal

    Pro7edure SaDelrot; @ar dog'7ot'demiteger;  P*'*'Sodu'F'?'=uFreal; Begi  7ot"*;  W/ile 7otQ"diemduoi do  Begi  P*"F$7ot5-F;  dog"*;  W/ile dogQ"(diemtre di@ 2) do  Begi  *"?$dog5-?;  F"*; ?"*;  dem"$; Sodu"$;  W/ile (demQ"gioi/a)ad(moduQ%) do

      Begi  =uF"F;  F"F5FJ?5? P*;  ?"25?5=uF *;  Sodu"F5F ?5?;  dem"dem$;  Ed;  IR SoduQ%

  • 8/19/2019 Pascal Cơ Bản

    108/112

    Giáo trình bài tập Pascal

    +=

    −=

    -'6-'6Š

    -'6-'6Š

    α α 

    α α 

    Cos GZin ; G

    Zin GCos ; ;

    :e 7rt'Gra/; 

  • 8/19/2019 Pascal Cơ Bản

    109/112

    Giáo trình bài tập Pascal

    P$"P; P2"PP; P#"PPP; =l/a"*; go7"Pi$L*;  etWriteSode(&Put);  VeHi/(P'PP'PPP);  &eeat  7/"read-e?;  iR ord(7/)"* t/e 7/"read-e?;  7ae :7ae(7/) oR   Begi  VeHi/(P$'P2'P#);  =l/a"=l/aJgo7;  ua?Hi/(P'PP'PPP'=l/a'P$'P2'P#);  VeHi/(P$'P2'P#);  Ed;  S Begi

      VeHi/(P$'P2'P#);  =l/a"=l/ago7;  ua?Hi/(P'PP'PPP'=l/a'P$'P2'P#);  VeHi/(P$'P2'P#);  Ed;  Ed;  :til 7/"q2;  CloeGra/;END.BÀ6 TẬP Ti G6Ả6>ài tập 2562„F ]iài tập 2562…F ]i

  • 8/19/2019 Pascal Cơ Bản

    110/112

    Giáo trình bài tập Pascal

    >ài tập 256D2F ]i F

    GHng t$a độ cc6>ài tập 256DDF ]iài tập 256D€F ]i F

    GHng ma trận ca phqp ua*6>ài tập 256D•F Re* dng một thư ;in 'nit- chLa t0t cI các bài tập trong chưKng nà*6>ài tập 256D„F ]i

  • 8/19/2019 Pascal Cơ Bản

    111/112

    Giáo trình bài tập Pascal

    ‘C L‘C

    LK# 9U $,...................................................................................................................................1Chương 1e CÁC THÀNH PHẦN CƠ BẢN CỦA NGÔN NGỮ LẬP TRÌNH

    PASCAL.......................................................................................................................................7Chương 7e CÁC ]6j EỮ L6k CƠ BẢN ³ ]HA6 BÁ2 HlNGb B6mNb ]6jb B6j THCDÀ Co LkNH6. Các p, a '#~, cơ -8n...........................................................................................................^66. ]h/# -á hyng........................................................................................................................O666. ]h/# -á -#%n........................................................................................................................O6D. •znh ngh/ p,.....................................................................................................................<D. B#p, hIc..................................................................................................................................<D6. C‚, '~nh.................................................................................................................................<B_# !" 9´,................................................................................................................................11B_# !" Q g#8#............................................................................................................................17

    Chương >e CÁC Co LkNH C‡ Cˆ TR‰C6. L~nh ( nhánh........................................................................................................................166. L~nh '"................................................................................................................................1^B_# !" 9´,................................................................................................................................1B_# !" Q g#8#............................................................................................................................7FChương Fe CHƠNG TRÌNH C2Ne THỦ T‘C DÀ HÀ6. ]há# n#~9 *œ chương ()nh cn............................................................................................766. C?, (@c ch,ng c/ 9: chương ()nh cƒ 0Ÿ …ng CTC..................................................7666. B#%n _n c…c *_ -#%n z/ "hương.....................................................................................7O6D. •~ „,#...................................................................................................................................7<D. TX hư *#~n ZN6T[.............................................................................................................>1

    B_# !" 9´,................................................................................................................................>>B_# !" Q g#8#............................................................................................................................>^Chương e EỮ L6k ]6j ẢNG6. ]h/# -á 98ng.......................................................................................................................>O66. 4,? nh!" (rn a '#~, p, 98ng.....................................................................................>OB_# !" 9´,................................................................................................................................>OB_# !" Q g#8#............................................................................................................................WChương ^e 4o ]Ž Ti 6. ]h/# -á p, w‚, &x Q........................................................................................................>66. T(,q w,? a '#~, p, S(#ng..............................................................................................>666. Các "h›" án (rn w‚, &x Q............................................................................................>6D. Các h …c *_ h_9 *œ w‚, &x Q.......................................................................................>B_# !" 9´,................................................................................................................................FB_# !" Q g#8#............................................................................................................................^W

    Chương e ]6j BẢN GH66. ]h/# -á a '#~, p, -8n gh#..............................................................................................^>66. 4,? nh!" a '#~, p, -8n gh#..........................................................................................^>B_# !" 9´,................................................................................................................................^>B_# !" Q g#8#............................................................................................................................^OChương Oe ]6j ;6L3

    6. ]h/# -á ................................................................................................................................W66. Các h …c *_ h_9 ch,¡n...................................................................................................W666. ;#' *Jn -8n.........................................................................................................................7

    222

  • 8/19/2019 Pascal Cơ Bản

    112/112

    Giáo trình bài tập Pascal

    6D. ;#' &h`ng znh p,...........................................................................................................>B_# !" 9´,................................................................................................................................FB_# !" Q g#8#............................................................................................................................OChương