Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 80 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
80
Dung lượng
860 KB
Nội dung
Tiết CT: Tuần: Ngày soạn: 15.07.2013 Ngày dạy: 15.08.2013 CHƯƠNG I: MỘT SỐ KHÁI NIỆM VỀ CHƯƠNG TRÌNH VÀ NGƠN NGỮ LẬP TRÌNH § 1: KHÁI NIỆM LẬP TRÌNH VÀ NGƠN NGỮ LẬP TRÌNH I MỤC ĐÍCH, U CẦU - Hiểu khả ngơn ngữ lập trình bậc cao, phân biệt với ngôn ngữ máy hợp ngữ; - Hiểu ý nghĩa nhiệm vụ chương trình dịch; - Phân biệt biên dịch thông dịch II PHƯƠNG PHÁP Phát vấn kết hợp diễn giảng III PHƯƠNG TIỆN DẠY HỌC SGK, SGV, bảng vẽ khổ lớn… có máy chiếu tốt IV NỘI DUNG VÀ TIẾN TRÌNH LÊN LỚP Ổn định lớp (Kiểm tra sĩ số) Ôn lại kiến thức cũ (nếu có) Hoạt động dạy học HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS NỘI DUNG Hoạt động 1: tìm hiểu khái niệm lập trình ngơn ngữ lập trình Ở lớp 10 em học loại ngơn ngữ lập trình ? Hãy cho thầy biết có loại Có loại: ngơn ngữ máy, ngơn ngữ lập trình? hợp ngữ, ngơn ngữ lập lập trình bậc cao? ? Cho biết đặc điểm Ngôn ngữ máy ngơn loại? ngữ máy hiểu trực tiếp Hợp ngữ: sd từ tiếng Anh Ngôn ngữ lập trình bậc cao: Các bước để giải tốn máy tính: ? Có bước để giải tốn - Xác định tốn máy tính? Kể tên? - Xây dựng lựa thuật Chúng ta thấy bước thứ viết tốn chương trình hay cịn gọi lập - Viết chương trình (lập trình? trình) Thế lập trình? - Hiệu chỉnh - Viết tài liệu Bài tốn: Viết chương trình giải phương trình ax + b = 0? ? Hãy xác định Input Output toán? Xác định thuật toán? Input: hai số a, b Output: x = - b/a, ptvn, pt có vơ số nghiệm Bước 1: nhập a, b; Bước 2: a HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS x=-b/a Bước 3: Nếu a = ptvn; Bước 4: a = b=0 pt có vơ số nghiệm Em dùng tiếng Anh Đó thuật tốn tốn ? Để diễn tả thuật tốn cho Ngơn ngữ lập trình người nước ngồi hiểu em dùng ngơn ngữ nào? ? Còn máy hiểu em dùng HS phát biểu ngôn ngữ nào? Dẫn dắt vấn đề: hoạt động diễn đạt thuật tốn thơng qua ngơn ngữ lập trình gọi lập trình Đọc SGK cho biết lập trình? Giải thích câu lệnh Về việc chọn ngơn ngữ lập trình ta chọn loại ngơn ngữ Nhưng đặc điểm vượt trội ngôn ngữ bậc cao nên người ta thường sd để lập trình ? Những đặc điểm đặc điểm nào? Và để sd ngơn ngữ lập trình bậc cao phải có gì? Đó đặc điểm ngơn ngữ lập trình Nhưng sd ngơn ngữ lập trình bậc cao cần phải có chương trình dịch Chức chương trình dịch NỘI DUNG Khái niệm lập trình Lập trình sử dụng cấu trúc liệu câu lệnh ngơn ngữ lập trình cụ thể để mô tả liệu diễn đạt thao tác thuật tốn HS chia nhóm thảo luận phút Chương trình dịch Chức năng: chuyển đổi chương trình viết NNLT bậc cao thành chương trình thực máy Dịch từ ngơn ngữ khác sang ngơn ngữ máy Chương trình nguồn Chương trình dịch Ví dụ SGK giới thiệu trường Chương trình đích Chương trình dịch có hai loại: Biên dịch thơng dịch Biên dịch: - Dịch tồn chương Chương trình dịch có hai loại: biên ? Biên dịch thơng dịch khác trình dịch thơng dịch chỗ nào? - Có thể lưu trữ để sd lại Thông dịch: a) Thông dịch: - Dịch câu lệnh Kiểm tra tính đắn - Không lưu lại câu lệnh chương trình HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS V CỦNG CỐ - DẶN DÒ a Củng cố: Thế lập trình? Chức chương trình dịch? Sự giống khác biên dịch thông dịch? b Dặn dò: Soạn trước: ? Thành phần NNLT? ? Thế tên? Qui tắc đặt tên? ? Có loại tên? phải nhớ tên riêng? ? Thế hằng? biến? Học trả lời câu hỏi SGK VI RÚT KINH NGHIỆM NỘI DUNG nguồn Chuyển đổi câu lệnh thành nhiều câu lệnh tương ứng NN máy Thực câu lệnh vừa chuyển b) Biên dịch: Duyệt, phát lỗi, kiểm tra tính đắn câu lệnh 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 Tiết CT: Tuần: Ngày soạn: 22.07.2013 Ngày dạy: 22.08.2013 § CÁC THÀNH PHẦN CƠ BẢN CỦA NGÔN NGỮ LẬP TRÌNH I MỤC ĐÍCH U CẦU - Biết ngơn ngữ lập trình có ba thành phần - Biết số khái niệm tên, tên dành riêng, tên chuẩn, biến - HS nhớ qui định cách đặt tên hằng, biến Biết nhận biết tên đặt sai, II PHƯƠNG PHÁP Diễn giảng kết hợp phát vấn III PHƯƠNG TIỆN DẠY HỌC SGK, SGV, có máy chiếu tốt IV NỘI DUNG VÀ TIẾN TRÌNH LÊN LỚP Ổn định lớp (Kiểm tra sỉ số) Kiểm tra cũ Câu 1: Chức chương trình dịch Câu 2: Sự giống khác biên dịch thông dịch Nội dung HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS NỘI DUNG Hoạt động 1: ? Có yếu tố để − Bảng chữ tiếng Việt, Các thành phần xây dựng nên ngôn ngữ tiếng số, dấu a) Bảng chữ − Việt? Cách ghép kí tự thành Tập hợp kí tự dùng để viết câu, cách ghép từ thành câu chương trình NNLT tương tự − Ngữ nghĩa từ Không dùng kí tự vậy, gồm thành phần: câu ngồi kí tự qui định bảng chữ bảng chữ cái, cú pháp ngữ nghĩa ? Hãy đọc SGK trang Đọc SGK trả lời câu hỏi Ví dụ: cho thầy biết Pascal Trong Pascal bảng chữ bao gồm: bảng chữ bao gồm kí tự Chữ thường chữ in hoa tiếng nào? Anh Sau HS trả lời treo a z ; A Z; bảng khổ lớn bảng chữ 10 chữ thập phân: Bảng chữ kí tự đặc biệt: NNLT nói chung không khác + - * / = < < [ ] , nhiều ; # ^ @ $ & ( ) { } : ‘ VD: C++ khác với − Dấu cách (mã ASCII 32) Pascal cịn có sd thêm kí tự dấu (“), ( \), ( ! ) Nhờ vào chúng mà chương trình dịch biết tổ hợp Chú ý nghe giảng kí tự bảng chữ hợp lệ tổ hợp không hợp lệ Nhờ đó, mơ tả thuật tốn để b) Cú pháp Là qui tắt để viết chương trình HOẠT ĐỘNG CỦA GV máy thực VD: phần lớn NNLT sd dấu cộng ( +) Xét hai biểu thức sau: A+B (1) I+J (2) Giả sử: A, B đại lượng nhận giá trị thực; I, J nhận giá trị nguyên (giải thích số thực số nguyên) Dấu (+) biểu thức (1) cộng hai số thực Dấu (+) biểu thức (2) cộng hai số nguyên Hoạt động 2: Một số khái niệm Một khái niệm tên Tên phải đặt theo qui tắc đặt tên tuỳ vào NNLT ? Những tên tên qui tắc tên sai qui tắc NNLT Pascal? LOP11C2 LOP 11C2 LOP_11C2 2D A\B Lưu ý: NNLT Pascal không phân biệt chữ hoa chữ thường Lấy ví dụ tên HS Tên có loại tên sau: Chúng ta không dùng tên với ý nghĩa khác ? Trong Pascal có tên riêng nào? HOẠT ĐỘNG CỦA HS NỘI DUNG c) Ngữ nghĩa xác định ý nghĩa thao tác cần phải thực hiện, ứng với tổ hợp kí tự dựa vào ngữ cảnh Những tên đúng: LOP11C2 LOP_11C2 Những tên sai LOP 11C2, 2D, A\B Một số khái niệm a) Tên Mọi đối tượng chương trình phải đặt tên theo qui tắc NNLT chương trình dịch cụ thể * Trong Turbo Pascal tên: - Không chứa dấu cách, khơng q 127 kí tự, khơng chứa kí hiệu đặc biệt - Bắt đầu chữ dấu gạch VD: - Tên LOP11C2, LOP_11C2 - Tên sai: LOP 11C2, 3D, A\B * Tên dành riêng (từ khoá): NNLT qui định dùng với ý nghĩa xác định Program, uses, const, type, Ý nghĩa tên chuẩn var, begin, end… qui định thư viện NNLT ? Trong Pascal có tên chuẩn nào? Chúng ta nên đặt tên abs, sqr, sqrt, byte, integer, cho gợi nhớ nội dung real, longin… khơng nên đặt dài hay ngắn vd: để đặt tên cho điểm Vd: Trong pascal: program, uses, const, type, var, begin, end… * Tên chuẩn: dùng với ý nghĩa Nhưng ta khai báo dùng với ý nghĩa mục đích khác Vd: abs, sqr, sqrt, byte, integer, real, longin HOẠT ĐỘNG CỦA GV mơn tốn ta nên đặt dtoan khơng nên đặt dt hay diem_mon_toan ? Vì ta phải nhớ tên dành riêng? HOẠT ĐỘNG CỦA HS NỘI DUNG * Tên người lập trình đặt: tên xác định cách khai báo trước sd, không trùng với tên dành riêng Vd: X1; X2; DELTA, CT_VD; BAI6_3 Hằng có nhiều loại như: Để đặt tên không trùng số học, logic, xâu… VD: DELTA, I, J… Khi đặt thích chương trình dịch bỏ qua b) Hằng biến * Hằng: Hằng đại lượng khơng thay đổi q trình thực chương trình Vd: - số học: 2; 0; -5; 1.25; -2.36 - logic: TRUE; FALSE - xâu: ‘tin hoc’; ‘nguyen_van_A’; ‘Truong THPT Duyen Hai’ * Biến: Biến đại lượng đặt tên, dùng để lưu trữ giá trị giá trị thay đổi trình thực chương trình c) Chú thích: Đặt thích để người đọc chương trình dễ hiểu Trong pascal thích đặt dấu (* *) { } V.CỦNG CỐ - DẶN DÒ Củng cố: - Thành phần NNLT: bảng chữ cái, cú pháp, ngữ nghĩa - Một số khái niệm: tên, hằng, biến Dặn dò: Về nhà học trả lời câu hỏi SGK tiết sau giải tập VI RÚT KINH NGHIỆM Tiết CT: Tuần: Ngày soạn: 29.07.2013 Ngày dạy: 29.08.2013 BÀI TẬP CUỐI CHƯƠNG - I MỤC ĐÍCH - YÊU CẦU - Củng cố lại kiến thức chương - Giải số tập chương II PHƯƠNG PHÁP Phát vấn kết hợp làm việc theo nhóm diễn giảng III NỘI DUNG VÀ TIẾN TRÌNH LÊN LỚP Ổn định lớp: (Kiểm tra sĩ số) Kiểm tra cũ Câu 1: Hãy kể tên thành phần NNLT? Câu 2: Thế tên dành riêng? Tại ta phải nhớ tên dành riêng? Câu 3: Những tên sau qui tắc, sai qui tắc? _VIDU1; A#B; VI_DU1; VAR; VAR1 Nội dung: HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS NỘI DỤNG Câu Tại người ta phải Câu xây dựng NNLT bậc cao? Trao đổi nhóm phút Người ta phải xây dựng NNLT bậc cao: - NNLT bậc cao gần với NN tự nhiên hơn, thuận tiện cho đơng đảo người lập trình - Chương trình viết NNLT bậc cao phụ thuộc vào máy - Chương trình viết NNLT bậc cao dễ hiểu, dễ hiệu chỉnh dễ nâng cấp - 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 Câu 2: Chương trình dịch Trao đổi nhóm phút? thuận tiện cho mơ tả thuật tốn gì? Tại phải có chương Câu 2: trình dịch? - SGK trang Nêu Input Output - Nhờ có chương trình dịch mà chương chương trình dịch trình dịch mà máy thực chương trình viết NNLT bậc cao Trả lời câu hỏi Câu 3: Biên dịch thông dịch khác chỗ nào? Câu 4: tên dành riêng không dùng Câu Cho biết điểm với ý nghĩa khác; tên chuẩn dùng khác tên riêng với ý nghĩa khác tên chuẩn? Trả lời câu hỏi Gọi em trả lời -3 tên đúng: VI_DU, _BAI6, HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS Câu 5: Hãy viết tên BAITAP tên sai theo qui tắc - Tên sai: 2AB, I+J, Pascal BAI TAP Câu 6: Hãy cho biết biểu diễn biểu diễn Pascal lỗi trường hợp: Thảo luận phút a) 150.0 b) -22 c) 6,23 d) ‘43’ e) A20 f) ‘C g) 1.06E-15 h) 4+6 i) ‘TRUE” Nếu thời gian cho tập thêm: Câu 7: Hãy tên tên sai Pascal giải thích lí do: #TONG 1DIEM SO2 USES1 DT HV END EN5D BAI_1 BAI1 Câu 8: thích sau sai? Giải thích lí do? a (*giải phương trình* b.(*giải phương trình*) c.(*giải phương trình} d.{giải phương trình e.{giải {phương{ trình} f.{giải (*phương trình} Những tên sai: #TONG : Sai tên bắt kí tự đặc biệt # 1DIEM : Sai bắt kí tự số END : Sai trùng từ khố DT HV : Sai có cách NỘI DỤNG Những biểu diễn không hằng: 6,23: dấu phẩy (nếu dấu chấm đúng) A20: tên khơng rõ giá trị ‘C: sai qui định xâu: thiếu dấu nháy đơn cuối đầu đầu với dấu Chú thích sai: a : sai thiếu dấu ) c : sai mở (* đóng } d : sai thiếu dấu } IV DẶN DÒ Về nhà học tiết sau kiểm tra 15 phút Soạn trước theo câu hỏi sau: Câu 1: Cấu trúc chương trình viết NNLT? Câu 2: Các cách khai báo Pascal: khai báo tên chương trình, khai báo thư viện, khai báo hằng, khai báo biến Câu 3: thân chương trình Pascal gồm từ khố nào? Câu 4: để viết lệnh đưa thông báo hình ta dùng lệnh nào? V RÚT KINH NGHIỆM KIỂM TRA ĐÁNH GIÁ 15 PHÚT I MỤC ĐÍCH Kiểm tra lại khả tiếp thu trình học tập HS Từ điều chỉnh phương pháp giảng dạy II BẢNG RA ĐỀ KIỂM TRA Mức độ Biết Hiểu Vận dụng III NỘI DUNG Bài 1, 2, 3, Bài 5, 6, 7, 8, 10, 13, 14, 15, 18, 19, 20 9, 11, 12 IV KẾT QUẢ KIỂM TRA Trên trung bình: Dưới trung bính: Tiết CT: Tuần: Ngày soạn: 05.08.2013 Ngày dạy: 05.09.2013 CHƯƠNG II CHƯƠNG TRÌNH ĐƠN GIẢN - § CẤU TRÚC CHƯƠNG TRÌNH I MỤC ĐÍCH – U CẦU Hiểu chương trình mơ tả thuật tốn NNLT Biết cấu trúc chương trình đơn giản: cấu trúc chung thành phần Nhận biết thành phần chương trình đơn giản II PHƯƠNG PHÁP Phát vấn kết hợp với diễn giảng III PHƯƠNG TIỆN DẠY HỌC SGK, SGV, giáo án, số bảng vẽ lớn IV NỘI DUNG VÀ DIỄN BIẾN TIẾT DẠY Ổn định lớp (kiểm tra sĩ số) Kiểm tra cũ Câu 1: NNLT có thành phần nào? Câu 2: Thế tên dành riêng? Viết số tên dành riêng mà em biết? Câu 3: Tên dành riêng khác với tên chuẩn điểm nào? Nội dung HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS NỘI DUNG Hoạt động 1: ? Một làm văn em thường viết Lắng nghe, suy nghĩ trả lời: − Có phần có phần? phần có thứ − Có thứ tự: mở bài, thân tự khơng? phải chia vậy? bài, kết luận − Để dễ viết, dễ đọc, dễ Tư tự chương trình hiểu nội dung viết NNLT bậc cao có Cấu trúc chung thành phần thứ tự thành phần Đọc SGK Yêu cầu HS đọc SGK Trả lời câu hỏi [] ? Cấu trúc chung chương trình viết NNLT bậc cao có thành phần nào? Phần khai báo đặt dấu ngoặc vng có nghĩa có khơng Phần thân thiết Thành phần chương trình phải có a Phần khai báo: ? Trong khai báo có loại a1) Khai báo tên chương trình nào? Cú pháp: Bắt đầu từ khố Program ; ? Để khai báo tên chương trình ta Program Ví dụ: khoá nào? Program giai_phuong_trinh; Khai báo tên chương trình có ý Program VI_DU; nghĩa để ghi nhớ tên tốn cần giải Một số NNLT khơng cần phải khai báo tên chương trình 10 VI RÚT KINH NGHIỆM 66 Tiết CT: 39,40 Tuần: 29 Ngày soạn: 13.02.2014 Ngày dạy: 13.03.2014 § 16 VÍ DỤ LÀM VIỆC VỚI TỆP I MỤC ĐÍCH – YÊU CẦU Hiểu thao tác làm việc với tệp II PHƯƠNG PHÁP Nêu vấn đề, diễn giảng., vấn đáp… III PHƯƠNG TIỆN DẠY HỌC Máy tính máy chiếu projector IV NỘI DUNG VÀ TIẾN TRÌNH LÊN LỚP Ổn định lớp (kiểm tra sĩ số) Kiểm tra cũ: Câu hỏi: Viết cú pháp mở, đọc/ghi, đóng tệp? Mỗi phần cho ví dụ minh hoạ? Nội dung HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS NỘI DUNG Hoạt động 1: Ví dụ Hoạt động 1.1: Tìm hiểu đề Ví dụ 1: Chiếu tốn lên Phân tích, xác định u cầu Hướng dẫn HS tìm hiều đề tốn theo hướng dẫn Chương trình: bài: giáo viên Program Khoang_cach; Var d:real; ? Yêu cầu HS nhắc lại công Trả lời câu hỏi f:text; thức tính khoảng cách biết x, y: integer; toạ độ hai điểm? begin Hoạt động 1.2: tìm hiểu assign(f,’TRAI.TXT’); chương trình: Tìm hiểu nghiên cứu reset(f); Chiếu chương trình soạn chương trình while not eof(f) sẵn lên (có đánh vị trí begin dịng) read(f,x,y); ? Gọi HS nêu ý nghĩa câu d:= sqrt(x*x+y*y); lệnh dịng? write(‘khoang cach: ‘,d:10:2); Nhận xét, sau khái quát Quan sát kết chạy end; chương trình để HS nắm chương trình close(f) chạy chương trình end Hoạt động 1.3: Mở rộng tốn Thảo luận phút đưa Yêu cầu in lên hình đáp án khoảng cách trại xa với trại hiệu trưởng nhất? Hoạt đơng 2: ví dụ Hoạt động 2.1: Tìm hiểu tốn Chiếu tốn lên u cầu HS chia nhóm để tính điện trở tương đương sơ đồ Vi dụ Quan sát tìm hiểu Chương trình: tốn Program Chuong_trinh; Var a: array[1 5] of real; Chia nhóm nhóm xây R1, R2, R3: real; dựng cơng thức tính điện i: integer; 67 HOẠT ĐỘNG CỦA GV Chiếu sơ đồ điện trở Nhận xét yêu cầu nhóm chuyển biểu thức sang NNLT Pascal Hoạt động 2.2: Xây dựng chương trình: Gọi HS lên xây dựng chương trình theo bước Chiếu bước lên + Khai báo + Gán tên tệp cho biến tệp + Đọc liệu từ tệp + Tính điện trở tương đương + Ghi vào tệp + Đóng tệp Nhận xét tối ưu chương trình Chạy chương trình HOẠT ĐỘNG CỦA HS trở tương đương Mỗi HS lên trình bày theo bước Theo dõi rút kinh nghiệm chỗ cịn sai sót V CỦNG CỐ - DẶN DÒ Củng cố: Nhắc lại thủ tục thao tác với tệp Dặn dò Về nhà học làm tập trang 89 VI RÚT KINH NGHIỆM 68 NỘI DUNG f1, f2: text; Begin Assign(f1, ‘RESIST.DAT’); Reset(f1); Assign(f2, ‘RESIST.EQU’); Rewrite(f2); While not eof(f1) begin readln(f1,R1,R2,R3); a[1]:= R1*R2*R3/(R1*R2+R1*R3+R2*R3); a[2]:= R1*R2/(R1+R2) + R3; a[3]:= R1*R3/(R1+R3) + R2; a[4]:= R2*R3/(R2+R3) + R1; a[5]:= R1+R2+ R3; for i:=1 to write(f2,a[i]:9:2,‘= ‘); writeln(f2); end; close(f1); close(f2); end Tiết CT: 41,42 Tuần: 30 Ngày soạn: 20.02.2014 Ngày dạy: 20.03.2014 BÀI TẬP CHƯƠNG V I MỤC ĐÍCH – YÊU CẦU Củng cố kiến thức học chương V II PHƯƠNG PHÁP Nêu vấn đề, vấn đáp… III PHƯƠNG TIỆN DẠY HỌC SGK, bảng phụ… IV NỘI DUNG VÀ TIẾN TRÌNH LÊN LỚP Ổn định lớp (kiểm tra sĩ số) Kiểm tra cũ: Không kiểm tra cũ kiểm tra 15 phút Nội dung HOẠT ĐỘNG CỦA GV Hoạt động 1: câu 1/89 Nêu câu hỏi sau yêu cầu HS suy nghĩ trả lời HOẠT ĐỘNG CỦA HS Trả lời câu hỏi: Lưu lượng lớn thông tin, lưu thông tin lâu dài Hoạt động 2: câu 2/89 Trong sơ đồ thao tác với tệp, cần nhập Trong sơ đồ thao tác với tệp, cần nhập liệu từ liệu từ tệp phải dùng thao tác nào? tệp phải dùng thao tác như: gắn tên tệp, mở tệp để ghi, ghi liệu vào tệp, đóng tệp để hồn tất việc ghi liệu assign(f, fi); rewrite(f); write(f, x, ‘ ‘,y, ‘ ‘,z, ‘ ‘); close(f); Hoạt động 3: câu 3/89 Tại cần phải có câu lệnh mở tệp trước Trước sử dụng tệp phải có câu lệnh để trình đọc /ghi tệp? dịch biết mục đích mở tệp để đọc hay ghi, đồng thời đặt trỏ tệp vào vị trí thích hợp Hoạt động 4: câu 4/89 Phải dùng câu lệnh đóng tệp sau kết thúc ghi Tại sau phải dùng câu lệnh đóng tệp sau liệu vào tệp để hệ thống hoàn tất việc ghi liệu kết thúc ghi liệu vào tệp? tệp Có thể trình bày thêm ý: trước liệu thực ghi vào tệp, lưu trữ nhớ đệm Mỗi nhớ đệm đầy có u cầu đóng tệp liệu nhớ đệm (có thể chưa đầy) chuyển ghi vào tệp V CỦNG CỐ - DẶN DÒ Củng cố: Nhăc lại cần thiết phải sử dụng trệp 69 Dặn dò Chuẩn bị chương VI VI RÚT KINH NGHIỆM 70 Tiết CT: 43,44 Tuần: 31 Ngày soạn: 27.02.2014 Ngày dạy: 27.03.2014 CHƯƠNG VI CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CĨ CẤU TRÚC § 17 CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI I MỤC ĐÍCH – U CẦU Kiến thức − Biết khái niệm chương trình − Sự khác biệt hàm thủ tục − Biết ý nghĩa chương trình con, cần thiết phải viết chương trình thành chương trình − Biết cấu trúc chương trình Kĩ − 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 thác hai loại chương trình với tham số hình thiức chúng − Biết cách viết lời gọi chương trình thân chương trình 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,tn thủ u cầu cơng việc chung II PHƯƠNG PHÁP Nêu vấn đề, diễn giảng, thảo luận nhóm III PHƯƠNG TIỆN DẠY HỌC Máy chiếu, máy tính… IV NỘI DUNG VÀ TIẾN TRÌNH LÊN LỚP Ổn định lớp (kiểm tra sĩ số) Kiểm tra cũ: không kiểm tra cũ Nội dung HOẠT ĐỘNG CỦA GV Hoạt động 1: khái niệm chương trình phân loại: Hoạt động 1.1: Khái niệm chương trình Đặt vấn đề: chiếu tốn SGK ? Nếu em nhóm trưởng nhóm em giải toán nào? Dẫn dắt để đưa khái niệm chương trình HOẠT ĐỘNG CỦA HS NỘI DUNG Khái niệm chương trình a Khái niệm: Quan sát tốn Chia nhóm thảo luận (2’) Em chia bạn thự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 b Lợi ích việc sử dụng chương trình Hoạt động 1.2: Lợi ích − Tránh việc phải viết viết lại việc sử dụng chương trình dãy lệnh Chiếu chương trình giải − Chương trình dễ đọc, dễ hiểu, dễ kiểm tốn Đọc chương trình 3’ tra phát lỗi chỉnh sửa 71 HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS NỘI DUNG ? Em có nhận xét chương nhận xét:: Chương trình − Hỗ trợ việc thực chương trình trình (Đặc biệt phần bơi có đoạn lệnh tương tự lớn đen)? Làm cho chương − Phục vụ cho trình trừu tượng hóa trình trở nên dài − Mở rộng khã NN Nhóm HS khác nhận xét − Thuận tiện cho việc phát triển nâng cấp chương trình Để xử lí vấn đề NNLT bậc cao cung cấp khã Đọc SGK cho biết lợi xây dựng chương trình ích dạng tổng qt “đại diện” cho nhiều đoạn lệnh tương tự Cho HS nghiên cứu lợi ích việc sử dụng chương trình Giải thích lợi ích Chương trình Modul1(CTC) Modul1(CTC) Modul1(CTC) Modul1(CTC) Modul1(CTC) Hoạt động 2: Hoạt động 2.1: Phân loại chương trình ? Thế hàm, thủ tục? HS phát biếu chỗ khác hàm thủ tục? ? Em làm quen với hàm thủ tục Hàm: Sin(x), SQR(x), length(s) Hoạt động 2.2: cấu trúc Thủ tục: write( ), readln, chương trình con: delete(st,p,n) Đọc SGK yêu cầu HS lên bảng viết Yêu cầu HS so sánh với cấu Lên bảng viết cấu trúc CTC trúc chương trình Giống cấu trúc chương trình khác chỗ phần đầu chương trình bắt buộc phải 72 Phân loại cấu trúc chương trình a Phân loại: − Hàm (Function): chương trình thực số thao tác trả giá trị qua tên VD: sin(x), sqrt(s), length(s) − Thủ tục (procedure): chương trình thực số thao tác định khơng trả giá trị qua tên VD: write( ), readln, delete(st,p,n) b cấu trúc chương trình [ HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS Yêu cầu HS giải thích phần có khai báo phần thân chương trình HS đứng chỗ phát biểu Hoạt động 3: Một số khái niệm: Diễn giải để đưa khái niệm biến cục bộ, tham số hình thức VD: chương trình Luythua(x,k) x, k tham số hình thức j biến cục Hoạt động 4: Thực CTC ? Để sử dụng thủ tục hàm chuẩn em thường viết đâu viết nào? Để gọi chương trình con, ta cần có lệnh gọi tương tư tự hàm thủ tục chuẩn theo cú pháp Yêu cầu HS cho ví dụ NỘI DUNG − Phần khai báo khai báo biến, − Phần thân dãy lệnh với nhiệm vụ * Tham số hình thức Các biến khai báo cho liệu vào/ra gọi tham số hình thức CTC * Biến cục bộ: Các biến khai báo dùng riêng cho chương trình gọi biến cục * Biến tồn cục: Biến sử dụng cho chương trình, kể CTC * Tham số thực sự: Là biến chứa liệu vào tương ứng với tham số hình thức VD: Luythua(a,m) a, m tham số thực Viết chương trình c Thực chương trình con: Viết tên thủ thục tham số kết thúc dấu “;” Viết hàm lệnh thủ tục Hàm không viết lệnh Tên chương trình con(tham số thực sự) Chiếu chương trình yêu cầu Cho ví dụ HS xác định tham số hình thức, VD: Luythua(b,n); tham số thực sự, biến cục bộ, Chia nhóm để trả lời câu biến tồn cục hỏi V CỦNG CỐ - DẶN DÒ Củng cố: - Khái niệm chương trình - Lợi ích việc sd CTC - Phân biệt hàm thủ tục - Tham số hình thức, tham số thực sự, biến cục biến toàn cục - Thực chương trình Dặn dị Về nhà xem VI RÚT KINH NGHIỆM 73 Tiết CT: 45,46 Tuần: 32 Ngày soạn: 06.03.2014 Ngày dạy: 06.04.2014 § 18 VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG I MỤC ĐÍCH – YÊU CẦU Kiến thức − HS thấy thủ tục có cấu trúc tương tự chương trình − Hiểu mối liên quan chương trình thủ tục − Phân biệt tham trị tham số biến khai báo tham số hình thức thủ tục Kĩ − 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 phần đầu thủ tục − Nhận biết lời gọi thủ tục chương trình tham số thực II PHƯƠNG PHÁP Nêu vấn đề, diễn giảng, thảo luận nhóm III PHƯƠNG TIỆN DẠY HỌC Máy chiếu, máy tính… IV NỘI DUNG VÀ TIẾN TRÌNH LÊN LỚP Ổn định lớp (kiểm tra sĩ số) Kiểm tra cũ: Câu 1: lợi ích việc sd CTC? Câu 2: hàm khác thủ tục điểm nào? Câu 3: biến cục bộ, biến toàn cục, tham số hình thức, tham số thật sự, cho ví dụ? Nội dung HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS Hoạt động 1: Đặc vấn đề: Chiếu vd lên bảng (ví dụ VD_thutuc1 trang 96) Theo dõi Giới thiệu cho HS cấu trúc thủ tục vị trí khai báo thủ tục, lời gọi thủ tục Hoạt động 2: Tìm hiểu chương trình Chiếu chương trình VD_thutuc1 Giải thích để HS thấy được: + Tên thủ tục + Thân thủ tục + Lời gọi thủ tục + Hoạt động ch.trình ? Nếu ta muốn vẽ hình chủ nhật ta phải sửa chương trình nào? Trả lời câu hỏi Hoạt động 3: cấu trúc thủ tục 74 NỘI DUNG HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS NỘI DUNG ? Vị trí thủ tục nằm phần chương trình chính? ? Cấu trúc thủ tục gồm Nằm phần khai báo, a Cấu trúc thủ tục phần? sau phần khai báo biến procedure [(ds tham số)] [] Phần đầu thủ tục gồm từ Ba phần: tên thủ tục, khai begin khoá procedure tên báo thủ tục phần [] thủ tục, DS tham số có thân end; không Phần khai báo dùng để xác định kiểu biến xác định chương trình khác sd thủ tục Dãy câu lệnh viết cặp từ khoá begin end ? Chương trình Ve_hcn khuyết phần so với cấu trúc thủ tục? Tổng quát chiếu cấu trúc thủ tục Khuyết phần khai báo Nhấn mạnh số đặc điểm để HS nắm Theo dõi ghi vào tập * Chú ý: - Sau từ khoá end “;” - Các thủ tục có phải khai báo mơ tả phần khai báo chương trình sau phần khai báo biến - Khi muốn thực thủ tục ta viết lệnh gọi thủ tục thủ tục chuẩn Hoạt động 4: Ví dụ thủ tục có sử dụng tham số Hoạt động 4.1 VD_thutuc2 Xây dựng chương trình Hướng dẫn HS chia nhỏ yêu cầu để HS viết câu Chương trình: VD_thutuc2: SGK lệnh tương ứng + Vẽ cạnh + Vẽ hai cạnh bên + Vẽ cạnh Chính xác hố thủ tục Viết câu lệnh theo đưa toàn chương trình hướng dẫn GV hồn chỉnh Phân tích lời gọi thủ tục đưa khái niệm tham trị tham biến Nghe giảng ghi khái * Một số khái niệm: 75 HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS Hoạt động 4.2: niệm tham trị tham biến VD_thambien1 Chiếu yêu cầu đầu yêu cầu HS đưa thuật toán hoán đổi Dùng biến trung gian TG Chiếu chương trình lên TG ←x; hình chạy chương trình cho x ← y; HS thấy hoạt động y ← TG; tham biến Thay đổi thủ tục cách đưa Quan sát kết chạy x ngồi var chương trình Hoạt động 5: Cách viết sử dụng hàm ? Thủ tục khác với hàm điểm nào? Hàm có cấu trúc tương tự thủ tục khác với Trả lời câu hỏi thủ tục phần đầu Giải thích cụ thể tên hàm, DS tham số, kiểu liệu Hoạt động 5.1: Ví dụ Chiếu chương trình ví dụ ? Trong chương trình có hàm? Quan sát ví dụ ? Hàm UCLN(x,y) dùng để Một hàm UCLN làm gí? ? Lời gọi hàm đâu? Tìm UCLN lớn hai ? Có khác với thủ tục số x, y lời gọi hàm? A:= UCLN(tuso,mauso) Lời gọi hàm phải Hoạt động 5.2: Ví dụ đặt lệnh Yêu cầu HS tham khảo SGK lời gọi chương trình khác V CỦNG CỐ - DẶN DÒ Củng cố: - Cấu trúc thủ tục hàm - Cách viết sd thủ tục hàm - Phân biệt tham trị tham biến Dặn dò Về nhà xem trước thực hành VI RÚT KINH NGHIỆM 76 NỘI DUNG - Tham số giá trị (tham trị): tham số hình thức thay tham số thực tương ứng giá trị cụ thể khơng khai báo sau từ khố var - Tham số biến (tham biến): tham số hình thức thay tham số thực tương ứng tên biến khai báo sau từ khoá var Chương trình VD_tham bien1: SGK Cách viết sử dụng hàm: - Hàm có cấu trúc tương tự thủ tục, khác phần đầu function [(DS tham số)]: ; Vi dụ 1: SGK * Cách sử dụng hàm - Việc sử dụng hàm tương tự việc sử dụng hàm chuẩn - Lệnh gọi hàm tham gia vào biểu thức tham số lời gọi hàm, thủ tục khác Tiết CT: 47,48 Tuần: 33 Ngày soạn: 13.03.2014 Ngày dạy: 13.04.2014 BÀI THỰC HÀNH I MỤC ĐÍCH – YÊU CẦU Kiến thức Củng cố lại kiến thức xâu chương trình Kĩ Rèn luyện kĩ xử lí xâu việc tạo hiệu ứng chữ chạy hình Sử dụng chương trình lập trình Thái độ Rèn luyện HS ý thức cần có người lập trình Góp phần rèn luyện tác phong, tư lập trình: Tự giác, tích cực, chủ động thực hành II PHƯƠNG PHÁP Nêu vấn đề giải vấn đề III PHƯƠNG TIỆN DẠY HỌC Phịng máy thực hành vi tính, máy chiếu IV NỘI DUNG VÀ TIẾN TRÌNH LÊN LỚP Ổn định lớp (kiểm tra sĩ số) Kiểm tra cũ Nội dung HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS Yêu cầu HS khởi động chương trình Pascal Khởi động chương trình Hoạt động 1: Tìm hiểu xây dựng hai thủ tục catdan(s1,s2) cangiua(s) chiếu thủ tục catdan(s1,s2) lên hình Quan sát trả lời câu hỏi GV ? Đầu vào thủ tục này? Vào: Xâu kí tự s1 Ra: biến xâu kí tự s2 Chức thủ tục gì? Thực việc tạo sâu s2 từ xâu s1 việc chuyển kí tự thứ đến vị trí cuối xâu Lấy ví dụ SGK Chiếu nội dung thủ tục ? Đầu vào thủ tục? Đầu vào xâu kí tự s khơng q 79 kí tự ? Thủ tục thực cơng việc gì? Bổ sung vào s dấu cách để s đưa hình kí tự ban đầu dịng gồm 80 kí tự Cần lưu ý khơng khai báo s tham biến thủ tục khơng có hiệu lực lệnh đưa s hình khơng nằm thủ tục Hoạt động 2: Tìm hiểu chương trình câu b Chiếu nội dung chương trình lên hình ? Chức chương trình? Yêu cầu người sử dụng nhập xâu kí tự Đưa xâu hình có dạng dịng chữ chạy hình văn 25*80 Giới thiệu cho học sinh thủ tục hàm chuẩn Gotoxy(x,y): 77 HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS Delay(n): thường dùng để làm chậm chương trình lại cho ta quan sát, n số nguyên tính ms Keypressed: cho giá trị True ta nhấn phím vào bàn phím Thực chương trình để giúp HS thấy kết Quan sát kết hình chương trình Hoạt động 3: Rèn luyện kĩ lập trình Yêu cầu HS tìm hiểu vấn đề Quan sát đưa kết luận - Giống nhiệm vụ câu b, khác chương trình câu b ln cho xâu kí tự chạy dịng 12cịn xâu kí tự phải chạy xâu bất kì.Vì truyền tham số cho dịng chạy cho thủ tục Yêu cầu HS lập trình máy Viết chương trình máy báo cáo kết Yêu cầu HS chạy chương trình nhập test Nhập test theo hướng dẫn giáo viên Đánh giá kết lập trình HS V CỦNG CỐ - DẶN DÒ Củng cố: Nhắc lại số lỗi thực hành Dặn dò Câu hỏi tập nhà Viết thủ tục chaychu(s, dong) nhận tham số xâu s khơng q 79 kí tự biến ngun dịng In hình dịng chữ xác định S chạy dòng Don Viết chương trình thực có sử dụng thủ tục Xem trước thực hành VI RÚT KINH NGHIỆM 78 Tiết CT: 49 Tuần: 34 Ngày soạn: 20.03.2014 Ngày dạy: 20.04.2014 BÀI TẬP CHƯƠNG VI I MỤC ĐÍCH – YÊU CẦU Kiến thức Củng cố lại kiến thức chương trình Kĩ Rèn luyện kĩ lập trình giải số tốn đơn giản Thái độ Rèn luyện HS ý thức cần có người lập trình Góp phần rèn luyện tác phong, tư lập trình: Tự giác, tích cực, chủ động thực hành II PHƯƠNG PHÁP Nêu vấn đề giải vấn đề III PHƯƠNG TIỆN DẠY HỌC Phòng máy thực hành vi tính, máy chiếu IV NỘI DUNG VÀ TIẾN TRÌNH LÊN LỚP Ổn định lớp (kiểm tra sĩ số) Kiểm tra cũ Nội dung HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS Họat động 1: Tìm hiểu việc xây dựng hàm thủ tục Chiếu khai báo kiểu liệu Diem tam giác Chiếu Chức CTC: thủ tục lên bảng Daicanh( ) tính độ dài ba cạnh a, b, c tam ? Chức CTC? giác r Chuvi( ): real; cho giá trị chu vi tam giác Tinhchat( ) khẳng định tính chất tam giác: đều, cân, vuông Hienthi( ); hiển thị toạ độ ba đỉnh tam giác Kh_cach( ); cho giá trị khoảng cách hai điểm Có tham số nào? Tham số tham số biến, - Tham số biến r, a, b, c tham số tham trị? - Tham số giá trị p, q Hoạt động 2: tìm hiểu chương trình câu b SGK Chiếu chương trình câu b ? Chương trình thực cơng việc gì? Nhập toạ độ ba đỉnh tam giác khảo sát tính chất tam giác cân, đều, vng In chu vi Thực chương trình để giúp HS thấy kết diện tích tam giác Thay biến thành tham trị để HS thấy sai khác V CỦNG CỐ - DẶN DÒ Củng cố: Nhắc lại số lỗi thực hành Dặn dò Câu hỏi tập nhà 79 Viết thủ tục chaychu(s, dong) nhận tham số xâu s khơng q 79 kí tự biến ngun dịng In hình dịng chữ xác định S chạy dịng Don Viết chương trình thực có sử dụng thủ tục Xem trước thực hành VI RÚT KINH NGHIỆM 80 ... integer; A: Dayso; Tim_thay: boolean; Begin clrscr; write(‘nhap so phan tu cua day, N = ‘); readln(N); writeln(‘nhap cac phan tu cua day so tang: ‘); For i := to N begin write(‘phan tu thu’,i,’... biểu diễn điểm toán, N byte điểm tin mà khơng nên Tổng cộng: 23 byte ngắn gọn mà đặt d1, d2 mà nên đặt dtoan, dtin - Ví dụ khơng nên dùng d1, d2 diemmontoan, diemmontin Ví dụ khai báo biến số học... thức quan hệ có dạng nào? Trình tự thực biểu thức quan hệ? Kết biểu thức quan hệ? Câu 2: Biểu thức lôgic gồm biểu thức nào? Các biểu thức quan hệ đặt đâu? Giá trị thực biểu thức logic? Câu 3: Trong