Tải bản đầy đủ (.pdf) (20 trang)

Bài giảng Tin văn phòng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (337.91 KB, 20 trang )

<span class='text_page_counter'>(1)</span>Tr. ng Cao. ng KTKT Bình D. CH. ng Ch. Biên so n : V Bi n ng I. NG TRÌNH VÀ THU T GI I. I. Ch ng trình (Program) 1.Khái ni m Ch ng trình là m t dãy liên ti p các l nh. Th c hi n các l nh ó g i là thi hành ch ng trình. Các ch ng trình u có các tính ch t chung sau ây: - Các l nh c thi hành m t cách tu n t , thi hành xong m t l nh m i thi hành l nh k ti p. - Khi thi hành ch ng trình c n thêm d li u t bên ngòai, i u này làm cho ch ng trình tr nên phong phú và t ng quát. Ch ng trình có th c vi t b ng các ngôn ng l p trình khác nhau. 2.Ngôn ng l p trình. Có hàng tr m lo i ngôn ng l p trình khác nhau, m i lo i ngôn ng u có cú pháp riêng c a nó. Ngôn ng l p trình có th c phân chia thành 3 lo i chính : ngôn ng máy, h p ng và ngôn ng c p cao. 2.1 Ngôn ng máy Ngôn ng máy (mã máy) là ngôn ng n n t ng c a b vi x lý. Bao g m các câu l nh là nh ng dãy s nh phân 0 và 1 r t khó c, khó vi t . Ch có các chuyên gia v máy tính m i vi t c. u i m c a vi c vi t ch ng trình b ng ngôn ng máy là l p trình viên có th i u khi n máy tính tr c ti p và t c chính xác i u mình mu n làm, t c thi hành ch ng trình nhanh và kích th c ch ng trinh nh . Nh c i m c a ch ng trình ngôn ng máy là thông th !ng s" m t r t nhi u th!i gian vi t, r t khó c, khó tìm l i và ch ng trình ph# thu c vào b vi x lý nên ch ng trình ch ch y c trên nh ng máy tính có cùng b vi x lý mà thôi. Ngôn ng máy còn c g i là ngôn ng c p th p (low-level language) 2.2 H p ng H p ng c phát tri n nh m giúp các l p trình viên d$ nh các ch th c a ch ng trình h n. Các ch ng trình h p ng còn bao g m các ch th v% mô (macro instruction) có th t o ra nhi u l nh mã máy. Các ch ng trình h p ng c chuy n sang mã máy thông qua m t ch ng trình &c bi t g i là trình h p d ch (assembler). M&c dù h p ng t ng i d$ dùng h n mã máy nh ng h p ng v'n c xem là ngôn ng c p th p b i vì nó v'n còn r t g n v i t ng thi t k c a máy tính. 2.3 Ngôn ng c p cao Ngôn ng c p cao g n g(i h n v i ý ni m ngôn ng mà h u h t m i ng !i u bi t, nó bao g m các danh t , ng t , ký hi u h c, liên h và các thao tác lu n lý. Các y u t này có th c ph i h p, liên k t v i nhau t o thành m t hình th)c c a câu. Các "câu" này c g i là các m nh c a ch ng trình (program statement). Chính vì nh ng &c i m này, các l p trình viên d$ dàng c và d$ h c ngôn ng c p cao h n so v i ngôn ng máy ho&c h p ng . M t l i i m quan tr ng là ngôn ng c p cao thông th !ng không ph# thu c vào máy tính, ngh%a là các ch ng trình vi t b ng ngôn ng c p cao có th ch y trên các lo i máy tính khác nhau (s d#ng các b vi x lý khác nhau). 2.4 Các ngôn ng l p trình thông d ng Hi n nay có r t nhi u ngôn ng l p trình c p cao là :BASIC, COBOL, C, FORTRAN, PASCAL.v.v.. Ngày này còn có thêm r t nhi u các ngôn ng l p trình h ng i t ng r t ti n l i cho các l p trình viên nh : C++, Visual Basic , Visual C, Denphi, Javal .v.v.. Ch. ng 1: Ch. ng trình và thu t gi i Lop11.com. Trang 1.

<span class='text_page_counter'>(2)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. 3.Trình thông d ch và biên d ch M i ch ng trình c vi t b ng các ngôn ng không ph i là ngôn ng máy cu i cùng u ph i c chuy n i sang ngôn ng máy tr c khi c thi hành. Ch ng trình ngôn ng c p cao c d ch sang ngôn ng máy b ng m t trong hai cách: b ng trình biên d ch (compiler) ho&c trình thông d ch (interpreter). 3.1 Trình biên d ch : S" chuy n i toàn b ch ng trình sang mã máy, r i ch)a k t qu vào %a có th thi hành v sau. Trình biên d ch t o ra m t danh sách l i c a t t c m nh trong ch ng trình vi ph m cú pháp c a ngôn ng . Danh sách này giúp l p trình viên d$ dàng s a i ch ng trình. 3.2 Trình thông d ch : Thay vì chuy n i toàn b ch ng trình ngu n nh trình biên d ch, trình thông d ch ch d ch t ng l nh và thi hành t ng l nh. L i i m c a trình thông d ch là l p trình viên v'n có th ch y m t ch ng trình v'n còn l i cú pháp. Ch khi thông d ch n câu l nh có l i cú pháp, quá trình thi hành ch ng trình m i b ng ng l i và trình thông d ch s" thông báo l i. ng !i l p trình c n c) vào l i s a ch a. II.Thu t gi i.. 1. Ý ngh a. Thu t gi i là m t ph ng pháp, t ng b c h ng d'n, th hi n l!i gi i c am tv n - m t bài toán . Trong khoa h c máy tính, thu t gi i c nh ngh a là m t dãy h u h n các b c rõ ràng và có th thi hành c, quá trình hành ng theo các b c này ph i d ng và cho c k t qu nh mong mu n. 2.Các c tr ng c a thu t gi i Thu t gi i có các &c tr ng c b n là : 2.1.Xác nh : M i thu t gi i u ph i xác nh rõ ràng, không m p m!. 2.2. H u h n: M i thu t gi i sau m t s h u h n b c ph i k t thúc và cho ra k t q a. 2.3: úng : Thu t khi th c hi n xong các b c , ph i cho ra k t qu úng *n. Ngoài ra thu t gi i có các &c tr ng khác nh : + u vào, u ra, tính hi u q a và tính t ng quát. 3. Các ph ng pháp bi u di n thu t gi i Trong th c t ng !i ta th !ng có 2 ph ng pháp bi u di$n thu t : - Dùng ngôn ng t nhiên - Dùng L u -S 3.1. Ngôn ng t nhiên Ng !i l p trình dùng ngôn ng c a mình mô t thu t . Ng !i l p trình li t kê có th) t các b c c a thu t gi i . Tuy v y thu t gi i th !ng dài dòng khó hi u và th !ng không theo m t qui t*c nh t nh. Ví d 1 : Thu t gi i ph ng trình b c hai ax2+bx+c=0 (a<>0) B*t u 1. Yêu c u cho bi t giá tr c a 3 h s a, b, c 2. N u a=0 thì 2.1. Yêu c u u vào không m b o. 2.2. K t thúc gi i thu t . 3. Tr !ng h p a khác 0 thì 3.1. Tính giá tr ∆ = b2-4ac. Ch. ng 1: Ch. ng trình và thu t gi i Lop11.com. Trang 2.

