Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 111 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
111
Dung lượng
0,98 MB
Nội dung
TRƯỜNG THPT PHÚ LỘC Ngày soạn : 16/8/2009 Giáo án Tin học 11 – năm học 2010 – 2011 Tiết PPCT:1 Chương I: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGƠN NGỮ LẬP TRÌNH Bài 1: KHÁI NIỆM LẬP TRÌNH VÀ NGƠN NGỮ LẬP TRÌNH I MỤC TIÊU: Kiến thức: Học sinh nhận biết có ba lớp ngơn ngữ lập trình mức ngơn ngữ lập trình : ngơn ngữ máy, hợp ngữ ngơn ngữ bậc cao Biết dược vai trị chương thình dịch Kĩ năng: Phân biệt hai khái niệm biên dịch thông dịch, phân biệt loại ngôn ngữ lập trình Thái độ: Thấy cần thiết tiện lợi sử dụng ngơn ngữ lập trình bậc cao Liên hệ với trình giao tiếp đời sống II CHUẨN BỊ: Giáo viên: Một số ví dụ ngơn ngữ lập trình Học sinh: Tìm hiểu số loại ngôn ngữ giao tiếp thông dụng III HOẠT ĐỘNG DẠY HỌC: 1) Ổn định tổ chức: Kiểm tra sĩ số lớp 2) Kiểm tra cũ: Nếu có thuật tốn máy thực toán mà giải hay chưa ? 3) Giảng mới: Nội dung Hoạt động GV HS GV : Gọi học sinh nhắc lại khái niệm : ngôn ngữ máy, hợp ngữ Ngôn ngữ máy: Là ngôn ngữ mà máy ngơn ngư bậc cao tính trực tiếp hiểu xử lý đựơc HS: Trả lời câu hỏi Hợp ngữ: Là loại ngôn ngữ sử dụng số từ để thực lệnh ghi Ngôn ngữ bậc cao: Là loại ngôn ngữ gần với ngôn GV : Để chuyển đổi chương trình ngữ tự nhiên, phụ thuộc vào loại máy viết ngôn ngữ lập trình bậc cao Chương trình dịch chương trình đặc biệt, có sang ngơn ngữ máy cần phải có gì? chức chuyển đổi chương trình đợc viết HS : Đó chương trình dịch ngơn ngữ lập trình bậc cao sang ngơn ngữ máy CHƯƠNG TRÌNH NGUỒN CHƯƠNG TRÌNH DỊCH CHƯƠNG TRÌNH ĐÍCH Dùng máy chiếu diễn giải hai tình Giáo viên: Đồn Nhân GV : - Cho ví dụ từ thực tế : “ Người phóng viên biết ngơn ngữ tiếng việt phóng vấn khách nước ngồi ” thơng qua người phiên dịch GV : Như có hai cách để người phóng viên thực cơng việc : biên dịch thơng TRƯỜNG THPT PHÚ LỘC Giáo án Tin học 11 – năm học 2010 – 2011 Kết luận : dịch Thông dịch (Interpreter) đợc thực cách lặp lại dãy bước sau - Kiểm tra tính đắn câu lệnh chương trình nguồn - Chuyển đổi câu lệnh thành hay nhiều câu lệnh tương ứng ngôn ngữ máy - Thực câu lệnh vừa chuyển đổi Biên dịch (Compiler): thực qua hai bước - Duyệt, phát lỗi, kiểm tra tính đắn câu lệnh chương trình nguồn - Dịch tồn chương trình nguồn thành chơng trình đích thực máy lưu trữ để sử dụng lại cần thiết 4) CỦNG CỐ : Khái niệm lập trình? Chương trình dịch gì? Khái niệm ngơn ngữ lập trình? 5) BÀI TẬP VỀ NHÀ: IV RÚT KINH NGHIỆM, BỔ SUNG: Giáo viên: Đoàn Nhân TRƯỜNG THPT PHÚ LỘC Ngày soạn : 16/8/2009 Giáo án Tin học 11 – năm học 2010 – 2011 Tiết PPCT:2 &2 CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH I MỤC TIÊU - Kiến thức: + Biết số khái niệm: tên, tên chuẩn, tên dành riêng, biến + Học sinh ghi nhớ quy định tên, biến ngôn ngữ lập trình - Kĩ năng: + Phân biệt tên, biến + Biết cách đặt tên chúng nhận biết tên viết sai quy tắc - Thái độ: Rèn luyện cho HS tính nguyên tắc, chặt chẽ lập trình II CHUẨN BỊ: Giáo viên: Soạn giáo án, nghiên cứu sách giáo khoa, sách tập, tài liệu tham khảo Máy tính cá nhân máy chiếu ( có) Học sinh: Đọc trước nhà Sách giáo khoa III HOẠT ĐỘNG DẠY HỌC: 1) Ổn định tổ chức: Kiểm tra sĩ số lớp 2) Kiểm tra cũ: Câu hỏi : Chương trình dịch gì? Biên dịch thơng dịch khác nào? 3) Giảng mới: Hoạt động GV HS Nội dung GV: Gọi HS trả lời ý nghĩa việc đặt Một số khái niệm tên? a Tên HS: Tại chỗ trả lời GV: Nhận xét đưa kết luận - Ý nghĩa việc đặt tên khai báo tên cho HS: Chú ý ghi đối tượng: GV: Mọi đối tượng chương trình + Để quản lý phân biệt đối tượng phải đặt tên theo quy tắc chương trình ngơn ngữ lập trình chương trình + Để gợi nhớ nội dung đối tượng dịch cụ thể HS: Chú ý ghi - Qui tắc đặt tên Pascal: GV: Lấy ví dụ tên đặt sai tên đặt Tên dãy liên tiếp khơng q 127 kí tự gọi học sinh nhận xét bao gồm chữ cái, chữ số dấu gạch HS: - Tên đúng: a,b,c,x1, a_b phải bắt đầu chữ dấu - Tên sai: a bc, 2x gạch GV: Ngôn ngữ Pascal không phân biệt chữ hoa, chữ thường HS: Chú ý lắng nghe GV: Ngôn ngữ lập trình thường có ba loại tên bản: tên dành riêng, tên chuẩn tên người lập trình đặt Giáo viên: Đoàn Nhân TRƯỜNG THPT PHÚ LỘC HS: Đọc SGK trình bày tên dành riêng GV: Trong Pascal, soạn thảo, tên dành riêng có màu trắng phân biệt với tên khác GV: Gọi HS phát biểu tên chuẩn HS: Tại chỗ trả lời GV: Viết số tên chuẩn HS: Ghi bài, GV: Lấy ví dụ giải phương trình bậc hai cần dùng biến nào? HS: Khi giải PTBH ta cần dùng biến: a,b,c, x1, x2, Delta để biểu diễn nội dung hệ số phương trình; nghiệm phương trình biệt số delta GV: Vậy tên tên người lập trình đặt GV: Nêu khái niệm ngơn ngữ lập trình HS: Tại chỗ trả lời GV: Lấy ví dụ ví dụ ví dụ sai cho học sinh nhận biết HS: Nhận biết tên tên sai Ví dụ: 123, ‘123’, ‘TRUE, 2+3,… GV: Các biến dùng chương trình phải khai báo GV: Khi viết chương trình người lập trình có nhu cầu giải thích cho câu lệnh viết để đọc lại thuận tiện người khác đọc hiểu chương trình viết, ngơn ngữ lập trình thường cung cấp cho cách đưa vào đoạn thích chương trình HS: Chú ý lắng nghe ghi GV: Ví dụ chương trình Pascal đơn giản minh họa Giáo viên: Đoàn Nhân Giáo án Tin học 11 – năm học 2010 – 2011 * Tên dành riêng: - Là tên dùng với ý nghĩa riêng xác định - Tên dành riêng gọi từ khố Ví dụ: Trong Pascal: Program, uses, var, type, const, begin, end, array, type,… Trong C++: main, include, if, while, void * Tên chuẩn - Được dùng với ý nghĩa định đó, dùng riêng phải khai báo Ví dụ: Trong Pascal: abs, sqr, sqrt, cos, sin,… Trong C++: cin, cout, getchar *Tên người lập trình đặt - Được dùng với ý nghĩa riêng, xác định cách khai báo trước sử dụng b Hằng biến Hằng - Hằng đại lượng có giá trị khơng thay đổi q trình thực chương trình - Các ngơn ngữ lập trình thường có: + Hằng số: số nguyên số thực VD: , 1.0E-6,… + Hằng lôgic: Là giá trị (True)hoặc sai (False) + Hằng xâu: Là chuỗi kí tự mã ASCII, đặt cặp dấu nháy Biến - Là đại lượng đặt tên, dùng để lưu trữ giá trị giá trị thay đổi q trình thực chương trình c Chú thích - Các thích khơng làm ảnh hưởng đến chương trình - Trong Pascal thích đặt {} (*và*) - Trong C++ thích đặt /* */ // TRƯỜNG THPT PHÚ LỘC Giáo án Tin học 11 – năm học 2010 – 2011 4) CỦNG CỐ : Nhắc lại quy tắc đặt tên Pascal khái niệm tên dành riêng, tên chuẩn, tên người lập trình đặt Khái niệm hằng, biến khác biến 5) BÀI TẬP VỀ NHÀ: Hướng dẫn làm tập tập - Bài 6: Các số: a, b, f,g Các xâu: d,i IV RÚT KINH NGHIỆM, BỔ SUNG: Giáo viên: Đoàn Nhân TRƯỜNG THPT PHÚ LỘC Ngày soạn : 16/8/2009 Giáo án Tin học 11 – năm học 2010 – 2011 Tiết PPCT:3 BÀI TẬP I MỤC TIÊU - Kíến thức: + Củng cố lại cho HS kiến thức học lập trình, ngơn ngữ lập trình bậc cao, ngơn ngữ máy, chương trình dịch, thông dịch, biên dịch qua tập trắc nghiệm - Kĩ năng: + Xác định tên đúng, tên sai, tên chuẩn, từ khoá + Biết viết tên ngơn ngữ lập trình cụ thể - Thái độ: + Nhận thức trình phát triển ngơn ngữ lập trình gắn liền với trình phát triển tin học + Ham muốn học ngơn ngữ lập trình cụ thể để có khả giải tốn máy tính điện tử II CHUẨN BỊ: Giáo viên: Soạn giáo án, nghiên cứu sách giáo khoa, sách tập, tài liệu tham khảo Máy tính cá nhân máy chiếu ( có) Học sinh: Làm tập trước nhà III HOẠT ĐỘNG DẠY HỌC: 1) Ổn định tổ chức: Kiểm tra sĩ số lớp 2) Kiểm tra cũ Câu hỏi : Nêu thành phần ngơn ngữ lập trình? Nêu quy tắc đặt tên Turbo Pascal? Đáp án: Ngơn ngữ lập trình có ba thành phần bản: bảng chữ cái, cú pháp ngữ nghĩa - Bảng chữ cái: Là tập kí tự dùng để viết chương trình - Cú pháp: Là quy tắc để viết chương trình - Ngữ nghĩa: Xác định ý nghĩa tổ hợp kí tự Quy tắc đặt tên Pascal: - Đối tượng HS kiểm tra: HS trung bình 3) Giảng mới: Hoạt động GV HS Nội dung GV: Gọi HS đọc câu hỏi 1, lớp suy Câu1: Tại người ta phải xây dựng nghĩ trả lời ngơn ngữ lập trình bậc cao? HS: Đọc câu hỏi Người ta phải xây dựng ngôn ngữ lập trình GV: Gọi HS đứng chổ trả lời bậc cao, vì: GV: Gọi HS khác bổ sung Sau GV - Ngơn ngữ lập trình bậc cao gần với ngôn ngữ nhận xét câu trả lời ghi đáp án tự nhiên hơn, thuận tiện cho đông đảo người lập HS: Chữa tập vào trình - Chương trình viết ngơn ngữ lập trình bậc cao nói chung khơng phụ thuộc vào phần cứng máy tính - Chương trình viết ngơn ngữ bậc cao dễ Giáo viên: Đoàn Nhân TRƯỜNG THPT PHÚ LỘC GV: Gọi HS đọc câu hỏi trả lời câu hỏi HS: Tại chỗ trả lời nêu khái niệm chương trình dịch GV: Nêu Input Output chương trình dịch để gợi ý cho HS vai trị chương trình dịch HS: Tại chỗ trả lời GV: Gọi HS trả lời câu hỏi HS: Tại chỗ đọc câu hỏi GV: Gọi HS khác nhận xét câu trả lời, bổ sung đưa đáp án GV: Gọi HS khác nhận xét câu trả lời, bổ sung đưa đáp án GV: Gọi HS đọc câu hỏi 4, lớp suy nghĩ câu hỏi GV: Gọi HS trả lời GV: Nhận xét nêu đáp án GV: Gọi HS đọc câu hỏi GV: Gợi ý cho HS cách gọi HS nêu quy tắc đặt tên Pascal tên đặt không ngắn, hay dài mà nên đặt cho gợi nhớ ý nghĩa đối tượng mang tên HS: Tại chỗ đọc câu hỏi HS: Lên bảng làm GV: Chữa GV: Gọi HS đọc câu hỏi GV: Từng câu a,b,…, i gọi HS: Trả lời: - c) khơng phải dấu phẩy phải thay dấu chấm - e) tên chưa rõ giá trị - h) thiếu dấu nháy đơn cuối Giáo án Tin học 11 – năm học 2010 – 2011 hiểu, dễ hiệu chình nâng cấp - Ngôn ngữ bậc cao cho phép làm việc với nhiều kiểu liệu cách tổ chức liệu đa dạng, thuận tiện cho việc mơ tả thuật tốn Câu2: Chương trình dịch gì? Tại cần phải có chương trình dịch - Chương trình dịch chương trình đặc biệt, có chức chuyển đổi chương trình viết ngôn ngữ bậc cao thành chương trình đích thực máy - Để chương trình viết ngơn ngữ bậc cao máy hiểu thực phải có chương trình dịch dịch sang ngơn ngữ máy Câu3: Biên dịch thông dịch khác nào? - Trình biên dịch duyệt, kiểm tra, phát lỗi, xác định chương trình nguồn có dịch khơng dịch tồn thành chương trình đích thực máy lưu trữ - Trình thơng dịch dịch câu ngơn ngữ máy thực không lưu lại máy Câu4: Hãy cho biết điểm khác tên dành riêng tên chuẩn? - Tên dành riêng không dùng khác với ý nghĩa xác định, tên chuẩn dùng với ý nghĩa khác Câu5: Hãy tự viết ba tên theo quy tắc Pascal tên Pascal: abc; vidu3; _15a Câu6: Hãy cho biết biểu diễn biểu diễn Pascal rõ lỗi trường hợp a) 150.0; b) -22; c) 6,23; d) ‘43’ ; e) A20; f)1.06E-15 g) 4+6 ; h) ‘c ; i) ‘True’ - Các biểu diễn hằng: c), e), h) 4) CỦNG CỐ : Rèn luyện kĩ đặt tên, biến Hiểu nắm vững khái niệm chương trình dịch, biến,… 5) BÀI TẬP VỀ NHÀ: - Hướng dẫn HS làm tập SBT: BT 1.9; BT 1.10; BT 1.11; BT 1.12 IV RÚT KINH NGHIỆM, BỔ SUNG: Giáo viên: Đoàn Nhân TRƯỜNG THPT PHÚ LỘC Ngày soạn : 16/8/2009 Giáo án Tin học 11 – năm học 2010 – 2011 Tiết PPCT: CHƯƠNG II: CHƯƠNG TRÌNH ĐƠN GIẢN &3 CẤU TRÚC CHƯƠNG TRÌNH §4 MỘT SỐ KIỂU DỮ LIỆU CHUẨN I MỤC TIÊU - Kiến thức: + Hiểu chương trình mơ tả thuật tốn ngơn ngữ lập trình + Biết cấu trúc chương trình đơn giản: cấu trúc chung thành phần + Biết số kiểu liệu chuẩn: nguyên, thực, kí tự, lôgic miền - Kĩ năng: + Nhận biết thành phần chương trình đơn giản + Xác định kiểu cần khai báo liệu đơn giản - Thái độ: + Xác định thái độ nghiêm túc học tập làm quen với nhiều qui định nghiêm ngặt lập trình II CHUẨN BỊ: Giáo viên: Soạn giáo án, nghiên cứu sách giáo khoa, sách tập, tài liệu tham khảo Máy tính cá nhân máy chiếu ( có) Học sinh: tham khảo trước tài liệu nhà III HOẠT ĐỘNG DẠY HỌC: 1) Ổn định tổ chức: Kiểm tra sĩ số lớp 2) Kiểm tra cũ ( ‘) Câu hỏi : Câu hỏi: Nêu qui tắc đặt tên Pascal? Phân biệt tên chuẩn tên dành riêng? Đáp án: - Qui tắc đặt tên Pascal: Trong Pascal, tên dãy liên tiếp khơng q 127 kí tự bao gồm chữ số, chữ dấu gạch bắt đầu chữ dấu gạch - Tên dành riêng không sử dụng với ý nghĩa khác, cong với tên chuẩn, người dùng dùng chúng với ý nghĩa mục đích khác Đối tượng kiểm tra: HS trung bình 3) Giảng mới: Hoạt động GV HS Nội dung GV: Một ngơn ngữ lập trình bậc cao I) CẤU TRÚC CHƯƠNG TRÌNH thường có hai phần Cấu trúc chung GV: Với quy ước: Các diễn giải ngôn - Cấu trúc chung: ngữ tự nhiên đặt cặp < > [] [ ] : Biểu diễn có khơng HS: Phần thân chương trình thiết phải - Trong Pascal: có, phần khai báo có khơng Phần khai báo: tuỳ theo chương trình cụ thể Program < tên chương trình>; GV: Nêu cấu trúc chung chương Uses < tên thư viện>; Giáo viên: Đoàn Nhân TRƯỜNG THPT PHÚ LỘC trình Pascal đơn giản: HS: Lắng nghe ghi GV: Chúng ta tìm hiểu thành phần chương trình GV: Phần có khơng Với Pascal, có phải khai báo theo quy tắc HS: Lên bảng GV: Gọi HS lấy ví dụ khai báo tên chương trình HS: Lên bảng GV: Nhận xét GV: Mỗi ngơn ngữ lập trình thường có sẵn số thư viện cung cấp số chương trình thơng dụng lập sẵn Để sử dụng chương trình cần khai báo thư viện chứa GV: Trong Pascal, khai báo thư viện phải ln đặt đầu tiên, sau dịng khai báo program GV: Những gía trị xuất nhiều lần chương trình thường khai báo HS: Lắng nghe GV: Khai báo tạo điều kiện thuận lợi cho việc chỉnh sửa lại giá trị tồn chương trình GV: Lấy ví dụ GV: - Biến nhận giá trị thời điểm thực chương trình gọi biến đơn GV: Khi cần viết chương trình quản lí học sinh ta cần xử lí thơng tin dạng nào? HS: Suy nghỉ trả lời câu hỏi GV GV: Phân tích câu trả lời học sinh đưa vài thông tin dạng sau: - Họ tên học sinh thông tin dạng văn dạng kí tự Giáo viên: Đồn Nhân Giáo án Tin học 11 – năm học 2010 – 2011 Const =; Var < tên biến>: ; Procedure …; Function …; … Phần thân: Begin {Dãy câu lệnh}; End Các thành phần chương trình a Phần khai báo * Khai báo tên chương trình Trong Pascal: Program ; Ví dụ: Program vidu; Program tinhtong; * Khai báo thư viện - Khai báo thư viện Pascal: Uses crt; {Thư viện crt chứa hàm vào/ra chuẩn làm việc với hình bàn phím} Uses graph; {Thư viện graph chứa hàm đồ hoạ} - Để xố hình sau khai báo crt dùng lệnh clrscr - Trong C++: #include ; #include ; * Khai báo hằng: - Trong Pascal: Const MaxN = 1000; PI = 3.1416; * Khai báo biến: - Trong Pascal: Var :; Ví dụ: Giải phương trình bậc hai: ax2 + bx +c = Khai báo: Var a,b,c,x1,x2,delta: real; b Phần thân chương trình - Phần thân chương trình bao gồm dãy lệnh phạm vi xác định cặp dấu hiệu mở đầu kết thúc - Trong Pascal, bắt đầu kết thúc Begin… End Begin []; End TRƯỜNG THPT PHÚ LỘC - Điểm học sinh thông tin dạng số thực - Số thứ tự học sinh thông tin dạng số nguyên - Một số thông tin khác cần biết chúng hay sai GV: Thuyết trình đưa số bổ sung sau: - Ngơng ngữ lập trình đưa số kiểu liệu chuẩn đơn giản, từ kiểu đơn giản ta xây dựng thành kiểu liệu phức tạp - Kiểu liệu có miền giới hạn Máy tính khơng thể lưu tất số trục số lưu trữ với độ xác cao - Tuỳ thuộc vào ngơn ngữ lập trình mà tên kiểu liệu khác miền giá trị kiểu liệu khác - Với kiễu liệu người lập trình cần ghi nhớ tên kiểu, miền giá trị số ô nhớ để lưu giá trị thuộc kiểu - Trong lập trình nói trung kiểu kí tự thường tập kí tự bảng mã kí tự, kí tự có mã thập phân tương ứng Để lưu giá trị phải lưu mã thập phân tương ứng chúng Giáo án Tin học 11 – năm học 2010 – 2011 II Kiểu liệu chuẩn Kiểu nguyên Kiểu Số Byte Miền gi trị Byte 255 Integer - 215 215- Word 216- Longint - 231 231- Kiểu thực - Có nhiều kiểu cho giá trị số thực hay dùng số kiểu sau: Kiểu Số SCS Miền gi trị Byt cĩ e nghĩa Real 11- 12 2.9e- 39 1.7e38 Single 7- 1.5e- 45 3.4e- 38 Double 15- 16 5.4e- 325 1.7e- 308 Extended 10 19- 20 3.4e- 4932 1.2e4932 Comp 19- 20 - 9.2e18 9.2e18 Kiểu kí tự - Tn kiểu: Char - Miền gi trị l cc gi trị bảng m ASCII gịm 256 kí tự Mỗi kí tự cĩ m tương ứng phạm vi từ đến 255 - Cc kí tự cĩ quan hệ so snh, việc so snh dựa trn m kí tự Kiểu Logic - Tn kiểu: Boolean - Miền giá trị: Chỉ có giá trị True (đúng) False (sai) 4) CỦNG CỐ : Nhắc lại khái niệm cấu trúc chương trình gồm phần khai báo phần thân 5) BÀI TẬP VỀ NHÀ: Cho chương trình mẫu nhà yêu cầu học sinh rõ thành phần chương trình Giáo viên: Đồn Nhân 10 Clrscr; A:= 5; b:=10; Writeln(a:6, b:6); Hoan_doi(a,b); Writeln(a:6,b:6); END IV Củng cố (5p) - Khi cần khai báo tham số phần khai báo chương trình theo kiểu tham biến, theo kiểu tham trị - Phân biệt giống khác tham biến tham trị V Dặn dò (1p) - Xem tiếp nội dung lại - Viết thủ tục tìm thơng báo số lớn ba số a, b, c Ngày soạn: Tiết 41 / /2010 Ngày giảng: Lớp 11A: / / / (sĩ số: ./ ) Lớp 11B: / / / (sĩ số: ./ ) Lớp 11C: / / / (sĩ số: ./ ) Lớp 11D: / / / (sĩ số: ./ ) Lớp 11E: / / / (sĩ số: ./ ) Bài 18: VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON (T2) A MỤC TIÊU Kiến thức: - Giúp học sinh nắm được: - Cấu trúc chung thủ tục chương trình - Phân biệt tham số tham trị - Các khái niệm biến toàn cục biến cục Kỹ năng: - Nhận biết thành phần đầu thủ tục - Nhận biết hai loại tham số hình thức đầu hai thủ tục - Biết cách khai báo hai loại chương trình với tham số hình thức chúng - Cách viết lời gọi chương trình thân chương trình - Phân biệt khác hàm thủ tục - Phân biệt sử dụng biến toàn cục biến cục Thái độ: - Tiếp tục rèn luyện phẩm chất người lập trình tinh thần hợp tác, sẵn sàng làm việc theo nhóm, tuân thủ theo yêu cầu việc chung - Có ý thức lưu trữ liệu cách khoa học B PHƯƠNG PHÁP - Thuyết trình giảng giải, kết hợp hình ảnh trực quan - Sử dụng câu hỏi gợi mở, nêu vấn đề cho học sinh trả lời, tổ chức hoạt động theo nhóm C CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH Giáo viên: Giáo án, máy chiếu Projector để hướng dẫn Học sinh: SGK, D TIẾN TRÌNH LÊN LỚP I Ổn định tổ chức (1p) II Kiểm tra cũ III Bài Đặt vấn đề (1p) - Bài học trước em tìm hiểu chương trình con, cấu trúc phân loại Vậy chương trình viết nào, sử dụng chúng sao, có giống khác với chương trình khơng? Bài học hơm tìm hiểu nội dung Triển khai Hoạt động giáo viên học sinh Nội dung kiến thức Hoạt động 1: (theo nhóm) (12p) §18 Ví dụ cách viết sử dụng chương trình GV: Cho biết tên cách sử dụng số Cách viết sử dụng hàm hàm học? a Cấu trúc thủ tục HS: Hàm abs(), sqrt(), Function []: - Viết tên hàm cần gọi tham số ; - Lời gọi hàm viết biểu [] thức tốn hạng, chí tham Begin số hàm khác [] GV: Chuẩn xác := ; - Điểm khác biệt thủ tục hàm End; gì? HS: Trong than hàm cần có lệnh gán giá trị cho tên hàm GV: so sánh giống khác hàm thủ tục? HS: giống: có cấu trúc tương tự, có tham số, - Khác: Tên hàm phải quy định kiểu liệu; Trong than hàm phải có lệnh: tên_hàm:= biểu_thức; Bắt đầu hàm từ khố Function Hoạt động 2: (Theo nhóm) (15p) b Ví dụ hàm GV: Chiếu ví dụ rút gọn phân số * Ví dụ 1; - Trong chương trình có sử dụng bao Program Rutgon_Phanso; nhiêu hàm Uses crt; HS: hàm Var a, tuso, mauso: integer; GV: hàm UCLN(x,y) dùng để làm gì? Function UCLN(x,y: integer):integer; - Lời gọi hàm nằm đâu? Có khác với Var sodu: integer; thủ tục lời gọi hàm? Begin HS: Lệnh a:=UCLN(tuso, mauso) ; While y0 - Lời gọi hàm phải đặt Begin lệnh lời gọi chương trình Sodu:= x mod y; khác X:= y; GV: Có biến sử dụng Y:= sodu; chương trình? Các biến End; khai báo chổ chương trình UCLN:=x; chính? End; HS: tuso, mauso, a : khai báo BEGIN {Bat dau chuong trinh chinh} chương trình Clrscr; - sodu: khai báo chương trình Write(‘Nhap tu so va mau so: ‘); readln(tuso,mauso); A:=UCLN(tuso, mauso); GV: Yêu cầu học sinh phân biệt giống If a>1 then khác biến toàn cục biến Begin cục Tuso:= tuso div a; Mauso:= mauso div a; GV: chạy chương trình để học sinh kiểm end; nghiệm tự rút kết luận Writeln(tuso:5, ‘/’ ,mauso:5); Readln; END Hoạt động 3: (Chung lớp) (10p) GV: Chiếu ví dụ Minbaso lên bảng minh hoạ cho học sinh cách gọi hàm HS: Chú ý quan sát theo dõi * Ví dụ 2: Program Minbaso; Uses crt; Var a, b, c: real; Function Min(a,b: real):real; Begin If a thiết kế tốn từ xuống + GV phân tích: để giải BT MT chia chương trình thành khối, khối gồm nhiều lệnh giải toán -> chương trình xây dựng từ CTC + Chương trình ? + Giáo viên chốt lại khái niệm bảng phụ, máy chiếu viết bảng + Hoạt động 3(17’) + GV dùng bảng phụ 1: tinh_tong ( không sử dụng CTC trang 92 SGK ), cho HS nhận xét đoạn chương trình + Chỳ ý bảng phụ trình chiếu, sau nhận xét + GV chốt lại ý: đoạn CT có đoạn lệnh tương tự -> chương trình dài, khú theo dừi, khú hiệu chỉnh + Dùng bảng phụ 2: Chương trình tinh_tong có sử dụng chương trình + HS nhận xét so sánh đoạn chương trình + GV giải rhích : dùng lệnh: var j: integer; tich:=1.0; for j:=1 to k 1.Khái niệm chương trình Những tốn phức tạp phân chia thành nhiều nêu nhỏ, nêu nhỏ phân chia thành nhiều nêu nhỏ, trình làm “mịn” dần toán gọi cách thiết kế từ xuống Khi lập trình để giải nêu chia thành khối, khối bao gồm lệnh để giải nêu đó, khối lệnh xây dựng thành CTC , sau chương trình xây dựng CTC này, cách lập trình gọi chương trình có cấu trúc Chương trình dóy lệnh mụ tả số thao tỏc định thực (được gọi ) từ nhiều vị trí chương trình * Lợi ích việc sử dụng CTC + Tránh việc phải viết viết lại nhiều lần dóy tich:=tich*x + Để tính luỹ thừa ta viết: Luythua(a,n), luythua(b,m), Luythua(c,p), luythua(d,q) + Và rừ đoạn lệnh thay CTC + Từ điều nêu cho HS nêu ích lợi CTC + GV giải thích rừ ích lợi việc sử dụng CTC + Các HS nêu lợi ích CTC IV Củng cố: 1/ HS nêu khái niệm CTC, lợi ích việc sử dụng CTC V Dặn dị: Xem trước phần 2của 17 lệnh; + Hổ trợ việc thực chương trình lớn; + Phục vụ cho quỏ trình trừu tượng hố ; + Mở rộng khả ngôn ngữ; + Thuận tiện cho phát triển, nâng cấp chương trình; Ngày soạn :4/4/2010 Tiết PPCT : 41 Ngày dạy :5/4/2010 Tuần : 32 Bài 17 CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI (Tiết 2) I: Mục tiêu : Kiến thức: Biết phân biệt hai loại chương trình con: Hàm thủ tục Biết cấu trúc chương trình Biết phân biệt tham số hình thức ví i tham số thực sự, biến cục ví i biến tồn cục Kỹ năng: - Nhận biết hai loại tham số hình thức tham số thật - Nhận biết phạm vi hoạt động biến toàn cục, biến cục Cách thực chương trinh Thái độ: - Phát huy tinh thần học tập theo nhóm II Đồ dùng dạy học: -GV: Bảng phụ, máy chiếu(nếu có ) -HS: SGK, sách tập IV Tiến trình học ổn định : Bài cũ : Câu 1: Trình bày khái niệm chương trình ? Câu 2: Mục đích sử dụng chương trình ? Bài giảng : Hoạt động GV & HS Nội dung ĐVĐ: Chúng ta biết chương trình ? Lợi ích Phân loại cấu trúc chương việc sử dụng chương trình lập trình Nhưng ta chưa trình biết chương trình chương trình có cấu trúc nào? a Phân loại: Hàm Và phân loại nào? +Hàm: Là chương trình thực -Trong nhiều ngơn ngữ lập trình chương trình phân số thao tác Trả lại giá trị làm loại? qua tên hàm Thủ -Trong ngôn ngữ pascal tục em cho biết số hàm thủ tục +Thủ tục: Là chương trình thực chuẩn mà em biết? số thao tác Khơng trả -HS trả lời câu hỏi: lại giá trị qua tên thủ tục + Hàm: Sin(x), sqrt(x),length(x) b Cấu trúc chương trinh + Writeln, readln, -Xét hàm sin(x) [] Ví i x=∏/6 giá trị hàm sin(x) cho kết bao nhiờu ? -HS trả lời câu hỏi: +Phần đầu: Sin(x)=1/2 + Để khai báo tên hàm GV nhận xét : Sau thực tính tốn hàm sin(x) ví i x= thủ tục ∏/6 cho giá trị 1/2 + Nếu hàm phải khai báo kiểu Vậy em cho biết hàm có đặc điểm ?(hay hàm ?) liệu chi giá trị trả hàm -Xét thủ tục Writeln, + Nhất thiết phải có Writeln(‘‘xin chao’’) +Phần khai báo : Thủ tục Writeln(‘xin chao’) làm ? cho kết ? có + Khai báo biến cho liệu trả giá trị không ? vào/ra, biến dùng Vậy em cho biết thủ tục có đặc điểm ?(hay hàm chương trình ?) +Phần thân : ĐVĐ : Trên sở phân loại hàm thủ tục ta tìm hiểu + Gồm dãy lệnh thực để từ Hoạt động GV & HS Nội dung cấu trúc hàm thủ tục (Chương trình con) tổ chức iệu vào/ra ta nhận liệu ? hay kết qủa mong muốn -Các em cho biết chương trình gồm phần ? *Khái niệm biến: (kiến thức củ) - Tham số hình thức: gồm biến -Học sinh trả lời: khai báo cho liệu vào/ra [] - Biến cục bộ: Gồm biến khái khai báo chương trình -Trong chương trình cấu trúc nú gồm phần ? - Biến toàn cục: Gồm biến khái -Học sinh trả lời: khai báo chương trình [] *Phạm vi hoạt động biến: -Biến cục bộ: -Về chương trình chuơng trình có tương + Chỉ sử dụng chương tự khơng ? trình cuả nú mà thụi -Phần đầu dùng để làm ? + Khơng thể sử dụng biến cục -Phần Khai báo dùng để làm ? cuả chương trình cho chương -Phần thân dùng để làm ? trình chương trình k Xét ví dụ : Tính luỹ thừa : luythua= x tên chương khác trình đặt luythua, tên biết chưa liệu vào -Biến toàn cục: x, k Vậy tính xk ta viết luythua(x,k) Khi x, k tham số + Được sử dụng chương hình thức trình sử dụng -Vậy tham số hình thức ? chương trình ĐVĐ : Đối biến cục bộ, ,biến toàn cục thỡ phạm vi hoạt động c Thực chương trình con: ? -Để thực gọi chương trình ta ĐVĐ : Sau có chương trình con, muốn thực thực lệnh theo có pháp sau chuơng trình thỡ ta làm ? Có pháp : -Hãy cho ví dụ lệnh gọi CTC ? () Ví i biến : a =2, b=3 Trong đó: tham số thực Lệnh gọi CTC Luythua(a,b) tham số hình thức x,k hằng, biến chứa liệu vào/ nhận giá trị tương ứng tham số thực a,b -Học sinh đọc sách GK trả lời V Cũng cố kiến thức: -CTC gồm: Hàm thủ tục -Cấu trúc chương trinh -Biến cục bộ, biến toàn cục -Tham số hình thức, tham số thật -Cách gọi chương trinh Ngày soạn :4/4/2010 Tiết PPCT : 42 Ngày dạy :5/4/2010 Tuần : 32 Bài 18 : VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON I MỤC TIÊU Kiến thức: - Biết cấu trúc chung vị trí thủ tục chương trình - Phân biệt tham số giá trị tham số biến - Nắm khái niệm biến toàn cục biến cục Kĩ năng: - Nhận biết thành phần đầu thủ tục - Nhận biết hai loại tham số hình thức đầu thủ tục - Biết cách khai báo hai loại chương trình ví i tham số hình thức chúng - Sử dụng lời gọi chương trình thân chương trình - Phân biệt khác hàm thủ tục - Phân biệt sử dụng biến toàn cục biến cục Thái độ: - Rèn luyện phẩm chất người lập trình tinh thần hợp tác, làm việc theo nhóm, tuân thủ u cầu cơng việc chung II CHUẨN BỊ : Giáo viên : Máy vi tính máy chiếu projector để giới thiệu ví dụ Học sinh : Sách giáo khoa III TIẾN TRÌNH LÊN LỚP : Hoạt động 1: Tìm hiểu cấu trúc chung vị trí thủ tục chương trình HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG Giới thiệu ví dụ mở đầu Cách viết sử dụng thủ tục - Chiếu chương trình ví dụ lên bảng (Ví dụ VD-thutuc1, trang a Cấu trúc thủ tục: 96) Giới thiệu cho học sinh cấu trúc thủ tục vị trí khai báo Procedure [()]; Tìm cấuthủ trúctục thủ tục - Hỏi: Vị trí thủ tục nằm phần chương trình [< phần khai báo>] Begin chính? [] - Hỏi: Cấu trúc thủ tục gồm phần? - Ba phần: Tên thủ tục, khai báo thủ tục phần thân End; - Phần đầu thủ tục gồm tên dành riêng thủ tục - Hỏi: Phân biệt giống khác chương trình Procedure, tên thủ tục DS tham số có khơng có chương trình chính? - Phần khai báo: Dùng để xác định - Giống: Cấu trúc chung - Khác: Trong phần tên: Từ khóa đặt tên Procedurre, có các hằng, kiểu, biến xác định chương trình khác tham số sử dụng thủ tục - Giới thiệuc cấu trúc chung thủ tục - Dãy câu lệnhh:Được viết cặp - Lời gọi thủ tục ta viết phần chương trình? tên dành riêng Begin End tạo Tìm hiểu tham số hình thức tham số thực thành thân thủ tục - Chiếu ví dụ 2, VD_thutuc2, sách giáo khoa trang 98 - Yêu cầu học sinh nhận xét thủ tục ve_hcn ví dụ ví b VD thủ tục: - Trong lời gọi thủ tục tham số i ví dụ trước - Hỏi: Quan sát chương trình cho biết, chương trình hình thức thay tham số thực tương ứng giá trị cụ thể ta vẽ tất bao nhêu hình chữ nhật đgl tham số giá trị (tham trị) - Tham số chdai, chrong gọi tham số hình thức - Trong lời gọi thủ tục tham số hình thức thay - Trong lệnh gọi thủ tục tham số tham số thực hình thức thay tham số - So sánh tham số lời gọi ve_hcn(5,10); thực tương ứng tên biến ve_hcn(a,b); chứa liệu đgl tham số biến (tham Tìm hiểu tham số giá trị tham số biến biến) - Hỏi: Các tham số ví dụ thuộc loại nào? - Chiếu chương trình VD_thambien1, sách giáo khoa trang 99 - Hỏi: Các tham số x,y thuộc loại nào? - Diễn giải: Trong lời gọi thủ tục, tham số hình thức thay tham số thực tương ứng tên biến chứa liệu gọi tham số biến - Hỏi: x, y tham số giá trị hay tham số biến? - Hỏi: Có nhận xét khai báo tham số hình thức tham trị tham biến? - Chiếu vd_thambien2 giải thích để học sinh thấy khác biệt tham số giá trị tham số biến 2.Hoạt động 2: Tìm hiểu cấu trúc chung vị trí hàm chương trình HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG Nhắc lại kiến thức cũ hàm chuẩn II/ Dạng Hàm (Function) - Hỏi: Hãy kể tên số hàm chuẩn học cách sử dụng 1/ Cấu trúc: chúng Function []: ; - Hàm ABS(), SQRT(), ROUND() - Viết tên hàm cần gọi tham số [khai báo biến]; - Lời gọi hàm viết biểu thức nêu hạng, Begin chí tham số hàm khác [] Giới thiệu cấu trúc chung vị trí hàm chương trình End; - Hỏi: So sánh giống khác hàm thủ tục - : Kiểu liệu trả lại Quan sát cấu trúc chung hàm kiểu integer, real, - Giống: Có cấu trúc tương tự, có tham số - Khác: Tên hàm phải quy đinh kiểu liệu; Trong thân hàm char, boolean, string phải có lệnh Tên_hàm:=biểu_thức; Vd: Function tong(x,y: integer): Bắt đầu hàm từ Function integer; Tìm hiểu hàm thơng qua ví dụ - Chiếu chương trình ví dụ rutgon_phanso, sách giáo khoa 2/ Sử dụng hàm: trang 101 - Giống hàm chuẩn, viết tên hàm - Hỏi: Trong chương trình có hàm gọi thay tham số hình thức - Hàm UCLN(x,y) dùng để làm gì? tham số thực tương ứng - Hỏi: Lời gọi hàm đâu? - Lệnh gọi hàm tham gia vào biểu thức - Hỏi: Có khác ví i thủ tục lời gọi hàm toán hạng - Chiếu chương trình ví dụ 2, Minbaso, sách giáo khoa, trang Ví dụ: A:= 8*UCLN(x,y)-3; 102 Chú ý: Trong thân hàm phải có - Hỏi: Trong chương trình có hàm? chức lệnh gán giá trị cho tên hàm hàm? := ; - Có lời gọi hàm chương trình chính? 3/ Phân biệt hàm thủ tục: Tìm hiểu biến cục biến toàn a/ Giống nhau: - Chiếu chương trình ví du 2: Rutgon_phanso lên bảng - Là chương trình con, có cấu trúc - Hỏi: Có biến sử dụng chương trình? Các biến khai báo chỗ chương trình? giống chương trình - Yêu cầu học sinh: Phân biệt giống khác - Đều chứa tham số, biến toàn biến cục tuân theo quy định khai báo b/ Khác nhau: - Tên hàm phải có kiểu liệu - Trong thân hàm phải có lệnh gán giá trị cho tên hàm IV ĐÁNH GIÁ CUỐI BÀI