Bài 11. Kiểu mảng
Chia sẻ bởi Lê Thị Thanh Thúy |
Ngày 10/05/2019 |
85
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:
KIỂM TRA BÀI CŨ
Nhập vào một số nguyên N và dãy N số nguyên (2Hãy khai báo 1 biến để nhận dãy số nguyên đó.
Hoặc:
Var A: ARRAY[1..100] OF INTEGER;
Type Mang1c= ARRAY[1..100] OF INTEGER;
Var A: Mang1c;
Tiết 24: 11 KIỂU MẢNG (T4)
I.KIỂU MẢNG MỘT CHIỀU:
II.KIỂU MẢNG HAI CHIỀU:
Ví dụ 1:Xét bài toán tính và đưa ra màn hình bảng nhân như sau:
Các NNLT cho phép biểu diễn bảng dạng như thế này bằng KDL mảng 2 chiều
*nhận xét:
Các phần tử trong bảng cùng 1 KDL(số nguyên)
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
B
-Mỗi phần tử được xác định thông qua 2 chỉ số: chỉ số dòng, chỉ số cột.
I.KIỂU MẢNG MỘT CHIỀU:
II.KIỂU MẢNG HAI CHIỀU:
1.Khái niệm:
*Các yếu tố xác định mảng 2 chiều:
-Tên kiểu mảng
-Mảng 2 chiều là bảng các phần tử có cùng 1 kiểu dữ liệu. Mỗi phần tử được xác định thông qua 2 chỉ số: dòng, cột
-Số phần tử trên một dòng, số phần tử trên một cột
-Kiểu dữ liệu chung của mọi phần tử
Tiết 24: 11 KIỂU MẢNG (T4)
I.KIỂU MẢNG MỘT CHIỀU:
II.KIỂU MẢNG HAI CHIỀU:
2.Khai báo:
Ví dụ:
Type Mang2c=ARRAY[1..9,1..10] OF INTEGER;
Var B: Mang2c;
TYPE = ARRAY [Kiểu chỉ số dòng, kiểu chỉ số cột] OF ;
1.Khái niệm:
-Mảng 2 chiều là bảng các phần tử có cùng 1 kiểu dữ liệu.
Hoặc:
VAR = ARRAY[Kiểu chỉ số dòng, kiểu chỉ số cột] OF;
VAR: ;
Tiết 24: 11 KIỂU MẢNG (T4)
II.KIỂU MẢNG HAI CHIỀU:
3. Tham chiếu tới phần tử của mảng:
B
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
B[7,4]
TÊN BIẾN MẢNG[Chỉ số dòng , chỉ số cột]
VD:Để tham chiếu tới phần tử ở dòng 2, cột 1 trong mảng B:
B[2,1]
4. Nhập -xuất dữ liệu cho biến mảng:
*Nhập giá trị cho biến mảng A có m dòng, n cột:
-Dùng 2 vòng FOR lồng nhau
FOR i:=1 TO m DO
FOR j:=1 TO n DO ;
B
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
Tiết 24: 11 KIỂU MẢNG (T4)
II.KIỂU MẢNG HAI CHIỀU:
4. Nhập -xuất dữ liệu cho biến mảng:
*Nhập: FOR i:=1 TO m DO
FOR j:=1 TO n DO
hoặc thay lệnh Read(A[i,j]) bởi:A[i,j]:=;
*Xuất: FOR i:=1 TO m DO
BEGIN
FOR j:=1 TO n DO Write(A[i,j]);
Writeln;
END;
Read(A[i,j]);
Tiết 24: 11 KIỂU MẢNG (T4)
II.KIỂU MẢNG HAI CHIỀU:
1
2
3
4
5
6
7
8
9
B[7,9]:=7*9
B
1 2 3 4 5 6 7 8 9 10
RUN
*Nhập: FOR i:=1 TO 9 DO
FOR j:=1 TO 10 DO A[i,j]:=i*j;
*Xuất: FOR i:=1 TO 9 DO
BEGIN
FOR j:=1 TO 10 DO Write(A[i,j]);
Writeln;
END;
Ví dụ 1:
5.Ví dụ áp dụng:
Tiết 24: 11 KIỂU MẢNG (T4)
II.KIỂU MẢNG HAI CHIỀU:
3.Tham chiếu tới phần tử của mảng:
4. Nhập -xuất dữ liệu cho biến mảng:
TÊN BIẾN MẢNG [Chỉ số dòng , chỉ số cột]
5.Ví dụ áp dụng:
Ví dụ 2: Viết chương trình nhập vào bảng số nguyên có m dòng, n cột và 1 số nguyên K bất kỳ. Đưa ra màn hình số lượng phần tử có giá trị nhỏ hơn số K.
INPUT: -m,n: số nguyên (số dòng, số cột); 1số nguyên k
-A:Bảng số nguyên có m dòng, n cột;
*OUTPUT: Số lượng phần tử có giá trị=k (A[i,j] =k)
PRO
Câu 1: Chọn khai báo hợp lệ:
TYPE ARRAY[1..5,1..6] OF INTEGER;
b. VAR M2C:ARRAY[1..6, -100..200] OF CHAR;
c. TYPE ARRAYB=ARRAY[1..100, -100..200] OF BOOLEAN;
d. VAR MR: ARRAY[BYTE,1..5] OF REAL;
Câu 2: Hãy cho biết chương trình sau đây thực hiện các công việc gì và kết quả của chương trình đưa ra trên màn hình?
PROGRAM VIDU;
VAR B: ARRAY[1..10,1..20] OF INTEGER;
I, J: INTEGER;
BEGIN
FOR I:=1 TO 3 DO
FOR J:=1 TO 4 DO B[I,J]:=I*J ;
FOR I:=1 TO 3 DO
FOR I:=1 TO 4 DO IF B[I,J] MOD 3 =0 THEN WRITE( B[I,J]:4);
READLN;
END.
Tiết 24: 11 KIỂU MẢNG (T4)
I.KIỂU MẢNG MỘT CHIỀU:
II.KIỂU MẢNG HAI CHIỀU:
2.Khai báo:
TYPE = ARRAY[Kiểu chỉ số dòng, kiểu chỉ số cột] OF ;
VAR: ;
1.Khái niệm:
-Mảng 2 chiều là bảng các phần tử có cùng 1 kiểu dữ liệu.
4. Nhập -xuất dữ liệu cho biến mảng:
*Nhập: FOR i:=1 TO m DO
FOR j:=1 TO n DO Read(A[i,j]);
*Xuất: FOR i:=1 TO m DO
BEGIN
FOR j:=1 TO n DO Write(A[i,j]);
Writeln;
END;
Nhập vào một số nguyên N và dãy N số nguyên (2
Hoặc:
Var A: ARRAY[1..100] OF INTEGER;
Type Mang1c= ARRAY[1..100] OF INTEGER;
Var A: Mang1c;
Tiết 24: 11 KIỂU MẢNG (T4)
I.KIỂU MẢNG MỘT CHIỀU:
II.KIỂU MẢNG HAI CHIỀU:
Ví dụ 1:Xét bài toán tính và đưa ra màn hình bảng nhân như sau:
Các NNLT cho phép biểu diễn bảng dạng như thế này bằng KDL mảng 2 chiều
*nhận xét:
Các phần tử trong bảng cùng 1 KDL(số nguyên)
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
B
-Mỗi phần tử được xác định thông qua 2 chỉ số: chỉ số dòng, chỉ số cột.
I.KIỂU MẢNG MỘT CHIỀU:
II.KIỂU MẢNG HAI CHIỀU:
1.Khái niệm:
*Các yếu tố xác định mảng 2 chiều:
-Tên kiểu mảng
-Mảng 2 chiều là bảng các phần tử có cùng 1 kiểu dữ liệu. Mỗi phần tử được xác định thông qua 2 chỉ số: dòng, cột
-Số phần tử trên một dòng, số phần tử trên một cột
-Kiểu dữ liệu chung của mọi phần tử
Tiết 24: 11 KIỂU MẢNG (T4)
I.KIỂU MẢNG MỘT CHIỀU:
II.KIỂU MẢNG HAI CHIỀU:
2.Khai báo:
Ví dụ:
Type Mang2c=ARRAY[1..9,1..10] OF INTEGER;
Var B: Mang2c;
TYPE
1.Khái niệm:
-Mảng 2 chiều là bảng các phần tử có cùng 1 kiểu dữ liệu.
Hoặc:
VAR
VAR
Tiết 24: 11 KIỂU MẢNG (T4)
II.KIỂU MẢNG HAI CHIỀU:
3. Tham chiếu tới phần tử của mảng:
B
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
B[7,4]
TÊN BIẾN MẢNG[Chỉ số dòng , chỉ số cột]
VD:Để tham chiếu tới phần tử ở dòng 2, cột 1 trong mảng B:
B[2,1]
4. Nhập -xuất dữ liệu cho biến mảng:
*Nhập giá trị cho biến mảng A có m dòng, n cột:
-Dùng 2 vòng FOR lồng nhau
FOR i:=1 TO m DO
FOR j:=1 TO n DO
B
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
Tiết 24: 11 KIỂU MẢNG (T4)
II.KIỂU MẢNG HAI CHIỀU:
4. Nhập -xuất dữ liệu cho biến mảng:
*Nhập: FOR i:=1 TO m DO
FOR j:=1 TO n DO
hoặc thay lệnh Read(A[i,j]) bởi:A[i,j]:=
*Xuất: FOR i:=1 TO m DO
BEGIN
FOR j:=1 TO n DO Write(A[i,j]);
Writeln;
END;
Read(A[i,j]);
Tiết 24: 11 KIỂU MẢNG (T4)
II.KIỂU MẢNG HAI CHIỀU:
1
2
3
4
5
6
7
8
9
B[7,9]:=7*9
B
1 2 3 4 5 6 7 8 9 10
RUN
*Nhập: FOR i:=1 TO 9 DO
FOR j:=1 TO 10 DO A[i,j]:=i*j;
*Xuất: FOR i:=1 TO 9 DO
BEGIN
FOR j:=1 TO 10 DO Write(A[i,j]);
Writeln;
END;
Ví dụ 1:
5.Ví dụ áp dụng:
Tiết 24: 11 KIỂU MẢNG (T4)
II.KIỂU MẢNG HAI CHIỀU:
3.Tham chiếu tới phần tử của mảng:
4. Nhập -xuất dữ liệu cho biến mảng:
TÊN BIẾN MẢNG [Chỉ số dòng , chỉ số cột]
5.Ví dụ áp dụng:
Ví dụ 2: Viết chương trình nhập vào bảng số nguyên có m dòng, n cột và 1 số nguyên K bất kỳ. Đưa ra màn hình số lượng phần tử có giá trị nhỏ hơn số K.
INPUT: -m,n: số nguyên (số dòng, số cột); 1số nguyên k
-A:Bảng số nguyên có m dòng, n cột;
*OUTPUT: Số lượng phần tử có giá trị=k (A[i,j] =k)
PRO
Câu 1: Chọn khai báo hợp lệ:
TYPE ARRAY[1..5,1..6] OF INTEGER;
b. VAR M2C:ARRAY[1..6, -100..200] OF CHAR;
c. TYPE ARRAYB=ARRAY[1..100, -100..200] OF BOOLEAN;
d. VAR MR: ARRAY[BYTE,1..5] OF REAL;
Câu 2: Hãy cho biết chương trình sau đây thực hiện các công việc gì và kết quả của chương trình đưa ra trên màn hình?
PROGRAM VIDU;
VAR B: ARRAY[1..10,1..20] OF INTEGER;
I, J: INTEGER;
BEGIN
FOR I:=1 TO 3 DO
FOR J:=1 TO 4 DO B[I,J]:=I*J ;
FOR I:=1 TO 3 DO
FOR I:=1 TO 4 DO IF B[I,J] MOD 3 =0 THEN WRITE( B[I,J]:4);
READLN;
END.
Tiết 24: 11 KIỂU MẢNG (T4)
I.KIỂU MẢNG MỘT CHIỀU:
II.KIỂU MẢNG HAI CHIỀU:
2.Khai báo:
TYPE
VAR
1.Khái niệm:
-Mảng 2 chiều là bảng các phần tử có cùng 1 kiểu dữ liệu.
4. Nhập -xuất dữ liệu cho biến mảng:
*Nhập: FOR i:=1 TO m DO
FOR j:=1 TO n DO Read(A[i,j]);
*Xuất: FOR i:=1 TO m DO
BEGIN
FOR j:=1 TO n DO Write(A[i,j]);
Writeln;
END;
* 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ê Thị Thanh Thúy
Dung lượng: |
Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)