Tài Liệu Ôn Thi Học Sinh Giỏi Tin Học

Chia sẻ bởi Lê Sỹ Hùng | Ngày 17/10/2018 | 49

Chia sẻ tài liệu: Tài Liệu Ôn Thi Học Sinh Giỏi Tin Học thuộc Tin học 8

Nội dung tài liệu:


Chương II. Kiểu Mảng 1 chiều Poster By Lê Sỹ Hùng



I / Định nghĩa :

Mảng là tập hợp các phần tử cùng kiểu . Kiểu của các phần tử như mọi kiểu của biến (trừ kiểu File ) .



II/ Cách khai báo mảng 1 chiều : Có hai cách khai báo :

Cách 1 :

TYPE Tên_Kiểu_Mảng = ARRAY[chỉ_số_đầu . . chỉ_số_cuối] of Kiểu_Phần_tử ;

VAR Tên_biến_Mảng : Tên_Kiểu_Mảng ;

Cách 2 :

VAR Tên_biến_Mảng : ARRAY[chỉ_số_đầu . . chỉ_số_cuối] of Kiểu_Phần_tử ;



Lưu ý :

Khi truyền dữ liệu kiểu mảng vào trong chương trình con bắt buộc phải dùng cách 1



III / Cách khai báo mảng 2 chiều : Tương tự cũng có 2 cách khai báo :

Cách 1 :

TYPE Tên_Kiểu_Mảng = ARRAY[m1 . . m2,n1 . . n2] of Kiểu_Phần_tử ;

VAR Tên_biến_Mảng : Tên_Kiểu_Mảng ;

Cách 2 :

VAR Tên_biến_Mảng : ARRAY[m1 . . m2,n1 . . n2] of Kiểu_Phần_tử ;



Lưu ý : m1 là chỉ số dòng đầu và m2 chỉ số dòng cuối

n1 là chỉ số cột đầu và n2 chỉ số cột cuối



IV / Cách truy nhập Mảng :

Kí hiệu mảng 1 chiều có N phần tử là A(N). Kí hiệu phần tử thứ i ( 1 <= i <= N ) của mảng là A[i] . Trong chương trình , A[i] có vai trò như một biến mang giá trị của ô nhớ tương ứng với phần tử thứ i của mảng . Vậy muốn truy nhập (lấy ra hoặc đặt lại ) giá trị của phần tử thứ i của mảng 1 chiều A(N) ta chỉ cần truy nhập qua A[i] . Rõ ràng rất thuận tiện .

Kí hiệu mảng 2 chiều có M dòng ,N cột A(M,N) . Số phần tử là MxN Kí hiệu phần tử ở dòng i ( 1 <= i <= M ) , cột j ( 1 <= j <= N ) của mảng là A[i,j] . Chỉ số i gọi là chỉ số dòng , chỉ số j gọi là chỉ số cột . Chú ý chỉ số dòng viết trước.

Trong chương trình , A[i,j] có vai trò như một biến ,mang giá trị của ô nhớ tương ứng với phần tử ở dòngi , cột j của mảng . Vậy muốn truy nhập (lấy ra hoặc đặt lại ) giá trị của phần tử này chỉ cần truy nhập qua A[i,j] .



V / Chuyển đổi mảng 2 chiều vào mảng 1 chiều :



Để chuyển giá trị của các phần tử của mảng 2 chiều A(M,N ) vào mảng 1 chiều B(M*N) ta dùng công thức sau :







B[k] := A[i,j] với k := (i - 1) * N + j ( 1<=i<=M ; 1<=j <= N )



VI / Kích thước của mảng :



+ Cách 1 : Mảng A có kích thước là : Sizeof(A) Byte

+ Cách 2 : Kích thước Mảng = Kích thước 1 phần tử * Số lượng phần tử .



VII / Vấn đề mảng và tự điển :



Trong một số bài tập , việc tổ chức mảng như thế nào để có thể làm việc với bộ dữ liệu lớn là một yêu cầu cần thiết . Thí dụ : Cho một bảng chữ nhật 2x4 gồm 2 dòng , 4 cột chứa 8 ô vuông , mỗi ô chứa 1 số nguyên khác nhau 1 , 2 ,3 ,4 ,5 ,6 ,7 8 .







Hình 1

1


2


3


4

8


7


6


5









Hình 2

4


1


2


3

5


8


7


6



Hình 3

4


8


1


3

5


7


2
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Lê Sỹ Hùng
Dung lượng: 1,26MB| Lượt tài: 1
Loại file: doc
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)