Bài 11. Kiểu mảng
Chia sẻ bởi Nguyễn Đình Danh |
Ngày 10/05/2019 |
157
Chia sẻ tài liệu: Bài 11. Kiểu mảng thuộc Tin học 11
Nội dung tài liệu:
Bài 11
KIỂU MẢNG
I. Mảng 1 chiều
Kiểm tra bài cũ
Bài 11: Kiểu mảng
Mảng một chiều là gì?
Mảng một chiều là dãy hữu hạn các phần tử có cùng kiểu dữ liệu. Các phần tử trong mảng có cùng chung một tên và phân biệt nhau bởi chỉ số.
Để xác định mảng một chiều ta cần các yếu tố nào?
Tên kiểu mảng một chiêu;
Số lượng phần tử;
Kiểu dữ liệu của các phần tử;
Cách khai báo biến mảng;
Cách tham chiếu đến phân tử;
I. Mảng 1 chiều
Kiểm tra bài cũ
Bài 11: Kiểu mảng
A
Ví dụ 1:
1 2 3 4 5 6 7 8 9 10
Với kiến thức đã học em hãy nêu những nhận xét của em về ví dụ trên?
Tên mảng:
A
Số lượng phần tử:
10
Kiểu dữ liệu của các ptử:
Kiểu nguyên
Khi tham chiếu đến ptử thứ 5 ta viết:
A[5].
A[5] = 15
Bài 11: Kiểu mảng
I. Mảng 1 chiều
Kiểm tra bài cũ
Ví dụ 2:
Với ví dụ trên em có nhận xét gì?
Ta có thể xem mỗi dòng của bảng trên là 1 mảng một chiều cùng kích thước.
Mảng 1
Mảng 2
Mảng 3
Mảng 4
Mảng 5
Như vậy ta phải sử dụng 5 mảng 1 chiều, một mảng lưu một hàng của bảng
1 2 3 4 5 6 7
Bài 11: Kiểu mảng
I. Mảng 1 chiều
Kiểm tra bài cũ
Khai báo 5 biến mảng 1 chiều
Với cách lưu trữ như vậy ta phải khai báo bao nhiêu biến mảng?
Bài 11: Kiểu mảng
I. Mảng 1 chiều
Kiểm tra bài cũ
Khai báo nhiều biến, viết chương trình dài!
Với cách khai báo như vậy ta gặp phải những khó khăn gì?
Bài 11: Kiểu mảng
I. Mảng 1 chiều
Kiểm tra bài cũ
Để khắc phục những khó khăn đó, ta xem một mảng một chiều là một phần tử, ta ghép 5 mảng một chiều lại thành một mảng hai chiều.
Vậy mảng hai chiều là gì? chúng ta cùng nhau tìm hiểu về kiểu cấu trúc của mảng hai chiều.
Bài 11: Kiểu mảng (tt)
II. Mảng 2 chiều.
1.1. Khái niệm
Mảng hai chiều là mảng một chiều mà mỗi phần tử của nó lại là mảng một chiều.
Mảng hai chiều là bảng các phần tử cùng kiểu
II. Mảng 2 chiều.
1.1. Khái niệm
1.2. Các yếu tố
Các yếu tố để xác định mảng hai chiều:
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ử.
Bài 11: Kiểu mảng (tt)
Để xác định mảng hai chiều chúng ta cần các yếu tố nào?
II. Mảng 2 chiều.
1.1. Khái niệm
1.2. Các yếu tố
Ví dụ
Bài 11: Kiểu mảng (tt)
Ví dụ:
1 2 3 4
1
2
3
Trong đó:
Tên mảng:
?
A
A
Số lượng ptử của mỗi chiều:
?
3 dòng, 4 cột
Kiểu dữ liệu của các ptử:
?
Kiểu nguyên
Khi tham chiếu đến ptử ở dòng i cột j ta viết :
?
A[i,j].
Ví dụ: A[2,3] =
?
8
2
3
II. Mảng 2 chiều.
1.1. Khái niệm.
1.2. Các yếu tố.
Ví dụ
2.1. Khai báo.
Bài 11: Kiểu mảng (tt)
Khai báo mảng 2 chiều:
Cách 1: Khai báo gián tiếp
TYPE = array[kiểu chỉ số dòng, kiểu chỉ số cột] of ; Var : ;
Ví dụ: Type Bang = array[1..9, 1..9] of integer; var A:Bang;
Cách 1: Khai báo trực tiếp
Var : array[kiểu chỉ số dòng, kiểu
chỉ số cột] of;
Ví dụ: Var Bang : array[1..9, 1..9] of integer; var A,B : array[1..20, 1..30] of real;
II. Mảng 2 chiều.
1.1. Khái niệm.
1.2. Các yếu tố.
Ví dụ
2.1. Khai báo.
2.2. Tham chiếu
Bài 11: Kiểu mảng (tt)
Tham chiếu tới phần tử mảng 2 chiều:
Tham chiếu tới phần tử mảng hai chiều được xác định bởi tên mảng cùng với hai chỉ số được phân cách bởi dấu phẩy và viết trong cặp ngoặc vuông "[" và "]"
tên_biến[chỉ số hàng , chỉ số cột]
Ví dụ: Tham chiếu đến hàng thứ 5 cột thứ 7 của biến mảng B ta viết: B[5,7]
II. Mảng 2 chiều.
1.a. Khái niệm.
1.b. Các yếu tố.
Ví dụ
2. Khai báo.
3. Các thao tác xử lý
Bài 11: Kiểu mảng (tt)
Chúng ta sẽ có những thao tác nào đối với mảng 2 chiều
Cũng như mảng 1 chiều, chúng ta có các thao tác: Nhập mảng, In mảng (xuất), Tính toán…
Bài 11: Kiểu mảng (tt)
3. Thao tác xử lý trong mảng 2 chiều
a. Nhập mảng 2 chiều:
A
1
2
3
1 2 3 4
Các bước:
Thể hiện bằng Pascal
1. Nhập số dòng (n), số cột (m)
Write(‘Nhap so dong, cot: ’); readln(n,m);
2. Nhập vào giá trị của các ptử trong mảng A[i,j].
For i := 1 to n do for j := 1 to m do begin write(‘A[‘,i,’,’,j,’] =’); readln(A[i,j]; end;
1
4
7
6
9
2
8
3
5
3
9
7
Bài 11: Kiểu mảng (tt)
3. Thao tác xử lý trong mảng 2 chiều
b. In mảng 2 chiều:
1. Thông báo
Writeln(‘Mang vua nhap: ’); readln(n,m);
2. In giá trị của các phần tử
For i := 1 to n do
begin
for j := 1 to m do
writeln(A[i,j],’ ‘); writeln;
end;
Kết quả in ra màn hình:
Mang vua nhap:
1 4 7 6
9 2 8 3
5 3 9 7
Bài 11: Kiểu mảng (tt)
3. Thao tác xử lý trong mảng 2 chiều
c. Các thao tác xử lý khác:
Ví dụ: Tính và đưa ra màn hình bảng cửu chương.
2 3 4 5 6 7 8 9 10
4 6 8 10 12 14 16 18 20
6 9 12 15 18 21 24 27 30
8 12 16 20 24 28 32 36 40
10 15 20 25 30 35 40 45 50
12 18 24 30 36 42 48 54 60
14 21 28 35 42 49 56 63 70
16 24 32 40 48 56 64 72 80
18 27 36 45 54 63 72 81 90
Quan sát bảng cửu chương ta thấy:
A[5,6] = 5*6 = 30
A[8,4] = 8*4 = 32
A[i,j] = i*j
Bài 11: Kiểu mảng (tt)
3. Thao tác xử lý trong mảng 2 chiều
c. Các thao tác xử lý khác:
Ví dụ: Tính và đưa ra màn hình bảng cửu chương.
2 3 4 5 6 7 8 9 10
4 6 8 10 12 14 16 18 20
6 9 12 15 18 21 24 27 30
8 12 16 20 24 28 32 36 40
10 15 20 25 30 35 40 45 50
12 18 24 30 36 42 48 54 60
14 21 28 35 42 49 56 63 70
16 24 32 40 48 56 64 72 80
18 27 36 45 54 63 72 81 90
* Tính
For i := 1 to 9 do for j := 1 to 10 do A[i,j] := i*j;
* In ra màn hình
For i := 1 to 9 do begin for j := 1 to 10 do write(A[i,j]:5); writeln; writeln; end;
Bài 11: Kiểu mảng (tt)
3. Thao tác xử lý trong mảng 2 chiều
c. Các thao tác xử lý khác:
Ví dụ: Tính và đưa ra màn hình bảng cửu chương.
Nội dung của chương trình.
Khai báo
Tính nhân
Xuất ra bảng
II. Mảng 2 chiều.
1.a. Khái niệm.
1.b. Các yếu tố.
Ví dụ
2. Khai báo.
3. Các thao tác xử lý
4. Một số ví dụ
Bài 11: Kiểu mảng (tt)
Ví dụ: Tính và đưa ra màn hình bảng cửu chương.
Nội dung của chương trình.
Khai báo
Tính nhân
Xuất ra bảng
II. Mảng 2 chiều.
1.a. Khái niệm.
1.b. Các yếu tố.
Ví dụ
2. Khai báo.
3. Các thao tác xử lý
4. Một số ví dụ
Bài 11: Kiểu mảng (tt)
KIỂU MẢNG
I. Mảng 1 chiều
Kiểm tra bài cũ
Bài 11: Kiểu mảng
Mảng một chiều là gì?
Mảng một chiều là dãy hữu hạn các phần tử có cùng kiểu dữ liệu. Các phần tử trong mảng có cùng chung một tên và phân biệt nhau bởi chỉ số.
Để xác định mảng một chiều ta cần các yếu tố nào?
Tên kiểu mảng một chiêu;
Số lượng phần tử;
Kiểu dữ liệu của các phần tử;
Cách khai báo biến mảng;
Cách tham chiếu đến phân tử;
I. Mảng 1 chiều
Kiểm tra bài cũ
Bài 11: Kiểu mảng
A
Ví dụ 1:
1 2 3 4 5 6 7 8 9 10
Với kiến thức đã học em hãy nêu những nhận xét của em về ví dụ trên?
Tên mảng:
A
Số lượng phần tử:
10
Kiểu dữ liệu của các ptử:
Kiểu nguyên
Khi tham chiếu đến ptử thứ 5 ta viết:
A[5].
A[5] = 15
Bài 11: Kiểu mảng
I. Mảng 1 chiều
Kiểm tra bài cũ
Ví dụ 2:
Với ví dụ trên em có nhận xét gì?
Ta có thể xem mỗi dòng của bảng trên là 1 mảng một chiều cùng kích thước.
Mảng 1
Mảng 2
Mảng 3
Mảng 4
Mảng 5
Như vậy ta phải sử dụng 5 mảng 1 chiều, một mảng lưu một hàng của bảng
1 2 3 4 5 6 7
Bài 11: Kiểu mảng
I. Mảng 1 chiều
Kiểm tra bài cũ
Khai báo 5 biến mảng 1 chiều
Với cách lưu trữ như vậy ta phải khai báo bao nhiêu biến mảng?
Bài 11: Kiểu mảng
I. Mảng 1 chiều
Kiểm tra bài cũ
Khai báo nhiều biến, viết chương trình dài!
Với cách khai báo như vậy ta gặp phải những khó khăn gì?
Bài 11: Kiểu mảng
I. Mảng 1 chiều
Kiểm tra bài cũ
Để khắc phục những khó khăn đó, ta xem một mảng một chiều là một phần tử, ta ghép 5 mảng một chiều lại thành một mảng hai chiều.
Vậy mảng hai chiều là gì? chúng ta cùng nhau tìm hiểu về kiểu cấu trúc của mảng hai chiều.
Bài 11: Kiểu mảng (tt)
II. Mảng 2 chiều.
1.1. Khái niệm
Mảng hai chiều là mảng một chiều mà mỗi phần tử của nó lại là mảng một chiều.
Mảng hai chiều là bảng các phần tử cùng kiểu
II. Mảng 2 chiều.
1.1. Khái niệm
1.2. Các yếu tố
Các yếu tố để xác định mảng hai chiều:
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ử.
Bài 11: Kiểu mảng (tt)
Để xác định mảng hai chiều chúng ta cần các yếu tố nào?
II. Mảng 2 chiều.
1.1. Khái niệm
1.2. Các yếu tố
Ví dụ
Bài 11: Kiểu mảng (tt)
Ví dụ:
1 2 3 4
1
2
3
Trong đó:
Tên mảng:
?
A
A
Số lượng ptử của mỗi chiều:
?
3 dòng, 4 cột
Kiểu dữ liệu của các ptử:
?
Kiểu nguyên
Khi tham chiếu đến ptử ở dòng i cột j ta viết :
?
A[i,j].
Ví dụ: A[2,3] =
?
8
2
3
II. Mảng 2 chiều.
1.1. Khái niệm.
1.2. Các yếu tố.
Ví dụ
2.1. Khai báo.
Bài 11: Kiểu mảng (tt)
Khai báo mảng 2 chiều:
Cách 1: Khai báo gián tiếp
TYPE
Ví dụ: Type Bang = array[1..9, 1..9] of integer; var A:Bang;
Cách 1: Khai báo trực tiếp
Var
chỉ số cột] of
Ví dụ: Var Bang : array[1..9, 1..9] of integer; var A,B : array[1..20, 1..30] of real;
II. Mảng 2 chiều.
1.1. Khái niệm.
1.2. Các yếu tố.
Ví dụ
2.1. Khai báo.
2.2. Tham chiếu
Bài 11: Kiểu mảng (tt)
Tham chiếu tới phần tử mảng 2 chiều:
Tham chiếu tới phần tử mảng hai chiều được xác định bởi tên mảng cùng với hai chỉ số được phân cách bởi dấu phẩy và viết trong cặp ngoặc vuông "[" và "]"
tên_biến[chỉ số hàng , chỉ số cột]
Ví dụ: Tham chiếu đến hàng thứ 5 cột thứ 7 của biến mảng B ta viết: B[5,7]
II. Mảng 2 chiều.
1.a. Khái niệm.
1.b. Các yếu tố.
Ví dụ
2. Khai báo.
3. Các thao tác xử lý
Bài 11: Kiểu mảng (tt)
Chúng ta sẽ có những thao tác nào đối với mảng 2 chiều
Cũng như mảng 1 chiều, chúng ta có các thao tác: Nhập mảng, In mảng (xuất), Tính toán…
Bài 11: Kiểu mảng (tt)
3. Thao tác xử lý trong mảng 2 chiều
a. Nhập mảng 2 chiều:
A
1
2
3
1 2 3 4
Các bước:
Thể hiện bằng Pascal
1. Nhập số dòng (n), số cột (m)
Write(‘Nhap so dong, cot: ’); readln(n,m);
2. Nhập vào giá trị của các ptử trong mảng A[i,j].
For i := 1 to n do for j := 1 to m do begin write(‘A[‘,i,’,’,j,’] =’); readln(A[i,j]; end;
1
4
7
6
9
2
8
3
5
3
9
7
Bài 11: Kiểu mảng (tt)
3. Thao tác xử lý trong mảng 2 chiều
b. In mảng 2 chiều:
1. Thông báo
Writeln(‘Mang vua nhap: ’); readln(n,m);
2. In giá trị của các phần tử
For i := 1 to n do
begin
for j := 1 to m do
writeln(A[i,j],’ ‘); writeln;
end;
Kết quả in ra màn hình:
Mang vua nhap:
1 4 7 6
9 2 8 3
5 3 9 7
Bài 11: Kiểu mảng (tt)
3. Thao tác xử lý trong mảng 2 chiều
c. Các thao tác xử lý khác:
Ví dụ: Tính và đưa ra màn hình bảng cửu chương.
2 3 4 5 6 7 8 9 10
4 6 8 10 12 14 16 18 20
6 9 12 15 18 21 24 27 30
8 12 16 20 24 28 32 36 40
10 15 20 25 30 35 40 45 50
12 18 24 30 36 42 48 54 60
14 21 28 35 42 49 56 63 70
16 24 32 40 48 56 64 72 80
18 27 36 45 54 63 72 81 90
Quan sát bảng cửu chương ta thấy:
A[5,6] = 5*6 = 30
A[8,4] = 8*4 = 32
A[i,j] = i*j
Bài 11: Kiểu mảng (tt)
3. Thao tác xử lý trong mảng 2 chiều
c. Các thao tác xử lý khác:
Ví dụ: Tính và đưa ra màn hình bảng cửu chương.
2 3 4 5 6 7 8 9 10
4 6 8 10 12 14 16 18 20
6 9 12 15 18 21 24 27 30
8 12 16 20 24 28 32 36 40
10 15 20 25 30 35 40 45 50
12 18 24 30 36 42 48 54 60
14 21 28 35 42 49 56 63 70
16 24 32 40 48 56 64 72 80
18 27 36 45 54 63 72 81 90
* Tính
For i := 1 to 9 do for j := 1 to 10 do A[i,j] := i*j;
* In ra màn hình
For i := 1 to 9 do begin for j := 1 to 10 do write(A[i,j]:5); writeln; writeln; end;
Bài 11: Kiểu mảng (tt)
3. Thao tác xử lý trong mảng 2 chiều
c. Các thao tác xử lý khác:
Ví dụ: Tính và đưa ra màn hình bảng cửu chương.
Nội dung của chương trình.
Khai báo
Tính nhân
Xuất ra bảng
II. Mảng 2 chiều.
1.a. Khái niệm.
1.b. Các yếu tố.
Ví dụ
2. Khai báo.
3. Các thao tác xử lý
4. Một số ví dụ
Bài 11: Kiểu mảng (tt)
Ví dụ: Tính và đưa ra màn hình bảng cửu chương.
Nội dung của chương trình.
Khai báo
Tính nhân
Xuất ra bảng
II. Mảng 2 chiều.
1.a. Khái niệm.
1.b. Các yếu tố.
Ví dụ
2. Khai báo.
3. Các thao tác xử lý
4. Một số ví dụ
Bài 11: Kiểu mảng (tt)
* 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ẻ: Nguyễn Đình Danh
Dung lượng: |
Lượt tài: 3
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)