Tìm kiếm theo tiêu đề

Tin tức cộng đồng

[MỜI HỢP TÁC] Các kỳ thi Olympic Quốc tế 2026 (IMO - IEO - ISO)

Kính gửi Quý Lãnh đạo, Ban Giám hiệu và Quý Thầy/Cô, FermatTech (Đối tác Google tại VN) phối hợp cùng SCO Ấn Độ trân trọng kính mời tham gia 3 kỳ thi uy tín dành cho HS từ lớp 1 - 12: - IMO: Olympic Toán Quốc tế. - IEO: Olympic Tiếng Anh Quốc tế. - ISO: Olympic Khoa học...
Xem tiếp

Tin tức thư viện

Chức năng Dừng xem quảng cáo trên violet.vn

12087057 Kính chào các thầy, cô! Hiện tại, kinh phí duy trì hệ thống dựa chủ yếu vào việc đặt quảng cáo trên hệ thống. Tuy nhiên, đôi khi có gây một số trở ngại đối với thầy, cô khi truy cập. Vì vậy, để thuận tiện trong việc sử dụng thư viện hệ thống đã cung cấp chức năng...
Xem tiếp

Hỗ trợ kĩ thuật

  • (024) 62 930 536
  • 0919 124 899
  • hotro@violet.vn

Liên hệ quảng cáo

  • (024) 66 745 632
  • 096 181 2005
  • contact@bachkim.vn

Bài 11. Kiểu mảng

Wait
  • Begin_button
  • Prev_button
  • Play_button
  • Stop_button
  • Next_button
  • End_button
  • 0 / 0
  • Loading_status
Tham khảo cùng nội dung: Bài giảng, Giáo án, E-learning, Bài mẫu, Sách giáo khoa, ...
Nhấn vào đây để tải về
Báo tài liệu có sai sót
Nhắn tin cho tác giả
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Ngô Nguyễn Thanh Duy
Ngày gửi: 12h:48' 09-01-2010
Dung lượng: 1'018.0 KB
Số lượt tải: 136
Số lượt thích: 0 người
Bài 11 (tt)
mảng hai chiều
Là bảng các phần tử cùng kiểu
A
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;
Ví dụ:
? Kiểu dữ liệu của các phần tử: Kiểu nguyên;
7
9
3
5
3
8
2
9
6
7
4
1
1 2 3 4
1
2
3
a. Khái niệm
b. Khai báo mảng hai chiều
* Cách 1: Khai báo trực tiếp
Var < tên biến mảng> : array[Kiểu chỉ số dòng,kiểu chỉ số cột] of ;
Var A,B: array[1..20,1..30] of real;
Ví dụ: Var Bang: array[1..9,1..9] of integer;
* Cách 2: Khai báo gián tiếp
TYPE < tên kiểu mảng> = 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;
* Tham chiếu tới một phần tử của mảng hai chiều:
[chỉ số dòng, chỉ số cột]
Ví dụ: Tham chiếu tới phần tử ở hàng thứ 5, cột thứ 9 của mảng A được viết như sau: A[5.9]
c. Một số thao tác:
1. NhËp sè dßng (n) vµ 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;
Các bước:
Thể hiện bằng pascal
1. Nhập mảng hai chiều
A
7
9
3
5
3
8
2
9
6
7
4
1
2. In mảng hai chiều
Writeln(‘ Mang vua nhap : ’);
For i:=1 to n do
Begin
For j:=1 to m do Write(A[i,j],’ ’);
Writeln;
end;
Mang vua nhap:
1 4 7 6
9 2 8 3
5 3 9 7
1. Th«ng b¸o
2. In gi¸ trÞ cña c¸c phÇn tö
Kết quả in ra màn hình:
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.
For i :=1 to 9 do
For j:=1 to 9 do
A[i,j] := i*j;
c. Một số ví dụ:
Ví dụ1: Tính và in ra màn hình bảng nhân.
For i :=1 to 9 do
Begin
For j:=1 to 9 do write(A[i,j]:5);
writeln; writeln;
End;
Bây giờ các em hãy viết chương trình hoàn chỉnh
cho bài toán ví dụ.
* Tính
* IN ra màn hình
Quan sát bảng nhân ta thấy:
A[2,5]=2 x 5 = 10
A[5,8]=5 x 8 = 40
A[i,j]=i*j
Ví dụ2: Nhập vào mảng hai chiều B gồm 5 hàng và 7 cột với các phần tử là các số nguyên và một số nguyên k. Xuất ra màn hình các phần tử của mảng có giá trị nhỏ hơn k.
?Nhập các phần tử:
for i:=1 to 5 do
begin
for j:=1 to 7 do
begin
write(`b[`,i,`,`,j,‘]= `);
readln(b[i,j]);
end;
writeln;
end;
?Nhập số nguyên k:
d:=0;
writeln(`Danh sach cac phan tu mang nho hon `,k,` la: `);
for i:=1 to 5 do
for j:=1 to 7 do
if b[i,j] < k then
begin
writeln(`b[`,i,`,`,j,`]= `,b[i,j]);
d:=d+1;
end;
if d=0 then
write(`Khong co phan tu nao nho hon `,k);
?Xuất kết quả:
write(`Nhap vao gia tri k= `);
readln(k);
Đếm các phần tử < k
Hãy nhớ!
? 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.
? Khai báo: tên mảng, kiểu chỉ số dòng, kiểu chỉ số cột, kiểu phần tử.
? Tham chiếu phần tử mảng:
Tên biến mảng[cs dòng,cs cột]
? Thao tác xử lí thường dùng cấu trúc hai câu lệnh FOR . DO lồng nhau.
20 19
25 18
12 16
Var
A:ARRAY[1..10,1..10] OF integer;
A[1,3] = 19
 
Gửi ý kiến