<span class='text_page_counter'>(3)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. 3.2. N u ∆ > 0 thì 3.2.1. Ph ng trình có hai nghi m phân bi t x1 và x2 3.2.2. Giá tr c a hai nghi m c tính theo công th)c sau. x1 =. −b+ ∆ 2a. x2 =. −b− ∆ 2a. 3.2.3. K t thúc. 3.3. N u ∆ = 0 thì 3.3.1. Ph ng trình có nghi m kép x0 3.3.2. Giá tr c a nghi m kép là : x=-b/2a 3.3.3. K t thú c. 3.4. N u ∆ < 0 thì 3.4.1. Ph ng trình vô nghi m. K t thúc. Ví d 2 :Thu t gi i tìm h p có tr ng l ng n&ng nh t tv n : Có n h p có kh i l ng khác nhau và m t cái cân %a. Hãy ch ra cách cân tìm c h p có tr ng l ng n&ng nh t : Thu t gi i c# th nh sau: B*t u 1. N u ch có 1 h p (n=1) thì 1.1. H p ó chính là h p n&ng nh t. 1.2. K t thúc gi i thu t . 2. Ng c l i n u có t hai h p tr lên (n>1) 2.1. Ch n hai h p b t k, và &t lên bàn cân. 2.2. Gi l i h p n ng h n, c t h p nh- h n sang ch khác. 3. N u còn h p ch a c cân th c hi n các b c sau, n u không còn h p nào n a, sang b c 5. 3.1. Ch n m t h p b t k, và lên %a cân còn tr ng. 3.2. Gi l i h p n ng h n, c t h p nh- h n sang ch khác. 4. Tr l i b c 3. 5. H p còn l i trên cân chính là h p n&ng nh t. K t thúc. 3.2. L u -s kh i L u hay s kh i là m t công c# tr c quan di$n t các thu t gi i. Bi u di$n thu t gi i b ng l u s" giúp ng !i c theo dõi c s phân c p các tr !ng h p và quá trình x lý c a thu t . Ph ng pháp l u th !ng c dùng trong nh ng thu t có tính r*c r i, khó theo dõi c quá trình x lý. Trong thu t gi i dùng l u th !ng dùng các hình v" qui c sau mô t các b c. Ch !ng i c a d li u Ch. i m b*t. u và k t thúc.. Ch)a các thao tác x lý Ch thao tác ki m tra. Ch. ng 1: Ch. ng trình và thu t gi i Lop11.com. i u ki n. Trang 3.

<span class='text_page_counter'>(4)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. . trên ch là các ký hi u c b n và th !ng c dùng nh t. Trong th c t ,l u còn có nhi u ký hi u khác nh ng th !ng ch c dùng trong nh ng l u l n và ph)c t p. Ví d 1 : L u thu t gi i, gi i Ph ng trình b c hai. B*t. u. Nh p a Thông báo sai Nh p l i. a=0 s Nh p b,c D:=b2-4ac. D=0 s D>0 s Pt vô nghi m. Pt có nghi m kép x1,2=-b/2a Pt có 2 nghi m x1=-b+. D /2a x2=-b- D /2a. K t thúc. Ví d 2: L u. Ch. ng 1: Ch. tìm ph n t l n nh t trong dãy s .. ng trình và thu t gi i Lop11.com. Trang 4.

<span class='text_page_counter'>(5)</span> Tr. ng Cao. ng KTKT Bình D. Bài t p : 1.Hãy vi t thu t gi i h ph a1x+b1y =c1 a2x+b2y =c2 Bi t r ng : c1. ng. Biên so n : V Bi n. ng trình b c nh t 2 /n s. b1. c1. c 2 b 2 c1b 2 − b1c 2 Dx x= = = a1 b1 a1b 2 − b1a 2 D a 2 b2. a1. c 2 a 2 a1a 2 − a1c 2 Dy y= = = a1 b1 a1b 2 − b1a 2 D a 2 b2. 2.Vi t thu t gi i tim s l n nh t trong 3 s a, b, c. 3.Vi t thu t gi i tìm s Pibonanci th) n v i F0 =0, F1=1, Fn=Fn-2+Fn-1 4.Vi t thu t gi i tim các s nguyên t trong dãy s n s t a1 .. an 5.Vi t gi i thu t tìm USCLN, BSCNN c a 2 s a, b. 6.Vi t gi i thu t tính t ng l0 , t ng ch1n c a dãy n s t nhiên a1 . . an 7.Vi t thu t gi i tìm n! =1*2*3*. .*n. 8.Xác nh d li u và d li u ra cho các thu t gi i sau a.Ki m tra xem ba s cho tr c a, b, c có th là dài ba c nh c a m t tam giác hay không ? b.Tính trung bình c ng c a 2 s a, b c.Dùng m t c c ph# tráo n c hai c c cho tr c d.Tìm chu vi và di n tích c a hình tròn có bán kính cho tr c 9.Có hai bình A và B . Bình A có dung tích 8 lít, bình B có dung tích 5 lít . Trình bày các b c th c hi n l y c 2 lít n c. 10.Vi t thu t gi i vi t gi i thu t xác nh ma tr n n v . 11.Vi t thu t gi i in ra ma tr n chuy n v c a ma tr n ã nh p tr c. 12.Vi t thu t gi i In ra ma tr n tích cu hai ma tr n ã nh p tr c. 13. Có 3 bình A, B, C. Bình A có dung tích 8 lít và ng y 8 lít r u, bình B có dung tích 5 lít, bình C có dung tích 3 lít. Trình bày các b c th c hi n có c 4 lít r u bình A và 4 lít r u bình B. 14. M t ng !i có 1 con g u, 1 con dê và 1 cái b*p c i. N u không có ng !i bên chúng thì con g u s" n th t con dê ho&c con dê s" n b*p c i. Thuy n ch có th ch c ng !i ó v i con g u ho&c con dê ho&c b*p c i. Ng !i ó làm th nào mang chúng sang sông.. Ch. ng 1: Ch. ng trình và thu t gi i Lop11.com. Trang 5.

