Chương 10: Kiểu dữ liệu có cấu trú c Kiểu mảng

Một phần của tài liệu Giáo trình lập trình cấu trúc pascal (Trang 52 - 54)

Chúng ta đã làm quen với các kiểu dữ liệu: Integer, Char, Boolean, Real, Liệt kê và Khoảng con. Trong Pascal tồn tại các kiểu dữ liệu khác đ ược tạo ra từ các

phần tử có kiểu dữ liệu đ ơn giản trên. Dữ liệu đó được gọi là dữ liệu có cấu trúc

(vì nó có tính cấu trúc).

Trong Pascal có 4 kiểu dữ liệu có cấu trúc đó là: Mảng (array), tập hợp (set), bản

ghi (record) và tệp (file).

10.1 Mảng (array)

Mảng là một dữ liệu có cấu trúc bao gồm một số hữu hạn phần tử có cùng kiểu. Số phần tử của mảng đ ược xác định khi định nghĩa mảng. Mỗi phần tử của

mảng được biểu diễn thông qua tên mảng cùng với chỉ số nằm trong mở v à đóng

ngoặc vuông [].

Giả sử ta có 1 mảng 10 phần tử nguy ên ta định nghĩa kiểu mảng như sau:

Type

A = ARRAY [1..10] Of Integer;

Việc khai báo một biến mảng B đ ược viết như sau:

Var

B:A;

Chú ý: 1..10 là một khoảng con, ý muốn nói các phần tử của mảng dựa theo chỉ

dẫn đó.

Ta cũng có thể khai báo trực tiếp biến B nh ư sau:

Var B: ARRAY [ 1..10] Of Integer; Một số ví dụ về định nghĩa mảng nh ư sau. Ví dụ 1: Type A=Array[1...5] of integer; B=Array[1...5] of char;

Color = (Do, Vang, Xanh, Den); Var

X,Y: A; M,N: B ;

K: Array[ 'A' ...'F'] Of Integer; P: Array[Color] Of Boolean;

A, B là hai kiểu mảng gồm 5 phần tử đ ược đánh số thứ tự từ 1 đến 5 thông qua

kiểu chỉ dẫn là một khoảng con: 1..5. Các phần tử của A có kiểu nguyên, còn các phần tử của B có kiểu ký tự. X, Y là các biến có kiểu A v.v...

K là một biến mảng gồm 6 số nguy ên được đánh số qua chỉ dẫn là các chữ cái từ 'A' cho đến 'F'.

P là một mảng gồm 4 phần tử kiểu Boolean, các phần tử đ ược đánh dấu qua chỉ

dẫn là tên của 4 mầu sắc.

Khi khai báo mảng, kiểu chỉ dẫn chỉ có thể là kiểu đơn giản như: ký tự,

khoảng con, liệt kê và Boolean. Kiểu chỉ dẫn không được là Real hoặc Integer.

Nghĩa là sai nếu viết.

Type (adsbygoogle = window.adsbygoogle || []).push({});

A= Array[Real] of integer;

Phần tử của mảng được xác định qua biến mảng và giá trị chỉdẫn để trong ngoặc

vuông. Ví dụ: K['A']:=12; X[2]:=3; P[Do]:=False; v.v.. Sau đây là một số ví dụ.

Ví dụ 1: Vào 5 giá trị cho mảng nguyên Program VaoMangNguyen; Uses Crt; Type A=Array[1..5] of Integer; Var i: Integer; X:A; Begin For i:=1 To 5 Do Begin

Write( ' X [',i, '] = ' ); (*Tạo chỉ dẫn để biết mà gõ vào *). Readln (X[i] ); (*Vào số nguyên qua bàn phím *).

End; End.

Khi chương trình chạy, máy sẽ hiện ra tên phần tử và chờ ta gõ vào: X [1] = 1 X [2] = 2 X [3] = 4 X [4] = 3 X [5] = 2 Ví dụ 2: Tổng hai mảng Program TongHaiMang; Uses Crt; Type A=Array[1..5] of Integer; Var i: Integer; Z, X, Y:A; Begin ClrScr; Writeln('Vào mảng X');

For i:=1 To 5 Do

Một phần của tài liệu Giáo trình lập trình cấu trúc pascal (Trang 52 - 54)