Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 15 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
15
Dung lượng
747 KB
Nội dung
Để nhập dãy số có 7 chữ số: 17 20 18 25 19 12 19 phải khai báo bao nhiêu biến? Với dãy số có n số (n = 100) phải khai báo bao nhiêu biến? Mảngmộtchiều là một dãy hữu hạn các phần tử cùng kiểu 17 20 18 25 19 17 19 A 1 2 3 4 5 6 7 Trong đó: Tên mảng : A. Số phần tử của mảng: 7. Ví dụ: Kiểu dữ liệu của các phần tử: Kiểu nguyên. 1. Khái niệm 2. Khai báo mảngmộtchiều * Cách 1: Khai báo gián tiếp TYPE <Tên kiểu mảng>=array[<chỉ số đầu> <chỉ số cuối>] of <kiểu phần tử>; Var <danh sách biến mảng> : <Tên kiểu mảng>; Ví dụ: TYPE Kmang = array[1 100] of integer; Var A: Kmang; Trong đó : Type là từ khóa để định nghĩa một kiểu dữ liệu. Chỉ số đầu, chỉ số cuối là các hằng hoặc các biểu thức nguyên Chỉ số đầu ≤ Chỉ số cuối Kiểu phần tử là kiểu dữ liệu của các phần tử trong mảng. * Cách 2: Khai báo tr c ti p ự ế Var <Danh sách biến mảng> : array[<chỉ số đầu> <chỉ số cuối> ] of <kiểu phần tử>; Var A,B : array[1 1000] of real; Ví d 1:ụ Var t : array[1 100] of integer; Cách 3: Const Nmax = 100; Type MyArray = Array [1 Nmax] Of Integer; Var a:MyArray; Type MyArray = Array [1 Nmax] Of Integer; Var a:MyArray; Ví dụ 2: Khai báo mảng tối đa 100 số nguyên (chỉ số đầu là 1) Ta có các cách sau: Cách 1: Var a: Array[1 100] Of Integer; b: Array[1 100] Of real; Cách 2: Const Nmax = 100; Var a: Array[1 Nmax] Of integer; b: Array[1 Nmax] Of real; Trong ba cách khai báo ở ví dụ 2, thì cách nào tốt hơn? Cách 2 và 3, giúp ta dễ dàng điều chỉnh kích thước của mảng Ví d : ụ 3. Các thao tác x lý trong m ng m t chi u ử ả ộ ề a. Truy xuất đến một phần tử của mảng <Tên biến mảng>[Chỉ số] A[5] = 19 17 20 18 25 19 12 19 A 1 2 3 4 5 6 7 19 A n 1. Nhập số phần tử của mảng (n). Write(‘ Nhap so phan tu n:’); Readln(n); 2. Nhập vào giá trị của các phần tử trong mảng (A[i]). For i:=1 to n do Begin write(‘Nhap so thu’ ,i, ’ : ’); readln(A[i]); end; . Các bước Thể hiện trong pascal b. Nhập mảngmột chiều: với n = 7 19171921182017 Ví dụ: Nhập dãy số A. c. In m ng m t chi u:ả ộ ề Writeln(‘ Mang vua nhap : ’); For i:=1 to n do Write(A[i]:5); Mang vua nhap: - Thông báo - In giá trị của các phần tử 17 20 18 21 19 17 19 Kết quả in ra màn hình: Ví dụ: In mảng vừa nhập: Các bước Thể hiện trong pascal * Đếm các phần tử trong mảng theo một điều kiện cho trước dem :=0; For i :=1 to n do IF A[i] = 19 then dem:=dem+1; D. Các thao tác xử lý khác Ví dụ: Đếm số phần tử có giá trị là 19 trong dãy Dem=0 76 5 43 2 1 i 19171921182017 A[i] 0 0 0 0 1 1 2 19 19 +1+1 [...]... 17 20 Nhap vào phan tu thu 2: Nhap vào phan tu thu 3 : 18 Nhap vào phan tu thu 4 : 21 Nhap vào phan tu thu 5 : 19 Nhap vao phan tu thu 6 : 17 Nhap vao phan tu thu 7 : 19 So phan tu co gia tri 19 trong mang la: 2 Ví dụ: Đếm số phần tử có khóa là k trong dãy Các bước 1 Nhập vào khóa k 2 Đếm số phần tử có khóa là k Thể hiện trong pascal Write(‘Nhap vao khoa k: ‘) Readln(k); dem :=0; For i :=1 to n do IF . sách biến mảng> : <Tên kiểu mảng>; Ví dụ: TYPE Kmang = array[1 100] of integer; Var A: Kmang; Trong đó : Type là từ khóa để định nghĩa một kiểu. Nhập dãy số A. c. In m ng m t chi u:ả ộ ề Writeln(‘ Mang vua nhap : ’); For i:=1 to n do Write(A[i]:5); Mang vua nhap: - Thông báo - In giá trị của các phần