<span class='text_page_counter'>(6)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. Ch ng 2 GI I THI U NGÔN NG L P TRÌNH PASCAL. I.Gi i thi u chung 1.Xu t x : PASCAL là ngôn ng l p trình c p cao c giáo s Niklaus Wirth tr !ng i h c K2 thu t Zurich (Th#y s%) thi t k và công b vào n m 1971. Ông &t tên cho ngôn ng c a mình là Pascal t ng nh nhà h c n i ti ng ng !i Pháp th k3 17: Blaise Pascal, ng !i ã sáng ch ra chi c máy tính c khí u tiên c a nhân lo i. Thành công c a ngôn ng Pascal là ch : nó là ngôn ng u tiên a ra và th hi n c khái ni m l p trình có c u trúc. Ý t ng v m t ch ng trình có c u trúc xu t phát t suy ngh% cho r ng có th chia m t bài l n, ph)c t p thành nhi u bài nh , n gi n h n. N u m i bài nh c gi i quy t b ng m t ch ng trình con, thì khi liên k t các ch ng trình con này l i s" t o nên m t ch ng trình l n gi i quy t c bài ban u. B ng cách chia m t ch ng trình thành các ch ng trình con nh v y, ng !i th o ch ng có th l p trình gi i quy t riêng l0 t ng ph n m t, t ng kh i m t, ho&c có th t ch)c nhi u ng !i cùng tham gia, m i ng !i ph# trách m t vài kh i. Ð&c bi t khi ph i thay i hay s a ch a trong m t kh i thì i u ó s" ít nh h ng n các kh i khác. Ngày nay, Ngôn ng Pascal c dùng vi t các ch ng trình )ng d#ng trong nhi u l%nh v c. V i v n ph m sáng s a, d$ hi u, v i kh n ng m nh, Pascal c xem là ngôn ng thích h p nh t gi ng d y các tr !ng ph thông và i h c. 2. Turbo Pascal T khi ph n m m Pascal c a Niclau Wirth ra !i các hãng ph n m m ã liên t#c phát tri n thành các Pascal riêng nh : IOS Pascal chu/n , IBM Pascal c a MicroSoft, Turbo Pascal c a hãng Borland , nh ng Turbo Pascal (TP) có nhi u u i m nên c s d#ng r ng rãi gi ng d y. II.S d ng ph!n m"m Turbo Pascal 1. Kh#i $ng Turbo Pascal: Trong ph n này s" trình bày cách s d#ng Turbo Pascal 7.0.phiên b n th !ng c dùng ph bi n hi n nay. 1.1. Các t p tin chính c a Turbo Pascal: TP có hàng tr m t p tin nh ng ch y c Turbo Pascal 7.0, ch c n hai t p tin sau là : - TURBO.EXE : t p tin chính c a TP - TURBO.TPL : t p tin ch)a các th vi n c a TP N u mu n v" h a thì ph i có thêm các t p tin:GRAPH.TPU, t p tin ch)a th vi n h a *.BGI : các t p tin màn hình h a *.CHR : các t p tin t o ki u ch N u mu n xem h ng d'n s d#ng Turbo Pascal thì c n có thêm t p tin TURBO.HLP 1.2. Kh#i $ng Turbo Pascal: Thông th !ng hi n nay các máy s d#ng h i u hành Windows nên có các kh i ng nh sau : - Tr !ng h p có s1n m t Shortcut ch)a Turbo Pascal trên Desktop : hãy Double click vào bi u t ng Shortcut c a Turbo Pascal. - Tr !ng h p không có s1n m t Shortcut ch)a Turbo Pascal: hãy ch n l nh Start, ch n ti p l nh Run, r i gõ vào !ng d'n y c a t p tin TURBO.EXE, ch4ng h n: C:\TP\TURBO.EXE ↵ , n u kh i ng TP t %a C. Ch. ng 2:Gi i thi u Ngôn ng l p trình Pascal Lop11.com. Trang 6.

<span class='text_page_counter'>(7)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. A:\TP\TURBO.EXE ↵ , n u kh i ng TP t %a A. 1.3. C a s màn hình Turbo Pascal và cách ch n l nh :. Con tr dùng so n th o ch ng trình. Trong c a s này, dòng trên cùng là m t th c n ngang, li t kê 9 nhóm l nh chính c a TP. Mu n ch n m t l nh trong th c n này, có th ti n hành theo m t trong hai cách: + Cách 1: Gõ phím F10. Lúc này, trên th c n xu t hi n m t khung sáng (th !ng là màu xanh). Mu n ch n l nh nào thì gõ các phím m(i tên ← , → d!i. khung sáng n l nh ó r i Enter. M t th c n con c a l nh v a ch n hi n ra, g i là th c n hàng d c. Ví d#, khi ch n l nh File, ta c th c n con nh sau: + ch n m t l nh trong th c n hàng d c, hãy gõ các phím m(i tên ↑ , ↓ d!i khung sáng n l nh ó r i Enter. Khi không mu n ch n l nh nào thì gõ phím ESC tr v vùng so n th o. + Cách 2 : Ch n m t l nh trong th c n ngang b ng cách gõ ng th!i phím Alt v i phím ch cái u tiên c a tên l nh mu n ch n. Ví d#, mu n ch n menu File thì gõ ng th!i hai phím Alt và F (vi t t*t là Alt-F), t ng t , mu n ch n menu Compile thì gõ Alt-C. + Cách 3 : Dùng phím gõ t*t Có m t s l nh c gán cho nh ng phím &c bi t g i là phím "gõ t*t”, ví d# l nh Open: F3, l nh Save : F2, l nh Exit : Alt-X. + th c hi n nh ng l nh này, thay vì ph i ch n nó t trong th c n, ta ch c n gõ phím nóng t ng )ng v i. Ch. ng 2:Gi i thi u Ngôn ng l p trình Pascal Lop11.com. Trang 7.

<span class='text_page_counter'>(8)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. nó. Ví d#, thay vì ch n l nh Open thì gõ phím F3, thay vì ch n l nh Save thì gõ phím F2,... D i th c n ngang là vùng so n th o dùng gõ ch ng trình vào. + u c a vùng này hi n tên c a t p tin ang so n, và n u ng !i th o ch ng ch a &t tên thì TP s" &t m t tên m&c nhiên là NONAME00.PAS. Dòng cu i cùng tóm t*t m t s phím " gõ t*t" hay dùng, nh phím F1 xem h ng d'n, phím F2 l u t p tin lên %a, phím F3 dùng m xem m t t p tin, phím F10 kh i ng th c n,.v.v. 1.4. Thoát kh i Turbo Pascal Ch n l nh File trong th c n ngang, ch n ti p l nh Exit trong th c n d c (vi t g n là ch n l nh File/ Exit) ho&c gõ c&p phím gõ t*t Alt-X 1.5. Các b c th c hi n m t ch ng trình Pascal + so n và ch y m t ch ng trình Pascal trong Turbo Pascal, nên ti n hành các b c nh sau: - B c 1: Kh i ng Turbo Pascal - B c 2: Nh n F2 &t tên cho ch ng trình. - B c 3: So n th o ( gõ ) ch ng trình . B n hãy gõ ch ng trình m'u sau vào vùng so n th o c a Turbo Pascal :. -B c 4: D ch và s a l i: Ch n l nh Compile/ Compile (ho&c gõ c&p phím Alt-F9 hay F9). Máy s" d ch ch ng trình sang mã máy, n u g&p l i thì d ng và hi n thông báo l i màu u màn hình, ng th!i con tr &t v trí có l i. Ng !i th o ch ng ph i t mình s a l i, r i gõ Alt-F9 d ch và s a l i ti p cho n khi h t l i. D u hi u cho bi t vi c d ch ã xong là màn hình xu t hi n c a s thông báo có dòng ch &c tr ng là:. - B c 5: L u tr l i ch ng trình lên %a: ch n l nh File/ Save ho&c gõ phím F2. - B c 6: Ch y th ch ng trình: Ch n l nh Run/ Run ho&c gõ phím nóng Ctrl-F9 (vi t t*t là ^F9). M i l n ch y th , ta c n nh p m t b d li u c# th và Ch. ng 2:Gi i thi u Ngôn ng l p trình Pascal Lop11.com. Trang 8.

<span class='text_page_counter'>(9)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. ki m tra xem k t q a in lên màn hình có úng không và có phù h p v i th c ti$n không?. n u sai c n ki m tra l i. 2. M$t vài k% thu t trong so&n th o 2.1. Thao tác trên kh i: Ta g i kh i là m t o n v n b n g m m t hay nhi u dòng liên ti p. Ký t u tiên c a kh i g i là u kh i, ký t cu i cùng c a kh i g i là cu i kh i. D i ây là m t kh i g m hai dòng l nh: Write(‘ Nhap chieu dai va chieu rong hinh chu nhat: ‘); Readln(a,b); a) +ánh d u kh i: - + a con tr v u kh i - Gi phím Shift, ng th!i nh n liên ti p các phím m(i tên ← , ,↓ ,→ kéo vùng sáng ph n cu i kh i. b) Sao chép kh i: - +ánh d u kh i c n sao chép - + a con tr n n i c n chép t i - Gõ l nh ^K_C c) Di chuy n kh i: - +ánh d u kh i c n di chuy n - + a con tr n n i c n chuy n kh i t i -Gõ l nh ^K_V d) Xóa kh i: - +ánh d u kh i c n xóa - Gõ l nh ^K_Y e) Che ho&c hi n l i kh i ã ánh d u : l nh ^K_H 2.2. Các phím l nh so n th o thông d ng - Phím Home : a con tr v u dòng hi n th!i - Phím End : a con tr v cu i dòng hi n th!i - Phím Delete : xóa ký t ngay t i v trí con tr . N u con tr ang )ng cu i c a dòng trên mà gõ phím Delete thì s" n i dòng d i vào cu i dòng trên. -Phím Back Space : Xóa ký t tr c con tr . - C&p phím Ctrl_Y:xóa toàn b dòng hi n th!i và ôn các dòng d i lên. - Nhóm phím Ctrl_Q_Y : xóa t v trí con tr n cu i dòng. - Các phím ← , ,↓ ,→ : d!i con tr theo h ng m(i tên. - Phím Insert :Dùng chuy n i ch chèn è - Phím Enter : Xu ng dòng Trong ch vi t chèn: gõ Enter có tác d#ng a con tr xu ng u dòng d i, do ó toàn b các ch )ng sau con tr (n u có) s" b c*t xu ng dòng d i. Khi con tr ang )ng u m t dòng mà Enter thì s" t o ra m t dòng tr ng ngay t i v trí ó. III. Các ph!n t c b n c a ngôn ng Pascal 1.T p ký t c b n : M i ngôn ng u c xây d ng t m t t p ký t nào ó. Ngôn ng Pascal c xây d ng trên b ký t c b n, g m: - Các ch cái la tinh: A, B, C,...,Z, a, b, c,..., z - Các ch s :0, 1, 2, 3, 4, 5, 6, 7, 8, 9 - Các ký hi u &c bi t: +, -, *, /, =, <, {, }, [, ], %, $, &, #, ... - Ký t g ch n i ‘_’ và ký t tr*ng ‘ ‘ ( space). Ch. ng 2:Gi i thi u Ngôn ng l p trình Pascal Lop11.com. Trang 9.

