Tin học 11 – Kiểu mảng_ MẢNG HAI CHIỀU potx

6 460 0
Tin học 11 – Kiểu mảng_ MẢNG HAI CHIỀU potx

Đang tải... (xem toàn văn)

Thông tin tài liệu

Tin hc 11 Kiu mng Trn vn thnh CNTT- HSPHN 1 Kiu mng (tip) MNG HAI CHIU A - Mục đích, yêu cầu - Học sinh cần nắm đợc cách khai báo dữ liệu mảng hai chiều - Học sinh cần có các kĩ năng: + Nhận biết đợc các thành phần trong khai báo kiểu mảng hai chiều. + Nhận biết đợc định danh của của một phần tử mảng hai chiều xuất hiện trong cùng một chơng trình. + Viết đợc khai báo mảng hai chiều với các chỉ số đều thuộc kiểu miền con của kiểu nguyên. B - Phơng pháp, phơng tiện 1. Phơng pháp - Củng cố kiến thức về mảng một chiều cho học sinh đồng thời tận dụng những hiểu biết đó để xây dựng kiến thức mới về mảng hai chiều cho học sinh. - Trên cơ sở học sinh đã biết về mảng một chiều ta dùng bảng đánh các chỉ số dòng và cột tơng ứng để giới thiệu với học sinh về mảng hai chiều. 2. Phơng tiện học tập - Vở ghi lý thuyết Tin học lớp 11. - Sách giáo khoa Tin học lớp 11. C - Tiến trình lên lớp, nội dung bài giảng I. ổn định lớp (1) - Yêu cầu lớp trởng báo cáo sĩ số. II. Kiểm tra bài cũ và gợi động cơ (5) - Kiểm tra hiểu biết của học sinh về mảng một chiều - Kĩ năng khai báo và truy xuất phần tử thuộc mảng. III. Nội dung bài giảng STT Nội dung Hoạt động của thầy và trò T .gi an Tin hc 11 Kiu mng Trn vn thnh CNTT- HSPHN 2 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 mảng lại là một mảng một chiều. - Giống nh mảng một chiều, có thể truy xuất (hay thao tác) trên mỗi phần tử của mảng hai chiều, nhng khác ở chỗ mỗi phần tử của mảng hai chiều có hai chỉ số (chứ không phải một chỉ số nh mảng một chiều) và do vậy nó đợc xác định bởi tên mảng và hai chỉ số. - Lấy ví dụ: dòng cột 1 2 3 4 1 7 10 9 3 2 8 6 5 6 Thầy hỏi: - Hãy cho biết phần tử ở dòng thứ 1 cột 3 có giá trị là mấy? Trả lời: - Có giá trị là 9 - Đây chính là hình ảnh và cách truy xuất vào mảng hai chiều. 10 2 Cách khai báo kiểu dữ liệu mảng hai chiều - Khai báo mảng hai chiều mỗi phần tử của mảng lại là một mảng một chiều - Ta dùng hai lần từ khoá ARRAY trong khai báo biến với từ khóa VAR VAR <tên biến mảng> : ARRAY [kiểu chỉ số dòng] of ARRAY [kiểu chỉ số cột] of <kiểu phẩn tử>; - Trong TuborPascal cho phép ta có thể khai báo - Thầy hỏi: Em hãy cho ví dụ? ARRAY Mang : ARRAY [1 3] of ARRAY [1 4] of integer ; Giải thích: Ta đã khai báo biến Mang gồm 3 phần tử, mỗi phần tử của biến Mang có kiểu mảng gồm 4 phần tử kiểu số nguyên. - Trong TuborPascal cho phép ta có thể khai báo ngắn gọn nh sau: ARRAY Mang : ARRAY 10 Tin hc 11 Kiu mng Trn vn thnh CNTT- HSPHN 3 ngắn gọn nh sau: VAR <tên biến mảng>: ARRAY [kiểu chỉ số dòng, kiểu chỉ số cột] of <kiểu phần tử>; - Khai báo với từ khóa TYPE TYPE <tên kiểu mảng> = ARRAY [kiểu chỉ số dòng,kiểu chỉ số cột] of <kiểu phẩn tử>; Và khai báo biến mảng hai chiều có dạng: VAR <tên biến mảng> : <tên kiểu mảng>; [1 3,1 4] of integer ; Ví dụ cụ thể với cách khai báo dùng từ khóa TYPE TYPE Mang = ARRAY [1 3] of ARRAY [1 4] of integer ; Khai báo biến mảng VAR Mang1, Mang2: Mang; - Khai báo với từ khóaTYPE có lợi gì? Có thể sử dụng lại nhiều lần với các biến mảng có cùng kiểu mảng. Ví dụ cụ thể: Xét bài toán: Tính và đa ra màn hình bảng cửu chơng. Giải: Có thể mô tả dữ liệu của bảng cửu chơng là kiểu mảng một chiều gồm 9 phần tử, mỗi phần tử lại là mảng một chiều có 9 phần tử, mỗi phần tử là một số nguyên. ARRAY Mang : ARRAY [1 9] of ARRAY [1 9] of integer ; Hoặc là khai báo mảng hai chiều ARRAY Mang : ARRAY [1 9,1 9] of integer ; Tin hc 11 Kiu mng Trn vn thnh CNTT- HSPHN 4 3 Cách truy nhập đến các phần tử của mảng hai chiều - Giống nh khai báo kiểu dữ liệu mảng một chiều, ngời lập trình cần phải xác định kiểu của các phần tử tạo nên mảng và kiểu chỉ số. - Giống nh mảng một chiều, các thao tác nhập, xuất hay xử lí mỗi phần tử của mảng phải tuân theo quy định của kiểu phần tử của mảng. - Việc thực hiện các thao tác nào đó (nhập, xuất hay xử lí ) lần lợt trên các phần tử của mảng hai chiều thờng gắn với hai câu lệnh FOR - DO lồng nhau. - Cách dùng lệnh để lấy ngẫu nhiên một số nguyên trong khoảng từ 0 đến N-1, giới hạn N do ngời lập trình đa ra. Dùng hàm Random(N) Cụ thể: Mang [i,j ] = random(N); - Chú ý: Khi khai báo kích thớc của mảng phải chú ý đến dung lợng cho phép của bộ nhớ dành cho chơng Thầy hỏi - Em hãy so sánh sự khác nhau giữa chỉ số mảng một chiều và chỉ số mảng hai chiều? Mảng một chiều chỉ cần một chỉ số, mảng hai chiều cần hai chỉ số và hai chỉ số phải độc lập nhau. Ví dụ cụ thể Xét bài toán: Tính và đa ra màn hình bảng cửu chơng. Giải - Có thể mô tả dữ liệu của bảng cửu chơng là kiểu mảng hai chiều ARRAY Mang : ARRAY [1 9,1 9] of integer ; For i:=1 to 9 DO For j=1 to 9 DO {các câu lệnh nhập, xuất, hay thao tác xử lí với phần tử của mảng hai chiều} Kết quả: chơng trình tính và đa ra kết quả của bảng cửu chơng 1 2 3 4 5 6 7 8 9 2 4 6 8 1 0 1 2 1 4 1 6 1 8 3 6 9 1 2 1 5 1 8 2 1 2 4 2 7 1 5 Tin hc 11 Kiu mng Trn vn thnh CNTT- HSPHN 5 trình. Có chơng trình khai báo không sai cú pháp nhng vợt quá kích thớc cho phép, chơng trình dịch sẽ báo lỗi Structure too large, ví dụ: Var M, N : array [1 10000] of longint; {Chiếm : 2*10000*4byte>64Kb} 4 8 1 2 1 6 2 0 2 4 2 8 3 2 3 6 5 1 0 1 5 2 0 2 5 3 0 3 5 4 0 4 5 6 1 2 1 8 2 4 3 0 3 6 4 2 4 8 5 4 7 1 4 2 1 2 8 3 5 4 2 4 9 5 6 6 3 8 1 6 2 4 3 2 4 0 4 8 5 6 6 4 7 2 9 1 8 2 7 3 6 4 5 5 4 6 3 7 2 8 1 Thầy và trò cùng nhau viết một chơng trình tính bảng cửu chơng hoàn thiện: Chơng trình Program bangcuuchuong; Uses crt; Var b: array[1 9,1 9]of integer; i,j: integer; Begin Clrscr; For i:=1 to 9 do For j:=1 to 9 do B[i,j]= i*j; For i:=1 to 9 do Begin For j:=1 to 9 do Write (b[i,j]:3); Writeln;writeln; End; Tin hc 11 Kiu mng Trn vn thnh CNTT- HSPHN 6 Realn; End. IV. Củng cố bài học (5) - Kiểu mảng một chiều thờng đợc dùng trong những chơng trình cần tổ chức dữ liệu nh một dãy các phần tử cùng kiểu để giải quyết bài toán đặt ra. - Khi cần tổ chức dữ liệu dạng bảng ngời ta nghĩ đến dùng mảng hai chiều. - Mỗi biến mảng có nhiều phần tử tạo nên và đều có chỉ số : Mảng một chiều có một kiểu chỉ số, mảng hai chiều có hai kiểu chỉ số. IV. Bài tập về nhà (2) - Làm các bài tập trong sách giáo khoa để thành thạo cách khai báo cách truy xuất đến một phần tử của mảng là một kiểu dữ liệu có cấu trúc rất hay đợc dùng trong lập trình. IV. Nhận xét của thầy hớng dẫn Nhn xột, ỏnh giỏ ca giỏo viờn v tit hc . truy xuất vào mảng hai chiều. 10 2 Cách khai báo kiểu dữ liệu mảng hai chiều - Khai báo mảng hai chiều mỗi phần tử của mảng lại là một mảng một chiều - Ta dùng hai lần từ khoá. niệm - Mảng hai chiều là mảng một chiều mà mỗi phần tử của mảng lại là một mảng một chiều. - Giống nh mảng một chiều, có thể truy xuất (hay thao tác) trên mỗi phần tử của mảng hai chiều, . thành phần trong khai báo kiểu mảng hai chiều. + Nhận biết đợc định danh của của một phần tử mảng hai chiều xuất hiện trong cùng một chơng trình. + Viết đợc khai báo mảng hai chiều với các chỉ

Ngày đăng: 11/08/2014, 07:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan