logo

Bài 11. Kiểu mảng

Bài 11. Kiểu mảng

>>> Tham khảo: Sơ đồ tư duy Tin học 11 Bài 11

1. Kiểu mảng một chiều

- Mảng một chiều là dãy hữu hạn các phần tử cùng kiểu.

- Mảng được đặt tên và mỗi phần tử của nó có một chỉ số.

- Để mô tả mảng một chiều cần xác định kiểu của các phần tử và cách đánh số các phần tử của nó.

- Để người lập trình có thể xây dựng và sử dụng kiểu mảng một chiều, các ngôn ngữ lập trình có quy tắc cách thức cho phép xác định:

+ Tên kiểu mảng một chiều;

+ Số lượng phần tử;

+ Kiểu dữ liệu của phần tử;

+ Cách khai báo biến;

+ Cách tham chiếu đến phần tử.

a. Khai báo

Tổng quát, khai báo biến mảng một chiều có dạng:

* Cách 1. Khai báo trực tiếp biến mảng một chiều:

var < tên biến mảng >: array [ kiểu chỉ số ] of < kiểu phần tử >;​

* Cách 2. Khai báo gián tiếp biến mảng qua kiểu mảng một chiều:

type < tên kiểu mảng > = array [ kiểu chỉ số ] of < kiểu phần tử >;​

var < tên biến mảng >: < tên kiểu mảng >;​

Trong đó:

- Kiểu chỉ số thường là một đoạn số nguyên liên tục có dạng n1..n2 với n1, n2 là các hằng hoặc biểu thức nguyên xác định chỉ số đầu và chỉ số cuối (n1 \(\leq\) n2);

- Kiểu phần tử là kiểu của phần tử mảng.

Ví dụ 1. Các khai báo kiểu mảng một chiều sau đây là hợp lệ:

type

ArrayReal = array[-100..200] of real;

ArrayBoolean = array[-n+1..n+1] of boolean;

ArrayInt = [-100..0] of integer;​

Trong đó, n là hằng nguyên.

b. Tham chiếu tới phần tử của mảng một chiều

- Tham chiếu tới phần tử của mảng một chiều được xác định bởi tên mảng cùng với chỉ số, được viết trong cặp ngoặc [ và ].

- Cú pháp: tên_mảng[chỉ số]

Ví dụ 2: Tham chiếu tới nhiệt độ của ngày thứ 20, trong chương trình trên, được viết là Nhietdo[20].

 

Giải Tin học 11: Bài 11. Kiểu mảng - Chi tiết, hay nhất

Hình 1. Minh họa mảng một chiều

2. Kiểu mảng hai chiều

- Mảng hai chiều là bảng các phần tử cùng kiểu.

- Nhận xét rằng mỗi hàng của mảng hai chiều có cấu trúc như một mảng một chiều cùng kích thước. Nếu ta coi mỗi hàng của mảng hai chiều là một phần tử thì ta có thể nói mảng hai chiều là mảng một chiều mà mỗi phần tử là mảng một chiều.

- Để người lập trình có thể xây dựng và sử dụng kiểu mảng hai chiều, các ngôn ngữ lập trình có quy tắc cách thức cho phép xác định:

+ Tên kiểu mảng hai chiều;

+ Số lượng phần tử của mỗi chiều;

+ Kiểu dữ liệu của phần tử;

+ Cách khai báo biến;

+ Cách tham chiếu đến phần tử.

a. Khai báo

Tổng quát, khai báo biến mảng hai chiều trong Pascal như sau:

* Cách 1. Khai báo trực tiếp biến mảng hai chiều như sau:

var < tên biến mảng > : array[ kiểu chỉ số dòng, kiểu chỉ số cột ] of < kiểu phần tử >;​

* Cách 2. Khai báo gián tiếp biến mảng qua kiểu mảng hai chiều:

type < tên kiểu mảng > = array[ kiểu chỉ số dòng, kiểu chỉ số cột ] of < kiểu phần tử >;​

var < tên biến mảng >: < tên kiểu mảng >;

Ví dụ 4. Các khai báo sau đây là hợp lệ:

type

ArrayReal = array[-100..200,100..200] of real;

ArrayBoolean = array[-n+1..n+1,n..2*n] of boolean;

var

ArrayInt: array[1..10,1..15] of integer;

ArrayLong:array[0..3*(n+1),0..n] of longint;​

Trong đó, n là hằng nguyên.

b. Tham chiếu tới phần tử của mảng hai chiều

- Tham chiếu tới phần tử của mảng hai chiều được xác định bởi tên mảng cùng với hai chỉ số được cách nhau bởi dấu phẩy và viết trong cặp ngoặc [ và ].

- Cú pháp: tên_mảng[chỉ số dòng, chỉ số cột]

Ví dụ 4. Tham chiếu tới phần tử ở dòng thứ 5, cột thứ 9 của biến mảng ArrayInt khai báo được viết: ArrayInt [5, 9].

 

Giải Tin học 11: Bài 11. Kiểu mảng - Chi tiết, hay nhất (ảnh 2)

Hình 2. Minh hoạ mảng hai chiều

Chú ý:

- Các biến mảng thường gồm số lượng lớn các phần tử nên cần lưu ý phạm vi sử dụng chúng để khai báo kích thước và kiểu dữ liệu để tiết kiệm bộ nhớ.

- Ngoài hai kiểu mảng một chiều và hai chiều, còn có kiểu mảng nhiều chiều.