<span class='text_page_counter'>(10)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. 2. T' khóa (Keyword) Có m t s t c Pascal dành riêng cho vi c xây d ng các câu l nh, các khai báo, các phép tính,... g i là t khóa. Ng !i l p trình không c &t m t tên m i (tên bi n, tên h ng, tên hàm, tên th t#c,...) trùng v i m t trong các t khóa. D i ây là danh sách các t khóa c a Pascal : Absolute, and, array, begin, case, const, div, do, downto, else, end, file, for, forward, function, goto, if, implementation, in, inline, interface, interrupt, label, mod, nil, not, of, or, packed, procedure, program, record, repeat, set, shl, shr, string, then, to, type, unit, until, uses, var, while, with, xor Các t khóa có th vi t d i d ng ch hoa hay ch th ng hay xen k ch hoa v i ch th ng u c. Ví d# vi t begin hay Begin hay BEGIN là nh nhau. 3.Tên (identifier) Các bi n, các h ng, các hàm, các th t#c, ... c s d#ng trong ch ng trình u c n ph i &t tên, còn g i là nh danh hay danh hi u. Các tên này do ng !i th o ch ng t &t và ph i m b o úng quy t*c: tên ph i b*t u b ng ch cái, k ó có th là ch cái, ch s , hay d u g ch n i ‘_’. Tên không c &t trùng v i t khóa. Chi u dài c a tên t i a là 127 ký t . Thông th !ng tên nên &t ng*n g n và có tính g i nh . Ví d#:Delta, X1, X2, i, j , Chuc_vu, Luong,Phuong_Trinh_Bac_Hai… 4.Tên chu(n Trong Pascal có m t s tên ã c &t s1n r i, g i là tên chu/n, ch4ng h n : Abs, Arctan, Boolean, Byte, Char, Cos, Copy, Delete, Eof, False, Longint, Ord, Integer, Real, Readln, Writeln, True, Text, ... Pasal có th cho phép ng i th o ch ng t l i tên chu n, nh ng không nên t l i. 5.Câu l nh trong Pascal Câu l nh là ph n vi c mà ch ng trình ph i th c hi n x lý d li u ã c khai báo. Trong ch ng trình các câu l nh c vi t cách nhau m t d u ch m ph y (;). Có 2 lo i : Câu l nh n và l nh ghép. 5.1 Câu l nh n gi n : Bao g m các l nh +L nh gán (:=) : Dùng gán giá tr cho bi n s ã khai báo -D ng l nh : Bi n s := Bi u th)c; Ví d# : x:=10; d:=a*b; +L nh G i th t#c : Dùng g i th t#c trong ch ng trình -D ng l nh <Tên th t#c> Ví d#: Clrscr; Halt; 5.2 L nh ghép : Bao g m m t nhóm l nh t 2 l nh tr lên c &t trong hai t khoá Begin và End; Ví d# : Begin TG:=A; A:=B;B:=TG; End; IV. C u trúc c a ch ng trình Pascal 1.C u trúc chung Ch ng trình là m t dãy các câu l nh ch th cho máy các công vi c ph i th c hi n. M t ch ng trình Pasccal y g m ba ph n chính : - Ph n tiêu - Ph n khai báo - Ph n thân ch ng trình 1.1. Ph!n tiêu " ch ng trình Ph n này b*t u b ng t khóa Program, ti p n là tên ch ng trình do ng !i s d#ng t &t, cu i cùng k t thúc b ng d u ch m ph/y ‘;’.. Ch. ng 2:Gi i thi u Ngôn ng l p trình Pascal Lop11.com. Trang 10.

