Giáo trình Ngôn ngữ lập trình Pascal: Phần 2 - Lê Mạnh Thạnh
Số trang: 64
Loại file: pdf
Dung lượng: 1.38 MB
Lượt xem: 10
Lượt tải: 0
Xem trước 7 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Nối tiếp phần 1, phần 2 của cuốn giáo trình Ngôn ngữ lập trình Pascal trình bày về: kiểu tập hợp và kiểu máng, chương trình con, kiểu chuỗi kí tự, kiểu bản ghi và kiểu tập tin, kiểu con trỏ và biến động. Cùng tham khảo giáo trình để nắm bắt toàn bộ nội dung.
Nội dung trích xuất từ tài liệu:
Giáo trình Ngôn ngữ lập trình Pascal: Phần 2 - Lê Mạnh ThạnhCh−¬ng 6 KiÓu tËp hîp vµ kiÓu m¶ng6.1. KiÓu tËp hîp (Set Type)6.1.1. §Þnh nghÜa – D÷ liÖu kiÓu tËp hîp lµ mét tËp hîp cña nh÷ng d÷ liÖu cïng thuéc mét kiÓu v« h−íng ®Õm ®−îc (kiÓu c¬ së cña kiÓu tËp hîp). – Mét kiÓu tËp hîp ®−îc ®Þnh nghÜa bëi d¹ng sau: TYPE = SET OF ;trong ®ã lµ tªn cña kiÓu d÷ liÖu cÇn ®Þnh nghÜa lµ tªn hoÆc lµ ®Þnh nghÜamét kiÓu d÷ liÖu nµo ®ã gäi lµ kiÓu c¬ së. VÝ dô 1. Sau ®©y lµ c¸c vÝ dô vÒ ®Þnh nghÜa kiÓu d÷ liÖu tËp hîp vµ m« t¶ biÕn thuéc kiÓu d÷ liÖu ®ã:Type Chu_so = Set Of 0..9 ; Chu_cai_lon = Set Of ‘A’..’Z’;Var So: chu_so; Chu : Chu_cai_lon; Mau : Set Of (Xanh, Vang, Tim); – NÕu lµ kiÓu nguyªn th× gi¸ trÞ cÇn ph¶i n»m trong ®o¹n 0 ®Õn 255. – H»ng kiÓu tËp hîp ®−îc biÓu diÔn d−íi d¹ng liÖt kª c¸c phÇn tö n»m trong 2 dÊu ngoÆc vu«ng [ ]. Ch¼ng h¹n, [‘A’,‘D’,‘E’] , [3, 5 , . . , 9] lµ c¸c h»ng kiÓu tËp hîp. – H»ng tËp hîp rçng ®−îc kÝ hiÖu bëi [ ]. – BiÕn tËp hîp cho phÐp cã tõ 0 ®Õn 255 phÇn tö. Cã thÓ sö dông phÐp g¸n ®èi víi c¸c biÕn kiÓu tËp hîp. Ch¼ng h¹n, chóng ta cã c¸c phÐp g¸nsau ®©y: so:=[1,2,7]; Chu:= [ ]; Mau:= [Vang,Tim,Xanh]; 526.1.2. C¸c phÐp to¸n trªn tËp hîpa. PhÐp to¸n quan hÖ – PhÐp to¸n = (b»ng) cho gi¸ trÞ true nÕu 2 tËp hîp b»ng nhau. – PhÐp to¸n (kh¸c) cho gi¸ trÞ true nÕu 2 tËp hîp kh¸c nhau. – PhÐp to¸n =B cho gi¸ trÞ true nÕu B lµ tËp con cña A. Chó ý. §Ó kiÓm tra tËp hîp A cã thËt sù n»m trong tËp hîp B hay kh«ng ta sö dông phÐp to¸n AND nh− trong c©u lÖnh sau ®©y: if (AB) AND (A Repeat Clrscr; Write(‘Nhap mot chu cai:’); readln (ch); Until ch In chucai; If Upcase(Ch) In Nguyenam Then Writeln(Ch,’La Nguyen am’) Else Writeln (Ch, ‘La Phu am’); Readln;End.6.2. KiÓu m¶ng (Array Type)6.2.1. Kh¸i niÖm kiÓu m¶ng (Array) M¶ng lµ mét kiÓu cÊu tróc d÷ liÖu ®−îc dïng ®Ó l−u tr÷ nhiÒu phÇn tö d÷ liÖu cïng kiÓu cïngtÝnh chÊt nµo ®ã trong cïng mét tªn chung. C¸c thµnh phÇn cña m¶ng ®−îc x¸c ®Þnh th«ng quatruy xuÊt c¸c chØ sè cña nã. Ch¼ng h¹n, m¶ng a mét chiÒu gåm 5 phÇn tö ®−îc ph©n bè nh− sau: a[1] a[2] a[3] a[4] a[5] M¶ng còng cã thÓ cã nhiÒu chiÒu, cã nghÜa lµ mçi mét phÇn tö cña m¶ng ®−îc x¸c ®Þnh bëimét bé nhiÒu h¬n mét chØ sè. Ch¼ng h¹n, ®Ó l−u tr÷ c¸c m¶ng n hµng, m cét ta cã thÓ sö dôngm¶ng hai chiÒu a cã n×m phÇn tö. PhÇn tö ë dßng i cét j cña b¶ng lµ a[i,j].6.2.2. Khai b¸o m¶ng mét chiÒu D¹ng ®Þnh nghÜa kiÓu m¶ng: TYPE = ARRAY [] OF ;trong ®ã lµ mét tªn ®Þnh nghÜa kiÓu m¶ng, lµ mét kiÓu v« h−íng ®Õm®−îc cã h÷u h¹n phÇn tö, lµ kiÓu d÷ liÖu cña c¸c phÇn tö cña m¶ng. §Ó khai b¸o biÕn kiÓu m¶ng ta cã thÓ sö dông mét trong hai c¸ch: • C¸ch 1. VAR : ; • C¸ch 2. VAR : ARRAY[] OF ;trong ®ã lµ mét tªn ®−îc dïng ®Ó ®Æt cho m¶ng cÇn khai b¸o. 54 VÝ dô 4. ta cã thÓ ®Þnh nghÜa mét m¶ng 20 phÇn tö thuéc kiÓu Real, cã chØ sè ch¹y tõ 20®Õn 39 nh− sau: Type DAY_THUC = Array[20...39] Of Real; Khi ®ã ®Ó A, B lµ c¸c m¶ng thuéc kiÓu m¶ng trªn ta cÇn khai b¸o: Var A,B : DAY_THUC; Ta cã thÓ thay khai b¸o nµy b»ng khai b¸o trùc tiÕp: Var A,B: Array [20..39] Of Real; Chó ý. – ViÖc truy nhËp vµo mét phÇn tö nµo ®ã cña biÕn m¶ng ®−îc thùc hiÖn qua tªn biÕn m¶ng, theo sau lµ gi¸ trÞ chØ sè ®Ó trong dÊu [ ]. – Cã thÓ g¸n mét m¶ng cho mét biÕn m¶ng kh¸c cïng kiÓu. Ch¼ng h¹n, ta cã thÓ thùc hiÖn phÐp g¸n A:=B (nghÜa lµ, A[20]:=B[20], A[21]:=B[21],..., A[39]:=B[39]).6.2.3. Mét sè vÝ dô sö dông m¶nga. NhËp xuÊt gi¸ trÞ cho mét m¶ng C¸c thñ tôc nhËp xuÊt biÕn nh−: Writeln, Readln,... kh«ng thÓ truy xuÊt th¼ng biÕn m¶ng mµph¶i truy xuÊt tõng thµnh phÇn nã. VÝ dô 5. Ch−¬ng tr×nh d−íi ®©y nhËp vµo tõ bµn phÝm mét d·y sè nguyªn M vµ xuÊt ra mµn h×nh theo thø tù ng−îc l¹i.Program Day_so_nguyen;Use Crt;Const Max=100;Var M : Array [1..Max] of Integer; i,n: Byte;Begin Clrscr; Repeat Write (‘Cho biet so phan tu (< ’, Max, ‘): ’); Readln (n); Until n Write (‘phan tu thu’ , i ‘la: ’); Readln (M[i]); End; Writeln (‘------------------------‘); Writeln (‘In dau theo thu tu nguoc lai:’); For i:=n downto 1 do Write (M[i]#32); Writeln; Writeln(In cac doi so cña day:’); For i:=1 to n do Write (-M[i],#32); Readln;End.b. VÝ dô s¾p xÕp c¸c phÇn tö trong m¶ng Ch−¬ng tr×nh sau ®©y thùc hiÖn viÖc ®äc vµo mét d·y sè vµ s¾p xÕp l¹i nã theo thø tù t¨ng.Program s¨p_xep;Var A: array [1..100] of Real; i, j, n : Byte; T:real;Begin Write (‘ ...
Nội dung trích xuất từ tài liệu:
Giáo trình Ngôn ngữ lập trình Pascal: Phần 2 - Lê Mạnh ThạnhCh−¬ng 6 KiÓu tËp hîp vµ kiÓu m¶ng6.1. KiÓu tËp hîp (Set Type)6.1.1. §Þnh nghÜa – D÷ liÖu kiÓu tËp hîp lµ mét tËp hîp cña nh÷ng d÷ liÖu cïng thuéc mét kiÓu v« h−íng ®Õm ®−îc (kiÓu c¬ së cña kiÓu tËp hîp). – Mét kiÓu tËp hîp ®−îc ®Þnh nghÜa bëi d¹ng sau: TYPE = SET OF ;trong ®ã lµ tªn cña kiÓu d÷ liÖu cÇn ®Þnh nghÜa lµ tªn hoÆc lµ ®Þnh nghÜamét kiÓu d÷ liÖu nµo ®ã gäi lµ kiÓu c¬ së. VÝ dô 1. Sau ®©y lµ c¸c vÝ dô vÒ ®Þnh nghÜa kiÓu d÷ liÖu tËp hîp vµ m« t¶ biÕn thuéc kiÓu d÷ liÖu ®ã:Type Chu_so = Set Of 0..9 ; Chu_cai_lon = Set Of ‘A’..’Z’;Var So: chu_so; Chu : Chu_cai_lon; Mau : Set Of (Xanh, Vang, Tim); – NÕu lµ kiÓu nguyªn th× gi¸ trÞ cÇn ph¶i n»m trong ®o¹n 0 ®Õn 255. – H»ng kiÓu tËp hîp ®−îc biÓu diÔn d−íi d¹ng liÖt kª c¸c phÇn tö n»m trong 2 dÊu ngoÆc vu«ng [ ]. Ch¼ng h¹n, [‘A’,‘D’,‘E’] , [3, 5 , . . , 9] lµ c¸c h»ng kiÓu tËp hîp. – H»ng tËp hîp rçng ®−îc kÝ hiÖu bëi [ ]. – BiÕn tËp hîp cho phÐp cã tõ 0 ®Õn 255 phÇn tö. Cã thÓ sö dông phÐp g¸n ®èi víi c¸c biÕn kiÓu tËp hîp. Ch¼ng h¹n, chóng ta cã c¸c phÐp g¸nsau ®©y: so:=[1,2,7]; Chu:= [ ]; Mau:= [Vang,Tim,Xanh]; 526.1.2. C¸c phÐp to¸n trªn tËp hîpa. PhÐp to¸n quan hÖ – PhÐp to¸n = (b»ng) cho gi¸ trÞ true nÕu 2 tËp hîp b»ng nhau. – PhÐp to¸n (kh¸c) cho gi¸ trÞ true nÕu 2 tËp hîp kh¸c nhau. – PhÐp to¸n =B cho gi¸ trÞ true nÕu B lµ tËp con cña A. Chó ý. §Ó kiÓm tra tËp hîp A cã thËt sù n»m trong tËp hîp B hay kh«ng ta sö dông phÐp to¸n AND nh− trong c©u lÖnh sau ®©y: if (AB) AND (A Repeat Clrscr; Write(‘Nhap mot chu cai:’); readln (ch); Until ch In chucai; If Upcase(Ch) In Nguyenam Then Writeln(Ch,’La Nguyen am’) Else Writeln (Ch, ‘La Phu am’); Readln;End.6.2. KiÓu m¶ng (Array Type)6.2.1. Kh¸i niÖm kiÓu m¶ng (Array) M¶ng lµ mét kiÓu cÊu tróc d÷ liÖu ®−îc dïng ®Ó l−u tr÷ nhiÒu phÇn tö d÷ liÖu cïng kiÓu cïngtÝnh chÊt nµo ®ã trong cïng mét tªn chung. C¸c thµnh phÇn cña m¶ng ®−îc x¸c ®Þnh th«ng quatruy xuÊt c¸c chØ sè cña nã. Ch¼ng h¹n, m¶ng a mét chiÒu gåm 5 phÇn tö ®−îc ph©n bè nh− sau: a[1] a[2] a[3] a[4] a[5] M¶ng còng cã thÓ cã nhiÒu chiÒu, cã nghÜa lµ mçi mét phÇn tö cña m¶ng ®−îc x¸c ®Þnh bëimét bé nhiÒu h¬n mét chØ sè. Ch¼ng h¹n, ®Ó l−u tr÷ c¸c m¶ng n hµng, m cét ta cã thÓ sö dôngm¶ng hai chiÒu a cã n×m phÇn tö. PhÇn tö ë dßng i cét j cña b¶ng lµ a[i,j].6.2.2. Khai b¸o m¶ng mét chiÒu D¹ng ®Þnh nghÜa kiÓu m¶ng: TYPE = ARRAY [] OF ;trong ®ã lµ mét tªn ®Þnh nghÜa kiÓu m¶ng, lµ mét kiÓu v« h−íng ®Õm®−îc cã h÷u h¹n phÇn tö, lµ kiÓu d÷ liÖu cña c¸c phÇn tö cña m¶ng. §Ó khai b¸o biÕn kiÓu m¶ng ta cã thÓ sö dông mét trong hai c¸ch: • C¸ch 1. VAR : ; • C¸ch 2. VAR : ARRAY[] OF ;trong ®ã lµ mét tªn ®−îc dïng ®Ó ®Æt cho m¶ng cÇn khai b¸o. 54 VÝ dô 4. ta cã thÓ ®Þnh nghÜa mét m¶ng 20 phÇn tö thuéc kiÓu Real, cã chØ sè ch¹y tõ 20®Õn 39 nh− sau: Type DAY_THUC = Array[20...39] Of Real; Khi ®ã ®Ó A, B lµ c¸c m¶ng thuéc kiÓu m¶ng trªn ta cÇn khai b¸o: Var A,B : DAY_THUC; Ta cã thÓ thay khai b¸o nµy b»ng khai b¸o trùc tiÕp: Var A,B: Array [20..39] Of Real; Chó ý. – ViÖc truy nhËp vµo mét phÇn tö nµo ®ã cña biÕn m¶ng ®−îc thùc hiÖn qua tªn biÕn m¶ng, theo sau lµ gi¸ trÞ chØ sè ®Ó trong dÊu [ ]. – Cã thÓ g¸n mét m¶ng cho mét biÕn m¶ng kh¸c cïng kiÓu. Ch¼ng h¹n, ta cã thÓ thùc hiÖn phÐp g¸n A:=B (nghÜa lµ, A[20]:=B[20], A[21]:=B[21],..., A[39]:=B[39]).6.2.3. Mét sè vÝ dô sö dông m¶nga. NhËp xuÊt gi¸ trÞ cho mét m¶ng C¸c thñ tôc nhËp xuÊt biÕn nh−: Writeln, Readln,... kh«ng thÓ truy xuÊt th¼ng biÕn m¶ng mµph¶i truy xuÊt tõng thµnh phÇn nã. VÝ dô 5. Ch−¬ng tr×nh d−íi ®©y nhËp vµo tõ bµn phÝm mét d·y sè nguyªn M vµ xuÊt ra mµn h×nh theo thø tù ng−îc l¹i.Program Day_so_nguyen;Use Crt;Const Max=100;Var M : Array [1..Max] of Integer; i,n: Byte;Begin Clrscr; Repeat Write (‘Cho biet so phan tu (< ’, Max, ‘): ’); Readln (n); Until n Write (‘phan tu thu’ , i ‘la: ’); Readln (M[i]); End; Writeln (‘------------------------‘); Writeln (‘In dau theo thu tu nguoc lai:’); For i:=n downto 1 do Write (M[i]#32); Writeln; Writeln(In cac doi so cña day:’); For i:=1 to n do Write (-M[i],#32); Readln;End.b. VÝ dô s¾p xÕp c¸c phÇn tö trong m¶ng Ch−¬ng tr×nh sau ®©y thùc hiÖn viÖc ®äc vµo mét d·y sè vµ s¾p xÕp l¹i nã theo thø tù t¨ng.Program s¨p_xep;Var A: array [1..100] of Real; i, j, n : Byte; T:real;Begin Write (‘ ...
Tìm kiếm theo từ khóa liên quan:
Ngôn ngữ lập trình Pascal Giáo trình Toán học Chương trình con Kiểu chuỗi kí tự Kiểu bản ghi Kiểu tập tinGợi ý tài liệu liên quan:
-
Giáo trình Giải tích Toán học: Tập 1 (Phần 1) - GS. Vũ Tuấn
107 trang 395 0 0 -
Giáo trình Giải tích Toán học: Tập 1 (Phần 2) - GS. Vũ Tuấn
142 trang 136 0 0 -
Giáo trình Toán học cao cấp (tập 2) - NXB Giáo dục
213 trang 92 0 0 -
ĐỀ CƯƠNG THI TRẮC NGHIỆM MÔN LẬP TRÌNH CÓ CẤU TRÚC
43 trang 67 0 0 -
Giáo trình Tin học đại cương: Phần 2 - ĐH Kinh tế Quốc Dân
278 trang 63 0 0 -
Giáo trình xử lý nước các hợp chất hữu cơ bằng phương pháp cơ lý học kết hợp hóa học-hóa lý p7
10 trang 55 0 0 -
0 trang 45 0 0
-
263 trang 41 0 0
-
Giáo trình Học và thực hành Visual Basic căn bản: Phần 2
371 trang 38 0 0 -
Giáo trình thiết kế và đánh giá thuật toán - Trần Tuấn Minh
122 trang 37 0 0