Bài 11. Kiểu mảng

Chia sẻ bởi Nguyễn Hoàng Long | Ngày 10/05/2019 | 58

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:

TRẦN HỮU TRANG
TRƯỜNG TRUNG HỌC PHỔ THÔNG

TIN HỌC 11
Đặng Hữu Hoàng
BÀI 11
KIỂU MẢNG HAI CHIỀU
Thời gian 1 tiết
1. KHÁI NIỆM KIỂU MẢNG HAI CHIỀU
Nghiên cứu sách giáo khoa, em hiểu như thế nào là mảng hai chiều?
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.
Mảng hai chiều là bảng các phần tử cùng kiểu.
Những yếu tố nào để xác định mảng hai chiều?
Tên kiểu mảng.
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ử.
A
Ví dụ
1 2 3 4
1

2

3
Trong đó
* Khi tham chiếu đến phần tử ở dòng i cột j ta viết: A[i,j].
Ví dụ: A[2,3]= 8.
* Tên mảng: A;
* Mảng gồm: 3 dòng 4 cột;
* Kiểu dữ liệu của các phần tử: kiểu nguyên;

1

7

3

9

6

7

4

2

8

9

3

5
2. KHAI BÁO KIỂU MẢNG HAI CHIỀU TRONG PASCAL
Cấu trúc khai báo gián tiếp kiểu mảng hai chiều trong Pascal?
TYPE = array[] of ;
Ví dụ: Type bang = array[1..9,1..9] of integer;
Var A:bang;
VAR : ;
2. KHAI BÁO KIỂU MẢNG HAI CHIỀU TRONG PASCAL
Cấu trúc khai báo trực tiếp kiểu mảng hai chiều trong Pascal?
VAR : array[] of ;
Ví dụ: Var bang : array[1..9,1..9] of integer;
Var B : array[1..10,1..20] of real;
Quan sát một số khai báo kiểu mảng hai chiều hợp lệ như sau:
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;
Cấu trúc khi tham chiếu tới phần tử của mảng hai chiều?
[chỉ số dòng,chỉ số cột]
3. THAM CHIẾU TỚI PHẦN TỬ CỦA MẢNG
A
1 2 3 4
* Khi tham chiếu đến phần tử ở dòng i cột j ta viết: A[i,j].
Ví dụ: A[2,3]= 8.

1

7

3

9

6

7

4

2

8

9

3

5
1

2

3
Quan sát sách giáo khoa trang 61, chương trình tính và đưa ra màn hình bảng nhân trong Pascal
Thuật toán
Chương trình Pascal
1. Nhập số dòng (n), số cột (m)
Write(‘ Nhap vao so dong, cot:’);
Readln(n,m);
2. Nhập vào giá trị của các phần tử 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;
Writeln(‘ Mang vua nhap : ’);
For i:=1 to n do
Begin
For j:=1 to m do Write(A[i,j],’ ’);
Writeln;
end;
3. Thông báo ra màn hình
4. In giá trị các phần tử
Các thao tác xử lí mảng hai chiều thường dùng hai câu lệnh For...do lồng nhau.
Quan sát chương trình chạy và các kết quả như sau
Quan sát sách giáo khoa trang 62, chương trình nhập vào từ bàn phím các phần tử của mảng hai chiều B gồm 5 hàng, 7 cột với các phần tử là các số nguyên và một số nguyên k. Sau đó đưa ra màn hình các phần tử của mảng có giá trị nhỏ hơn k.
Tính và in ra màn hình bảng cửu chương
For i :=1 to 9 do
For j:=1 to 9 do
A[i,j] := i*j;
For i :=1 to 9 do
Begin
For j:=1 to 9 do write(A[i,j]:5);
writeln;
End;
* Tính
* In ra màn hình
Quan sát bảng cửu chương ta thấy
A[2,5]=2 x 5 = 10
A[5,8]=5 x 8 = 40
A[i,j]=i*j
Hãy viết hoàn chỉnh bài tính và in ra màn hình bảng cửu chương
DẶN DÒ
1. Thực hành “Bài tập và thực hành 3” _Trang 63 _ Sách giáo khoa.
2. Thực hiện bài tập 9 _ trang 80 _Sách Giáo khoa
Thực hiện tháng 01 năm 2008
Thân ái chào các em
Bài học đã
KẾT THÚC
E_mail: [email protected]
* 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 Hoàng Long
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)