<span class='text_page_counter'>(11)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. Ví d# : Program Btap1; ho&c : Program Giai_pt_bac2; Ph n tiêu chi m m t dòng, còn g i là ph n u c a ch ng trình, nó có th không có. 1.2. Ph!n khai báo Ph n khai báo có nhi m v# gi i thi u và mô t các i t ng, các i l ng s" tham gia trong ch ng trình Nó g m có 7 lo i khai báo sau . - USES Khai báo n v s d#ng (Unit) - LABEL Khai báo nhãn, - CONST Khai báo h ng - TYPE khai báo ki u d li u m i, - VAR Khai báo bi n - PROCEDURE khai báo các ch ng trình con là th t#c - PUNCTION Khai báo các ch ng trình con là hàm. Tùy theo yêu c u c# th mà m i khai báo này có th có ho c không có khai báo. 1.3. Ph!n thân ch ng trình +ây là ph n ch y u nh t c a m t ch ng trình, b t bu c ph i có. Thân ch ng trình b*t u b ng t khóa BEGIN và k t thúc b ng END. (có d u ch m cu i). Gi a kh i BEGIN và END là các l nh. M i l nh ph i k t thúc b ng d u ch m ph/y ‘;’. Begin Các l nh; End. 2.Khai báo trong ch ng trình Turbo Pascal 2.1 Khai báo n v s d ng (Unit) Turbo Pascal có s1n trên 300 hàm và th t#c chu/n, chúng c phân thành t ng nhóm theo ch)c n ng, g i là các th vi n hay n v ch ng trình ( Unit) bao g m : System ,Crt, Graph, Dos, Printer, .v.v. . Mu n s d#ng các hàm hay th t#c c a n v nào, tr System còn l i ta ph i khai báo, Cách khai báo nh sau : Uses Tendonvi ; Ví d : - Mu n s d#ng n v CRT Uses CRT ; - Mu n s d#ng c hai th vi n CRT và GRAPH, ta khai báo : Uses CRT, GRAPH ; Chú thích : M t s hàm và th t c trong n v s d ng màn hình CRT +Th t c ClsScr - D ng th t c: ClrScr; - Ch c n ng : Xóa màn hình k t qu , a con tr v t a 1,1 +Th t c GotoXY - D ng th t c : GotoXY(x,y); - Ch c n ng : + a con tr nt a c t x, dòng y - Ví d# : GotoXY(10,5) : + a con tr v t a c t 10, dòng 5. +Th t c Delay - D ng th t c Delay(time) - Ch c n ng : D ng th c hi n ch ng trình time miligiây. -Ví d# : Delay(200); +Th t c TextColor - D ng th t#c TextColor(màu). Ch. ng 2:Gi i thi u Ngôn ng l p trình Pascal Lop11.com. Trang 11.

<span class='text_page_counter'>(12)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. - + nh mà cho dòng ch vi t lên màn hình theo b ng màu sau : Color Màu Color Màu Color Màu 0 Black 6 Brown 12 LightRed 1 Blue 7 LightGray 13 LightMagenta 2 Green 8 DarkGray 14 Yellow 3 Cyan 9 LightBlue 15 Whlte 4 Red 10 LightGreen 5 Magenta 11 LightCyan Ví d# : Tectcolor(Red) hay Textcolor(4) 2.2 Khai báo h)ng s H ng là i l ng có gía tr không i, khai báo h ng ta dùng t khóa Const cách khai báo nh sau : Const Tên_h ng_s = H ng s ; Ví d# : Const N=10 ; 2.3 Khai báo bi n s Bi n là i l ng có giá tr thay i trong ch ng trình, chúng c dùng trong ch ng trình l u tr các d li u, tham gia vào các bi u th)c tính và các quá trình x lý trong máy. Cách khai báo bi n s nh sau : Var Tên_bi n_s : ki u d li u; Ví d# : Var x, y : Real ; i, k : Integer; 2.4 Khai báo ( nh ngh a) m$t ki u d li u m i Ngoài các ki u d li u mà b n thân ngôn ng ã có s1n nh ki u th c, ki u nguyên, ki u ký t , ki u lôgic,.v.v. ng !i dùng có th t xây d ng các ki u d li u m i ph#c v# cho ch ng trình c a mình, nh ng ph i mô t sau t khóa TYPE cách khai báo nh sau TYPE tên ki u d li u m i = ki u d li u m i . Ví d#, ta nh ngh%a m t ki u d li u m i có tên là Mang : Type Mang = Array[1..10] of Real; 4.Ví d Vi t ch ng trình cho phép nh p vào h tên, mã s , các i m , Lý c a m t sinh viên, tính i m trung bình theo công th)c : Dtb=(Toan+ly)/2 In H tên, mã s , các i m , Lý và i m trung bình c a sinh viên ó lên màn hình. PROGRAM VIDU; Uses CRT; Var Ho_ten, Maso : String[20]; Toan, Ly, Dtb : Real; Begin Write(‘ Nhap Ho va ten : ‘); Readln(Ho_ten); Write(‘ Nhap ma so : ‘); Readln(Maso); Write(‘ Nhap diem Toan : ‘); Readln(Toan); Write(‘ Nhap diem Ly : ‘); Readln(Ly); Dtb:= (Toan+Ly) / 2; { In lên màn hình các d li u v sinh viên } TextBackGround(Green); { &t màu n n là Green } TextColor(Red); { &t màu ch là Red} Clrscr ; Ch. ng 2:Gi i thi u Ngôn ng l p trình Pascal Lop11.com. Trang 12.

