381 likes | 710 Views
Bài 11: KIỂU MẢNG MỘT CHIỀU. Trần Thị Hồng Nhung. Bài toán đặt vấn đề. Xác định Input, Output Viết chương trình bài toán trên ?. Khi N lớn thì chương trình có những hạn chế nào ?. 1. KHÁI NIỆM MẢNG MỘT CHIỀU. 21.4. Trong đó. Tên mảng :. Số phần tử của mảng :.
E N D
Bài 11: KIỂU MẢNG MỘT CHIỀU TrầnThịHồngNhung
Bàitoánđặtvấnđề • Xácđịnh Input, Output • Viếtchươngtrìnhbàitoántrên?
21.4 Trongđó • Tênmảng: • Sốphầntửcủamảng: • Kiểudữliệucủacácphầntử: • Khithamchiếuđếnphầntửthứ i - ta viếtA[i]
2. KHAI BÁO KIỂU MẢNG MộT CHIỀU • Cómấycáchkhaibáomảngmộtchiều? Đólànhữngcáchnào? Có 2 cáchkhaibáo: trựctiếpvàgiántiếp Cógìkhácnhaugiữa 2 cách?? Trôngchúngnhưthếnào?
2. KHAI BÁO KIỂU MẢNG MộT CHIỀU Đâylàcáchkhaibáotrựctiếp ^^ Var<tênbiếnmảng>: array[<chỉsốđầu>..<chỉsốcuối>] of <kiểuphầntử>; Chỉsốđầu, chỉsốcuối: làcáchằnghoặcbiểuthứcnguyên Chỉsốđầu≤chỉsốcuối Giữahaichỉsốlàdấu.. Kiểuphầntử: kiểucủacácphầntửmảng VD1: Varnhietdo: array[1..366] of integer; • VD2: varMangKytu:array[Byte] of Char; • VD3: Var b : array[1..100] of integer;
2. KHAI BÁO KIỂU MẢNG MộT CHIỀU Cònđâylàcáchkhaibáogiántiếp ^^ TYPE <tênkiểumảng> = array[<chỉsốđầu>..<chỉsốcuối>] of <kiểuphầntử>; Var<tênbiếnmảng> : <tênkiểumảng>; Tạisaokhôngdùngkhaibáotrựctiếp Chỉsốđầu, chỉsốcuối: làcáchằnghoặcbiểuthứcnguyên Chỉsốđầu≤chỉsốcuối Giữahaichỉsốlàdấu.. Kiểuphầntử: kiểucủacácphầntửmảng VD1: TYPEnhietdo= array[1..366] ofinteger; VarA:nhietdo; VD2: Type mang1c = array[1..20] of real; Var a, b: mang1c;
Kếtquả A 1 2 3 N-1 N Mảngcótênvàsốphầntử Cácsốtrongmảngcócùngkiểudữliệu
3. 1 Thamchiếuđếnphầntửcủamảng <Tênbiếnmảng> [chỉsố] = Giátrịtạichỉsố Vídụ: A 1 2 3 4 5 6 7 8 A[2] = 8 A[4] = 26 A[7] = 7
3.2 nhậpphầntửcủamảng For i:=1 to n do Begin Write(‘A[’,i, ‘]:’); Readln (A[i]); End;
3.3 xuấtphầntửcủamảng For i:=1 to n do Write(‘ ‘, A[i]);
3.4 xửlícácphầntử For i:=1 to n do Begin If <điềukiện> then <câulệnh 1>; <câulệnh 2>; <câulệnh…> End;
Khaibáomảng t (lưutrữnhiệtđộtừngngàytrongnăm) bằngcáchgiántiếp Type t=array [1..366] of real; Var A: t;
4. bàitậpnhỏ • Input: • DãyN sốnguyêndương A1, A2,…, AN (N<=200) • Output: • Chỉsốvàgiátrịcủaphầntửlớnnhấttrongdãysốđãcho.
Quytắclàmviệcnhóm Nhóm 2 họcsinhngồicùngbàn Thờigianthảoluận (5 phút) Đọckĩyêucầubàitoán;xácđịnh input, output; cácbướcgiảibàitoán Viếtchươngtrìnhhoànchỉnh Nhómlàmxongtrướcnhấtlênbảnggiải; cácnhómcònlạinộplạibàicho GV, GV coibài (3’) Bàiđúng, chínhxác (cộngđiểmbàikiểmtra 15’ tới) GV nhậnxét, sửabài, cộngđiểmcácnhóm (2’)
Chương trình Pascal Thuậttoán Write(‘ Nhapvao so luongphantu:’); Readln(N); 1. NhậpN vàdãy a1,...,an; For i:=1 to N do begin write(‘ Phantuthu ’ ,i, ’ = ’); readln(a[i]) end; 2. max a1 ; i 1; max:=a[1]; chiso:=1; For i:=2 to n do 3.Nếu i >N đưara MAX vàchỉsố i => kếtthúc; If a[i]>max then begin max:=a[i]; chiso:=i; end; 4.Nếua[i] >max thìmaxa[i], i i+1 => quay lạibước 3.
5.Củngcố - dặndò • Kháiniệm • Haicáchkhaibáo, thamchiếuphầntử • Thaotácnhập, xuất, xửlítrênmảngmộtchiều BTVN • Họclíthuyết, làmbàitậptrong PBT • http://itmenteachers.blogspot.com/2011/12/trac-nghiem-tong-hop-mang-1-chieu.htmllàmbàitậptrêntrang web • Viếtlạichươngtrìnhtínhnhiệtđộnăm, tìm max • Xembàimới