Giáo án tin học lớp 11 - Tiết 39
1.Mục đích, yêu cầu
1.Kiến thức
Giúp học sinh:
- Vận dụng các bước làm việc với tệp: gán tên cho biến tệp, mở tệp đọc ghi tệp, đóng tệp, vào các bài toán cụ thể.
- Biết vận dụng một số hàm và thủ tục chuẩn làm việc với tệp như: khai báo, gán tên tệp cho biến tệp, mở tệp, đọc/ ghi dữ liệu cho biến tệp, đóng tệp.
2.Kỹ năng
- Hình thành kỹ năng về các thao tác cơ bản khi làm việc với tệp như: khai báo, gán tên tệp cho biến tệp, mở tệp, đọc/ghi dữ liệu cho biến tệp, đóng tệp.
GIÁO ÁN TIN HỌC LỚP 11 PPCT: Tiết 39 §16: VÍ DỤ LÀM VIỆC VỚI TỆP (TIẾT 1) Ngày soạn: 01/09/2013 Ngày giảng:06/09/2013 Người dạy:Đào Thị Lệ Như Gv hướng dẫn: Ngô Thị Tú Quyên I.Mục đích, yêu cầu 1.Kiến thức Giúp học sinh: Vận dụng các bước làm việc với tệp: gán tên cho biến tệp, mở tệp đọc ghi tệp, đóng tệp, vào các bài toán cụ thể. Biết vận dụng một số hàm và thủ tục chuẩn làm việc với tệp như: khai báo, gán tên tệp cho biến tệp, mở tệp, đọc/ ghi dữ liệu cho biến tệp, đóng tệp. 2.Kỹ năng Hình thành kỹ năng về các thao tác cơ bản khi làm việc với tệp như: khai báo, gán tên tệp cho biến tệp, mở tệp, đọc/ghi dữ liệu cho biến tệp, đóng tệp. 3.Thái độ Thấy được sự cần thiết và tiện lợi của kiểu dữ liệu tệp. Có ý thức lưu trữ dữ liệu một cách khoa học. II.Chuẩn bị của thầy và trò 1.Chuẩn bị của giáo viên SGK lớp 11, SBT, giáo án, đồ dùng dạy học. 2.Chuẩn bị của học sinh Vở ghi, SGK, SBT, ôn luyện các kiến thức về tệp như : các thao tác làm việc với tệp: đọc/ghi dữ liệu cho biến tệp, khai báo, gán tên tệp cho biến tệp, đóng tệp. III. Hoạt động dạy học Ổn định tổ chức dạy học Kiểm tra bài cũ (8 phút) Gv yêu cầu hs gấp sách vở lại và tiến hành kiểm tra bài cũ Gv viết câu hỏi lên bảng: yêu cầu hs lên bảng viết các câu lệnh thực hiện các yêu cầu sau đây: khai báo 1 biến tệp văn bản? gắn tên cho biến tệp trên là ‘Baitap.txt’? mở tệp trên để đọc dữ liệu? đọc từ tệp trên 2 biến x,y bất kỳ? đóng tệp trên? Sau khi hs hoàn thành đầy đủ các câu hỏi trên thì gv có thể hỏi thêm câu hỏi sau. Gv nêu câu hỏi: Em hãy cho biết bài trước chúng ta đã được học những hàm nào thường hay được sử dụng trong việc đọc/ghi tệp? Đáp án: var tep1: text; assign (tep1,’Baitap.txt’); reset (tep1); read (tep1,x,y); close (tep1); Câu hỏi mà GV hỏi thêm: Hàm eof () trả về giá trị true nếu con trỏ tệp đang chỉ tới cuối tệp - Gv nhận xét và cho điểm 3. Bài mới - Đặt vấn đề: Ở bài học hôm trước chúng ta đã tìm hiểu về kiểu dữ liệu và các thao tác làm việc với tệp. Vậy để củng cố, rèn luyện cũng như để hiểu thêm các kiến thức về tệp chúng ta đi vào nghiên cứu nội dung bài học ngày hôm nay § 16: VÍ DỤ LÀM VIỆC VỚI TỆP Nội dung Hoạt động của Gv Hoạt động của Hs Thời gian Hoạt động 1: Tìm hiểu ví dụ 1.Ví dụ 1 (SGK/Tr87) ? Yêu cầu hs đọc nội dung ví dụ 1 trong SGK trang 87 - Giải thích ví dụ: bài toán yêu cầu tính khoảng cách từ trại của thầy hiệu trưởng có tọa độ (0,0) đến trại của từng GVCN tọa độ (x,y) được lưu trong tệp TRAI.TXT - Đứng tại chỗ đọc bài ? Một em xđ Input và Output của bài toán trên - Suy nghĩ và trả lời - Input: Tệp TRAI.TXT chứa các cặp số nguyên (x,y) tương ứng với vị trí trại của GVCN các lớp - Output: Khoảng cách từ trại của thầy hiệu trưởng (0,0) đến trại của GVCN các lớp Hoạt động 2: Tìm hiểu cách giải bài toán - Đưa bài toán trên về bài toán tính khoảng cách giữa 2 điểm bất kỳ. Hình vẽ minh họa: A B - Với 2 điểm A(x1,y1) và điểm B(x2,y2) có tọa độ được cho như trên, nếu ta gọi d là khoảng cách giữa 2 điểm A,B ? Dựa vào kiến thức toán học em nào cho cô biết khi đó D được tính bằng công thức nào? - Suy nghĩ và trả lời d = ? Vậy nếu khi A(0,0) và B(x,y) bất kỳ thì khoảng cách giữa 2 điểm A,B khi này sẽ được tính bằng công thức nào? d= - Tức là trong bài toán này ta sẽ đọc từng cặp tọa độ (x,y) từ tệp TRAI.TXT. Sau đó tính và in khoảng cách ra màn hình. Trong tệp TRAI.TXT sẽ chứa tất cả các tọa độ của các trại (đặt cách nhau bởi dấu cách) - Công việc của chúng ta là lặp lại việc đọc từng cặp tọa độ và tính khoảng cách của chúng tới tọa độ (0,0) cho đến khi hết tệp. - Chú ý nghe giảng Hoạt động 3: Viết chương trình - Trên đây chúng ta đã đưa ra được công thức tính khoảng cách từ trại của thầy hiệu trưởng tới trại của GVCN các lớp theo công thức d bằng toán học. Vậy để máy tính có thể hiểu và thực hiện việc tính khoảng cách theo công thức d thì ta phải biểu diễn như thế nào. Sau đây cô sẽ hướng dẫn cả lớp viết từng câu lệnh để giải quyết bài toán trên. - Tập trung nghe giảng ? Bắt đầu là phần khai báo, quan sát lại ví dụ bạn nào cho có biết với bài toán này ta sẽ phải sử dụng bao nhiêu biến và kiểu dữ liệu tương ứng của từng biến là gì? - Ta sử dụng các biến sau : Biến d :real để tính khoảng cách Biến tệp f : text Biến x,y : integer biểu diễn tọa độ của các trại. ? Cô có thể khai báo biến d: integer được không và tại sao? - Không được, do kết quả phép căn bậc 2 trả về là kiểu số thực - Tới phần thân chương trình ? Theo đề bài thì biến tệp f trên có tên là TRAI.TXT. Vậy ta phải sử dụng câu lệnh nào để gắn tên tệp? - Dùng câu lệnh sau : Assign (f, ‘TRAI.TXT’) ? Để tính được khoảng cách ta phải đọc từng cặp tọa độ của từng trại từ tệp TRAI.TXT. Trước khi tiến hành đọc tọa độ các trại ta phải có 1 câu lệnh để mở tệp. Vậy bạn nào cho cô biết ta sử dụng câu lệnh nào để mở tệp? Reset (f) - Như các em đã được học ở bài 10: Cấu trúc lặp - Chúng ta đã biết 2 cấu trúc lặp đó là : Lặp với số lần biết trước và câu lệnh for_do, lặp với số lần chưa biết trước và câu lệnh while_do - Với bài toán này ta phải sử dụng 1 cấu trúc lặp để tiến hành việc đọc lần lượt từng tọa độ trại. Do chúng ta không được biết trước số lượng phần tử của tệp TRAI.TXT nên phải sử dụng cấu trúc lặp while_ do. ? Vậy bạn nào cho cô biết công việc này của chúng ta sẽ dừng khi nào? - Sẽ dừng lại khi hết tệp - Ở bài học hôm trước các em đã được biết tới hàm eof () trả về giá trị true nếu con trỏ tệp đang chỉ tới cuối tệp. - Vậy để kiểm tra xem tệp đã kết thúc chưa ta sử dụng not eof ? Vậy bạn nào cho cô biết khi này câu lệnh while_ do sẽ được biểu diễn như thế nào? - While not eof (f ) do - Đúng vậy sau 1 lần đọc nếu kiểm tra câu lệnh while_ do còn thỏa mãn điều kiện thì ta còn tiến hành việc đọc tọa độ từ tệp, tính khoảng cách và in khoảng cách đó ra màn hình. Vậy sau do là 1 dãy các câu lệnh nên ta phải đặt chúng trong từ khóa begin..end. - Gv phân tích rõ ràng lần lượt, thứ tự các công việc cần làm sau do ở phần bảng phụ ? Thứ nhất đó là đọc tọa độ (x,y) của từng trại từ tệp TRAI.TXT ta phải sử dụng câu lệnh nào? - Read (f,x,y); ? Tiếp theo đó là thức hiện việc tính khoảng cách theo công thức d như ở trên. Vậy ta sẽ sử dựng hàm nào để tính căn bậc 2 và công thức d sẽ được biểu diễn như thế nào? - Ta sử dụng là sqrt để tính căn bậc 2 và công thức tính d:=sqrt (x*x+y*y); ? Cuối cùng là in khoảng cách ra màn hình. Ta phải sử dụng câu lệnh nào? - Gv cần chú ý cho hs do biến d ta khai báo ở kiểu số thực vậy nên khi viết d ra màn hình ta phải viết ở dạng có quy cách - Một điểm cần đặc biết lưu ý đó là khi kết thúc phiên làm việc với tệp chúng ta cần phải có câu lệnh đóng tệp. Việc đóng tệp là đặc biết quan trọng sau khi ghi dữ liệu, khi đó hệ thống mới thưc sự hoàn tất việc ghi dữ liệu ra tệp - Writeln (‘Khoảng cách:’,d:10:2) ? Vậy với bài này để đóng tệp ta sử dụng câu lệnh nào? - Close (f) Hoạt động 4: Mở rộng bài toán ? Giờ vẫn với bài toán trên nhưng cô thay tọa độ trại của thầy hiệu trưởng không phải là (0,0) nữa mà là tọa độ (a,b) bất kỳ được nhập từ bàn phím thì khi đó bài toán này sẽ giải quyết như thế nào? - Nghe giảng, chép yêu cầu và hướng dẫn của gv để về nhà hoàn thiện bài - Gv hướng dẫn: Trước tiên các em cần phải khai báo thêm 2 biến a,b kiểu integer để nhập tọa độ trại của thầy hiệu trưởng từ bàn phím. - Tiếp theo là phải sử dụng hàm nhập, xuất chuẩn để nhập và in tọa độ trại thầy hiệu trưởng ra màn hình bằng cách câu lệnh writeln và readln ? Yêu cầu thứ 2 đó là tệp này vẫn là tệp TRAI.TXT với dòng đầu tiên là 1 cặp gồm 2 số là tọa độ trại hiệu trưởng. - Từ dòng thứ 2 trở đi là tọa độ trại của mỗi giáo viên từng lớp. Vậy thì ta phải sử dụng câu lệnh nào để giải quyết bài toán này? - Do yêu cầu là tọa độ mỗi trại ở trên 1 dòng khác nhau nên ta phải sử dụng câu lệnh readln Củng cố Qua bài học hôm nay các em cần nắm rõ và hiểu hơn về các thao tác làm việc với tệp. Dặn dò Giao bài tập về nhà (giáo viên cụ thể ghi yêu cầu lên bảng + Các em về hoàn thiện chương trình dựa vào những hướng dẫn ở trên của cô + Làm 2 yêu cầu cô mới giao + Đọc và nghiên cứu tiếp ví dụ 2 ( SGK /Tr.87)
File đính kèm:
- 16 VI DU LAM VIEC VOI TEP TIET 1.doc