<span class='text_page_counter'>(13)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. Writeln(‘ KET QUA THI CUA SINH VIEN:’); Writeln(‘Ho va ten : ‘, Ho_ten); Writeln(‘Ma so : ‘, Maso); Writeln(‘Diem Toan : ‘, Toan:3:1); Writeln(‘Diem Ly : ‘, Ly:3:1); Writeln(‘Diem Tbinh : ‘, Dtb:3:1); Readln; END. Ghi chú : + so n và ch y c m t ch ng trình nh trên c n ph i bi t s d#ng ph n m m Turbo Pascal ( vi t t*t là TP ). IV.Các ki u d li u n gi n dùng trong Pascal Trong TP dùng m t s ki u d li u g i là d li u n gi n chu/n nh sau: 1.Ki u nguyên : Dùng bi u di$n các s nguyên, ph m vi bi u di$n c a s nguyên t 1 byte n 4 byte Tên ki u Ph m vi gía tr S byte ShortInt -128 .. 127 1 Byte 0..255 1 Integer -32768 .. 32767 2 Word 0 .. 65535 2 LongInt -2147483648 .. 2147483647 4 +Các phép toán trên ki u nguyên : - Các phép toán : C ng(+), tr (-), nhân(*),chia(/) - Phép chia l y ph n nguyên (DIV): 10 Div 3 =3, 10 div 5 =2. - Phép chia l y ph n d (Mod): 15 mod 5 =0, 16 mod 3 =1. + Các hàm có i s nguyên : -Hàm PRED(k) : i s k nguyên, tr v s nguyên )ng ngay tr c k, t)c là k-1 . Ví d#: Pred (5) = 4, Pred (-6) = -7. -Hàm SUCC(k) : i s k nguyên, tr v s nguyên )ng ngay sau k, t)c là k+1 . Ví d#: Succ (5) = 6, Succ (-6) = -5. +Các th t#c có i s nguyên: Có hai th t#c khá thông d#ng là: -Th t c INC(k) : t ng k lên m t n v . Ví d#, sau khi th c hi n các l nh : k:=5; Inc(k); thì gía tr sau cùng c a k là 6. V y, l nh Inc(k); t ng ng v i l nh k:=k+1; hay k:=Succ(k); -Th t c DEC(k) : gi m k i m t n v . Ví d#, sau khi th c hi n các l nh : k:=5; Dec(k); thì gía tr c a k s" là 4. V y, l nh Dec(k) ; t ng ng v i l nh k:=k-1; hay k:=Pred(k); 2.Ki u th c : Dùng bi u di$n các s th c, ph m vi bi u di$n c a s th c t 4 n 10 byte. Ph m vi gía tr Tên ki u S byte 6 Real 2.9*10-39 .. 1.7*1038 -45 38 4 Single 1.5*10 .. 3.4*10 8 Double 5.0*10-324 .. 1.7*10308 10 Extended 3.4*10-4932 .. 1.1*104932 8 Comp -9.2*1018 .. 9.2*1018 +Các phép toán trên s th c : Có 4 phép toán s h c là nhân (*), chia (/), c ng (+) và tr (-). Khi m t trong các s h ng tham gia tính toán là ki u th c thì k t q a c a phép toán c(ng là m t s th c. (Phép toán DIV, MOD không dùng cho các s th!c. ) Ch. ng 2:Gi i thi u Ngôn ng l p trình Pascal Lop11.com. Trang 13.

<span class='text_page_counter'>(14)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. +Các hàm có i s nguyên ho c th c -Hàm ABS(x): tính tr tuy t i c a x Ví d#: Abs(5 - 8) = 3 -Hàm SQR(x): tính bình ph ng c a x: Ví d#: Sqr(4.0) = 16.0, Sqr(2) = 4 Trong các hàm d i ây, i s x có th là nguyên hay th c, nh ng gía tr tr v luôn luôn là ki u th!c: -Hàm SQRT(x): tính , (x ? 0) - Hàm EXP(x) : tính ex - Hàm LN(x): tính lnx, (x > 0) - Các hàm SIN(x), COS(x), và ARCTAN(x): tính sinx, cosx và arctgx. - Hàm INT(x) : cho s th c b ng ph n nguyên c a x. Ví d# : Int(12.55) = 12.0 Int(1+10/3)=4.0 -Hàm FRAC(x) : cho s th c b ng ph n l0 c a x. Ví d# : Frac(12.55) = 0.55 Hai hàm c bi t d i ây cho k t q a là s nguyên: -Hàm TRUNC(x): cho s nguyên là ph n nguyên c a x. Ví d# : Trunc(12.55) = 12 Trunc(-2.98) = -2 - Hàm ROUND(x): cho s nguyên b ng cách làm tròn x. Ví d# : Round(12.45) = 12 Round(-2.98) = -3 3.Ki u ký t (Char): Nh n m t trong các ký t trong b ng mã ASCII, M i ký t trong b ng mã ASCII g i là m t h ng ký t , chi m dài 1 byte, và khi vi t trong Pascal ph i c &t trong c&p nháy n: ‘0’, ‘1’, ‘A’, ‘B’, ‘$’,... +Các hàm liên quan n ký t : - Hàm PRED(ch): cho ký t )ng ngay tr c ký t ch trong b ng mã. Ví d#: Pred(‘B’)=‘A’ -Hàm SUCC(ch): cho ký t )ng ngay sau ký t ch trong b ng mã. Ví d#: Succ(‘A’)=‘B’. -Hàm UpCase(ch): i ký t ch thành ch hoa. Ví d#: Upcase( ‘a’ ) = ‘A’, Upcase( ‘b’ ) = ‘B’, Upcase( ‘A’ ) = ‘A’ . -Hàm ORD(ch) : cho mã c a ký t ch. Ví d#: Ord (‘A’) = 65, Ord (‘a’) = 97 . -Hàm CHR(k) : i s k nguyên, 0< k < 255, cho ký t có mã b ng k. Ví d#: Chr (65)= ‘A’ , Chr (97)= ‘a’, Chr(32) là ký t tr*ng 4.Ki u logic (boolean) Ki u boolean ch có hai gía tr là TRUE ( úng) và FALSE (sai), không phân bi t ch hoa hay ch th !ng. V quan h th) t thì FALSE< TRUE. M i gía tr boolean chi m m t byte b nh . Các phép toán lôgic g m có: NOT, AND, OR và XOR. N u A và B là hai i l ng lôgic thì NOT A, A and B, A or B và A xor B c(ng là nh ng i l ng lôgic có k t q a c cho b ng sau: A B A and B A or B A xor B True True True True False True False False True True False True False True True False False False False False 5.Ki u chu*i (String) : là m t chu i ký t . Khi gán h ng chu i , h ng chu i ph i c rào trong c&p d u nháy n Ví d# : ‘Turbo Pacal’, ‘12345’.. Ch. ng 2:Gi i thi u Ngôn ng l p trình Pascal Lop11.com. Trang 14.

<span class='text_page_counter'>(15)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. V.Các l nh nh p xu t d li u . Nh p và xu t d li u là hai khâu quan tr ng trong qúa trình x lý thông tin. H u nh ch ng trình nào c(ng ph i gi i quy t v n nh p, xu t d li u. Có nh p c d li u thì m i có d li u tính hay x lý. Có d li u xu t ra thì m i bi t c k t q a c a qúa trình x lý trong máy. 1. L nh nh p d li u 1.1.Ý ngh a :Dùng nh p d li u cho bi n nguyên hay th c hay chu i. 1.2 .D ng l nh có 3 d ng nh sau : 1. Read(x1, x2, ..., xn); 2. Readln(x1, x2, ..., xn); 3. Readln; Trong ó x1,x2…xn ã c khai báo ki u d li u trong ph n khai báo. - D ng 1 và d ng 2 dùng nh p d li u cho các bi n s ã c khai báo. - D ng 1 khi nh p xong d li u ngay sau bi n s xn, còn d ng 2 khi nh p xong con tr t ng nh y xu ng u hàng k ti p. - D ng 3 không dùng nh p d li u, mà có tác d#ng d ng th c hi n ch ng trình ch! nh n phím enter. Ghi chú : Khi nh p d li u cho các bi n s , các giá tr vi t cách nhau ít nh t m t kh ang tr*ng. 2. L nh xu t d li u. 2.1 Ý ngh a : Dùng in các d li u lên màn hình 2.2 .D ng l nh : có 3 d ng th t#c in d li u nh sau: 1. Write( bt1, bt2 , ... , btn ); 2. Wrteln(bt1, bt2 , ... , btn ); 3. Writeln; Trong ó bt1, bt2, ..., btn là các bi u th)c c n ph i in gía tr lên màn hình. Trong tr !ng h p n gi n, m i bi u th)c này có th là m t bi n, m t h ng, hay m t hàm. - D ng 1: in d li u xong con tr ngay sau btn, còn d ng 2 khi in xong con tr nh y ngay xu ng u hàng k ti p. - D ng 3: không dùng in d li u lên màn hình mà có tác d#ng a con tr xu ng u hàng k ti p. Ví d : cho x, y là hai bi n th c và gán x:=100/4; y:=-9/300; thì hai l nh sau : Writeln(‘ x= ‘, x); Writeln(‘ y= ‘, y); s" in lên màn hình : x = 2.5000000000E+01 y = -3.0000000000E-02 2.2. In d li u d ng s có nh d ng: a). In s th!c có nh d ng: In các s th c theo cách trên r t khó c. Vì th các s th c th !ng c in có nh d ng, gi ng nh cách vi t s thông th !ng, b ng l nh: Writeln( bi uth)c : n : k ); Trong ó n và k là các s t nhiên, n nh dùng n c t in gía tr c a bi u th)c, trong ó có k c t dành cho ph n th p phân. Ví d#: cho x, y là các bi n ki u th c và: x:=100/4; y:=-123.4824; Hai l nh sau : Writeln(‘ x=‘, x:6:2); Writeln(‘ y=‘, y:10:3); s" in lên màn hình: x= 25.00 ( tr c s 2 có 1 ký t tr*ng). Ch. ng 2:Gi i thi u Ngôn ng l p trình Pascal Lop11.com. Trang 15.

<span class='text_page_counter'>(16)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. y= -123.482 (tr c d u - có 2 ký t tr*ng) N u n nh h n chi u dài c a s c n in thì s s" c in ra v i y các ch s trong ph n nguyên. Ví d#, khi th c hi n các l nh sau : x:=12345.675; Writeln(‘x= ‘, x:0:2); trên màn hình s" hi n : x=12345.68 . ây máy ã làm tròn s khi b s l0 cu i cùng. 2.3 Ví d PROGRAM VIDU; Uses CRT; Var Ten : String[18]; Maso : String[11]; Begin CLRSCR; Write(‘ Nhap ho va ten: ‘); Readln(Ten); Write(‘ Nhap ma so sv : ‘); Readln(Maso); Writeln; Writeln(‘ ********************** ’); { in 22 d u * } Writeln(‘*’, Ten:19, ‘*’:2); { in 1 d u *, in Ten chi m 19 c t, in ti p d u * chi m 2 c t } Writeln(‘* Ma so:’ , Maso:12, ‘*’:2); { in * Ma so, in Maso chi m 12 c t, in ti p d u * chi m 2 c t } Writeln(‘**********************’); { in 22 d u * } Readln; End. Bài t p ch ng 2 1. Nh p 2 s nguyên a, b t bàn phím. In ra t ng, tích, hi u, th ng c a a và b 2. + c t bàn phím di n tích c a áy l n B1 và di n tích áy nh B2 và chi u cao h c a m t hình chóp c#t .Tính th tích hình chóp c#t theo công th)c sau : V = (1/3)* (B1+B2 + B1*B2) *h 3. + c t bàn phím bàn kính R1, bán kính R2, là !ng sinh l và chi u cao h c a m t hình chóp c#t. Tính di n tích xung quanh và th tích hình chóp c#t theo công th)c sau: Di n tích xung quanh S = (PI/2 * (R1R2) *I Th tích V = (1/3) * (PI*h*(R1² + R2² + R1*R2)) 4. Vi t ch ng trình nh p vào i m Toán, Lí, Hoá c a m t thí sinh theo h s t ng )ng 3 : 2 : 1 . Hãy tính và in i m trung bình. 5.Vi t ch ng trình tính l c hút F gi a hai v t có kh i l ng M và N cách nhau m t kh ang d theo công th)c : M *N F =G d2 –8 2 2 V i G là l c h p d'n = 6.673* 10 cm /gs (M tính b ng gram,D tính b ng cm) 6.Vi t ch ng trình nh p 3 s nguyên d ng a, b, c sau ó tính và in ra màn hình giá tr trung bình c ng s , c và trung bình nhân p c a 3 s ó a+b+c Bi t r ng : s = p = (abc)1 / 3 3 7.Vi t ch ng trình nh p 3 s nguyên d ng a, b, c là s ó 3 c nh c a m t tam giác. Hãy tính và in ra màn hình di n tích s c a tam giác ó. Bi t r ng : s=sqrt(p*(p-a)*(p-a)*(p-c)) trong ó p=0.5*(a+b+c).. Ch. ng 2:Gi i thi u Ngôn ng l p trình Pascal Lop11.com. Trang 16.

<span class='text_page_counter'>(17)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. Ch ng III CÁC L NH +I,U KI N – VÒNG L-P. I. Các l nh i"u ki n 1.L nh nh y không i"u ki n - Cú pháp : Goto <Nhãn> - Ch c n ng : Nh y ngay n l nh ã c ánh d u b ng nhãn ã khai báo. Ghi chú: Cách khai báo nhãn trong ph n khai báo. Label <Nhãn> V i <Nhãn> là m t t t &t. 2. Câu l nh IF 2.1. Câu l nh If d ng 1 Cú pháp : IF <Ði"uki n> THEN <L nh> ; Ði u ki n là m t bi u th)c lôgic cho k t q a TRUE ( úng) hay FALSE (sai). L nh có th là m t l nh n gi n ho&c m t l nh có c u trúc. Ý ngh a: Máy ki m tra i u ki n, n u Ði uki n là úng thì th c hi n l nh L nh, ng c l i n u Ði uki n là sai thì th c hi n l nh k ti p sau if Ví d : Nh p vào h tên và i m trung bình (DTB) c a m t sinh viên. Hãy phân lo i sinh viên theo DTB nh sau: Lo i là Kém n u DTB<5, là Tbình n u 5 =< DTB<7, là Khá n u 7 <= DTB<9, là Gi i n u DTB >= 9. In h tên, i m trung bình và phân lo i sinh viên. PROGRAM PhanloaiSinhvien; { Phân lo i sinh viên } Var Ho_ten: String[18]; DTB: Real; Loai: String[6]; Label aa; Begin Write(‘ Nhap ho va ten :’); Readln(Ho_ten); aa:Write(‘ Nhap iem trung binh :’);Readln(DTB); If DTB<0 then Begin Writeln(‘Diem trung binh <0 ! Xin nhap lai ‘); Readln; Goto aa; End; { phân lo i theo DTB } If DTB< 5 then Loai:=‘Kem’; If (DTB>= 5) and (DTB<7) then Loai:=‘Tbinh’; If (DTB >= 7) and (DTB< 9) then Loai:=‘Kha’; If DTB >= 9 then Loai:=‘Gioi’; Writeln(Ho_ten, #32 , DTB:4:1 , #32 , Loai); { #32 là ký t tr*ng }. Ch. ng 3: Các l nh i u ki n – vòng l p Lop11.com. c. Trang 17.

<span class='text_page_counter'>(18)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. Readln; End. 2.2. Câu l nh IF d ng 2 +Cú pháp : IF Ði"uki n THEN L nh1 Sai ELSE L nh2 ; +ki n Chú ý : -Tr c ELSE không có d u ch m ph/y. +úng -L nh1 và L nh2 có th là m t l nh ghép, t)c là g m nhi u l nh c &t trong kh i begin và end; . L nh 2 L nh 1 +Ý ngh a c a l nh: Máy ki m tra i u ki n, N u Ði uki n là úng thì th c hi n L nh1, ng c l i, n u Ði uki n là sai thì th c hi n Lênh2. Ví d : Vi t ch ng trình nh p vào hai s a và b, L nh k ti p tìm và in s nh nh t và s l n nh t c a chúng: PROGRAM Tim_Max_Min; { Tim so lon nhat va so nho nhat c a hai so } Var a, b, Max, Min : Real; Begin Write(‘ Nhap a va b :’);Readln(a,b); If a < b then begin Max:= b; Min:= a; end else { tr c else không có d u ; } begin Max:= a; Min:= b; end; Writeln(‘ So lon nhat la: ‘ , Max:6:2); Writeln(‘ So nho nhat la: ‘ , Min:6:2); Readln; End. 2.3. Câu l nh IF l ng nhau : Trong câu l nh IF, n u L nh1 ho&c L nh2, ho&c c hai, l i là câu l nh IF thì ta có c u trúc IF l ng nhau. Ch4ng h n d i ây là hai câu l nh IF... ELSE l ng nhau : IF Ði"uki n1 THEN If Ði"uki n2 then L nh1 else L nh2 ELSE L nh3 ;. Ch. ng 3: Các l nh i u ki n – vòng l p Lop11.com. Trang 18.

<span class='text_page_counter'>(19)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. Ví d# : Vi t ch ng trình nh p vào h tên m t ch h , ch s i n k tháng tr c (chiso1) và ch s i n k tháng này (chiso2), tính ti n i n tháng này cho h , bi t r ng : M i kw trong 100 kw u tiên có n gía là 500 , T kw th) 101 n kw th) 200 có n giá 800 , T kw th) 201 tr lên có n gía 1000 . PROGRAM Tinh_tien_dien; { Tính ti n i n } Var Ho_ten: String[18]; chiso1, chiso2, Ldtt, Tien : Real; Label aa; Begin Write(‘ Nhap ho va ten :’); Readln(Ho_ten) aa: Write(‘ Nhap ch s tháng tr c, ch s tháng này: ‘);Readln( chiso1, chiso2); If chiso2<chiso1 Then Begin Writeln(‘Ban nhap sai du lieu ! Xin nhap lai’); Readln; Goto aa; End; Ldtt:=chiso2 - chiso1; If Ldtt<= 100 then Tien:=Ldtt*500 else if Ldtt <=200 then Tien:=100*500+(Ldtt - 100)*800 else Tien:=100*500 + 100*800 + (Ldtt - 200) * 1000; Writeln(‘ H và tên là ‘, Ho_ten); Writeln(‘ Ti n ph i tr là ‘ , Tien:10:2); Readln; End. 3. Câu l nh CASE 3.1. Cú pháp L nh CASE có hai d ng, chúng ch khác nhau m t i m là trong d ng 2 có ELSE L nh n+1, còn trong d ng 1 thì không ( hình v"). CASE bi uth)c OF h ng1 : L nh1; h ng2 : L nh2; .... h ngn : L nhn; END; D ng 1. CASE bi uth)c OF h ng1 : L nh1; h ng2 : L nh2; .... h ngn : L nhn; ELSE L nhn+1; END; D ng 2. Chú ý - L nh CASE ph i k t thúc b ng END;. Ch. ng 3: Các l nh i u ki n – vòng l p Lop11.com. Trang 19.

<span class='text_page_counter'>(20)</span> Tr. ng Cao. ng KTKT Bình D. ng. Biên so n : V Bi n. - Ki u d li u c a bi uth)c ch là ki u d li u m c nh : nguyên, ký t , Lôgic, ho&c ki u li t kê hay ki u o n con, không c là ki u th c hay ki u chu i.. 3.2: Ý ngh a: Khi g&p l nh Case trong ch ng trình máy th c hi n theo các b c sau : B c 1: Tính gía tr c a bi uth)c B c 2: So sánh và l a ch n: - N u gía tr c a bi uth)c = Gt1 thì th c hi n L nh1 - N u gía tr c a bi uth)c = Gt2 thì th c hi n L nh2 - N u gía tr c a bi uth)c = Ctn thì th c hi n L nhn B c 3: a) chuy n ngay sang l nh k ti p sau End ( n u là d ng 1) b) th c hi n L nh n+1, r i chuy n sang l nh k ti p sau End (n u là d ng 2) . S Sai. GT=gt GT=gt. Sai. L nh1. Sai +úng. GT=gt. L nh2. +úng. L nh3. L nh k 2.3. Các ví d : PROGRAM Tim_so_ngay_cua_thang; { Xác nh s ngày c a tháng } Var Thang, Nam, Songay : Integer ; Begin Write(‘Nh p Thang, Nam : ‘); Readln(Thang, Nam); If (Thang<1) or ( Thang>12) then writeln(‘ Nh p sai ’) else begin Case Thang OF 4, 6, 9, 11 : Songay:=30; 1, 3, 5, 7, 8, 10, 12 : Songay:=31; 2 : begin If Nam mod 4 = 0 then Songay:=29 else Songay:=28; end;. Ch. ng 3: Các l nh i u ki n – vòng l p Lop11.com. Trang 20.

<span class='text_page_counter'>(21)</span>

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×