Ngày soạn : 13 /10 /2010 Người soạn : Trần Thị Kim Thân Ngày dạy : 19 /10 /2010 Bùi Thị Thanh Tâm Phòng : Nguyễn Thị Phương Dung Tiết 15 BÀITẬP A. MỤC TIÊU : • Củng cố kiến thức đã học. • Vận dụng những kiến thức đã học để giải quyết các bàitập cụ thể một cách linh hoạt và sáng tạo. • Rèn luyện thái độ cẩn thận, tính chính xác trong quá trình làm bài tập. B. CHUẨN BỊ : 1. Giáo viên : - SGK, Sách GV . - Đồ dùng dạy học như máy tính, projector, . 2. Học sinh: - Kiến thức đã học. - SGK, Đồ dùng học tập, bảng phụ . C. TIẾN TRÌNH TIẾT DẠY : I. Ổn định tổ chức lớp : - Kiểm tra sĩ số : Vắng : - Ổn định trật tự : II. Kiểm tra bài cũ : - Kiểm tra việc chuẩn bị bài ở nhà của học sinh trong vở. III. Dạy bài mới : HOẠT ĐỘNG CỦA THẦY VÀ TRÒ KIẾN THỨC CẦN ĐẠT HOẠT ĐỘNG 1 : CHỐT LẠI KIẾN THỨC TRỌNG TÂM ĐỂ ÁP DỤNG LÀM BT - GV: Trong TP có những kiểu dữ liệu cơ bản nào? HS: Trả lời - GV: Hãy nêu các phép toán cơ bản trong TP? HS: Trả lời - GV : Biến là gì? HS: Trả lời. - GV : Cách khai báo biến như thế nào? HS: Viết lên bảng dạng tổng quát để khai báo biến. - GV : Có thể thực hiện các thao tác nào với biến? HS: Trả lời. - Các kiểu dữ liệu cơ bản: Integer: Số nguyên Real: Số thực Char: Ký tự String: Xâu ký tự - Các phép toán cơ bản: +, -, *, /, Div (Phần nguyên), Mod (Phần dư) - Biến dùng để đặt tên cho một vùng của bộ nhớ máy tính. Biến lưu trữ dữ liệu (giá trị). Giá trị của biến có thể thay đổi trong quá trình thực hiện chương trình. - Trước khi sử dụng biến phải khai báo theo dạng sau : Var < tên biến> : <kiểu của biến>; - Các thao tác có thể thực hiện với biến là gán giá trị cho biến hoặc nhập giá trị cho biến và tính toán Giáo án Tin học 8 1 - GV : Viết cấu trúc của lệnh gán, lệnh nhập giá trị cho biến, lệnh in giá trị của biến? HS: (3 em) Lên bảng mỗi em viết 1 lệnh. HS: Nhận xét - GV : Nhận xét và chốt kiến thức cơ bản về biến. - GV : Hằng là gì? HS: Trả lời. - GV : Cách khai báo hằng như thế nào? HS: Lên bảng viết dạng tổng quát. - GV : Nhận xét và chốt kiến thức. với giá trị của biến. - Lệnh gán có dạng: Tên biến := biểu thức(gt); - Lệnh nhập giá trị cho biến: Readln(tên biến); - Lệnh in giá trị cho biến : Write(tên biến); hoặc Writeln(tên biến); - Hằng là đại lượng để lưu trữ giữ liệu và hằng không thay đổi giá trị trong quá trình thực hiện chương trình. - Khai báo hằng: Const tên hằng=giá trị; HOẠT ĐỘNG 2 : BÀITẬP ÁP DỤNG - GV: Yêu cầu HS làm bàitập 3 SGK/26. - HS: Trả lời - GV: Yêu cầu HS làm bàitập 4 SGK/26. - HS: Lên bảng làm bài - GV: Yêu cầu HS làm bàitập 4 SGK/33. - HS: Lên bảng làm bàiBài 1: Hãy phân biệt ý nghĩa của các câu lệnh Pascal sau đây: Writeln (‘5 + 20=’, ’20 + 5’); và Writeln (‘5 + 20=’, 20+5); * Lệnh Writeln('5+20=','20+5') in ra màn hình hai xâu ký tự '5+20' và '20+5' liền nhau: 5+20 = 20+5, còn lệnh Writeln('5+20=',20+5) in ra màn hình xâu ký tự '5+20' và tổng 20 + 5 như sau: 5+20=25. - Hai lệnh sau có tương đương nhau không? Vì sao? Writeln (‘100’); và Writeln (100); * Hai lệnh trên không tương đương nhau. Mặc dù hai lệnh trên đều xuất ra một kết quả là 100. Tuy nhiên, lệnh Writeln (‘100’); thì cho kết quả ở dạng chuỗi, còn Writeln (100); thì xuất kết quả ở dạng số. Bài 2: a) a c b d + ; b) 2 ax bx c+ + ; b) 2 ax bx c+ + ; c) 1 a (b 2) x 5 − + ; d) 2 3 (a b)(1 c)+ + a) a/b+c/d; b) a*x*x+b*x+c ; b) a*x*x+b*x+c ; c) 1/x-a/5*(b+2); d) (a*a+b)*(1+c)*(1+c)*(1+c). d) (a*a+b)*(1+c)*(1+c)*(1+c) Bài 3: Trong Pascal, khai báo nào sau đây là đúng? a) Var tb: real; b) Var 4hs: integer; c) const x: real; Giáo án Tin học 8 2 - GV : Đưa chương trình bài 4 lên bảng cho HS quan sát. - GV : Hãy chỉ ra lần lượt các lỗi và sửa như thế nào? HS: Từng em chỉ ra từng lỗi và lên bảng sửa. HS: Nhận xét chương trình còn lỗi không và sửa (nếu còn) HS: Nhận xét kết quả. - GV : Nhận xét và viết lại chương trình hoàn chỉnh. - GV: Yêu cầu HS làm bài 6SGK/33. - GV : Giúp học sinh phân tích bài toán và hướng dẫn cách viết từng bước để giải bài toán này. HS: Lắng nghe và trả lời câu hỏi. - GV : Hãy viết công thức tính S, c, d? HS: Trả lời - GV : Hướng dẫn HS viết từng phần (khai báo, thân chương trình) để giải quyết bài toán. HS: Viết giấy nháp theo hướng dẫn của GV. - GV : Chốt lại toàn chương trình và viết lại chương trình hoàn thiện. d) Var R=30; Bài 4: Hãy chỉ ra lỗi và sửa lỗi trong chương trình sau : Const pi:=3.1416; Var cv,dt:integer R:real; Begin R=5.5 Cv=2*pi*r; Dt=pi*r*r; Writeln(‘chu vi la:= cv’); Writeln(‘dien tich la:=dt’); Readln End. Bài 5: Hãy cho biết kiểu dữ liệu của các biến cần khai báo để viết chương trình giải các bài toán sau : a) Tính diện tích S của hình tam giác với độ dài một cạnh a và chiều cao tương ứng h (a và h là các số tự nhiên được nhập vào từ bàn phím). b) Tính kết quả c của phép chia lấy phần nguyên và kết quả d của phép chia lấy phần dư của hai số nguyên a và b. Câu a: Program dientich; Var a, h: interger; S : real; a,b,c,d : integer; Begin Write(‘Nhap canh day và chieu cao :’); Readln (a,h); S:=(a*h)/2; Writeln(‘ Dien tich hinh tam giac la :’,S:5:1); Readln; End. Câu b: Program tinh; Var a,b,c,d : integer; Begin Write(‘Nhap hai so a,b :’); Readln (a,b); Giáo án Tin học 8 3 c:=a div b; d:=a mod b; Writeln(‘ Phan nguyen cua a va b la :’,c); Writeln(‘ Phan du cua a va b la :’,d); Readln; End. • Củng cố kiến thức. - GV : Chốt lại kiến thức trọng tâm cần nắm được để áp dụng làm bài tập. - Làm lại tất cả các bàitập trên lớp ở nhà. - Ôn lại bài cũ đã học. • Hướng dẫn về nhà. - Ôn tập lại các kiến thức đã học, làm lại các bàitập trong SGK. Tuần sau kiểm tra 45’ (lý thuyết) Ngày soạn : 13 /10 /2010 Người soạn : Trần Thị Kim Thân Giáo án Tin học 8 4 Ngày dạy : 19 /10 /2010 Bùi Thị Thanh Tâm Phòng : Thực hành Nguyễn Thị Phương Dung Tiết 16 KIỂM TRA 1 TIẾT ( trên máy) A. MỤC TIÊU : - Đánh giá kiến thức, kỹ năng của học sinh về ngôn ngữ lập trình, cấu trúc của chương trình, sử dụng biến, hằng trong chương trình. B. YÊU CẦU CỦA BÀI : 1. Kiến thức : - Kiểm tra kiến thức về ngôn ngữ lập tình, cấu trúc của chương trình, sử dụng biến, hằng trong chương trình. 2. Kỹ năng: Chuyển đổi giữa biểu thức toán học , ký hiệu trong ngôn ngữ Pascal. 3. Kiểm tra trên máy: Kiểm tra sau khi học phần các kiểu dữ liệu cơ bản và sử dụng biến trong chương trình. C. Ma trËn ®Ò : Nội dung Mức độ Ngôn ngữ lập trình Dữ liệu và các phép toán Biến và hằng Tổng điểm Biết 1 2 5 Hiểu 2 2 3 Vận dụng 3 3 2 D. ĐỀ BÀI : Câu 1 ( 2đ) : Khởi động Turbo Pascal lên, mở ra 1 file mới và thực hiện lập trình tính toán . Câu 2 (4đ) : Hãy viết chương trình để tính trên máy biểu thức sau 15 18 13 510 + − + + • Lưu lại file với tên bai1.pas Câu 3 ( 4 đ) : Mở ra 1 fle mới và viết chương trình để tính diện tích S của tam giác ABC, với ahS 2 1 = ( trong đó a và h được nhập vào từ bàn phím • Lưu lại file với tên bai2.pas E. ĐÁP ÁN VÀ BIỂU ĐIỂM Câu 1 : + Khởi động được Turbo Pascal : 1 điểm + Mở ra được 1 trang soạn thảo : 1 điểm Câu 2 : Chương trình được viết như sau Giáo án Tin học 8 5 Program tinh_bieu_thuc; Uses Crt ; Begin Clrscr; Write(‘ Ket qua cua bieu thuc ( (10+5)/(3+1))-(18/(5+1))=’, ( (10+5)/(3+1))-(18/ (5+1)); Readln; End. + Khai báo tên chương trình ; (0,5đ) + Khai báo thư viện : (0,5đ) + Viết thân chương trình có câu lệnh Write ( 1đ) + Chương trình dịch và cho ra kết quả (2đ) Câu 3 : Chương trình được viết như sau : Program bai2; Uses Crt; Var a,h : Integer; S : real; Begin Clrscr ; Write(‘Hãy nhập chiều cao :’) ; Readln(h); Writeln(‘ Hãy nhập cạnh a :’); Readln (a); S:=1/2*a*h; Write(‘Diện tích tam giác là :’,S); Readln; End. + Khai báo tên chương trình và thư viện (1đ) + Khai báo được các biến : (1đ) + Viết câu lệnh thông báo và nhập dữ liệu : (1đ) + Đưa được kết quả ra màn hình : (1đ) D.CỦNG CỐ: - Thu bài về nhà chấm. G. HƯỚNG DẪN VỀ NHÀ: - Đọc nghiên cứu trước phần mềm Sun Times SGK/88. Ngày soạn : 13 /10 /2010 Người soạn : Trần Thị Kim Thân Giáo án Tin học 8 6 Ngày dạy : 19 /10 /2010 Bùi Thị Thanh Tâm Tiết 16 Nguyễn Thị Phương Dung KiÓm tra bµi viÕt sè 1 (45’) A. MỤC TIÊU : - Đánh giá kiến thức, kỹ năng của học sinh về ngôn ngữ lập trình, cấu trúc của chương trình, sử dụng biến, hằng trong chương trình. B. YÊU CẦU CỦA BÀI : 1. Kiến thức : - Kiểm tra kiến thức về ngôn ngữ lập tình, cấu trúc của chương trình, sử dụng biến, hằng trong chương trình. 2. Kỹ năng : Chuyển đổi giữa biểu thức toán học và ký hiệu trong ngôn ngữ Pascal. 3. Kiểm tra trên giấy : Kiểm tra sau khi học phần sử dụng biến trong chương trình. C. MA TRẬN ĐỀ : Nội dung Mức độ Khái niệm chương trình Kiểu dữ liệu/ Lệnh vào ra cơ bản Sơ bộ về ngôn ngữ Pascal Biến và hằng Biết Câu 1 Câu 3, Câu 4, Câu 7 Câu 8,Câu 5, Câu 9 Câu 10 Hiểu Câu 2 Câu 6 Vận dụng Câu 11 Câu 13 Câu 12, Câu 13 D. ĐỀ KIỂM TRA : I/ Trắc nghiệm: Hãy chọn phương án đúng: Câu 1 : Máy tính hiểu và thực hiện các lệnh trực tiếp ở ngôn ngữ nào ? A. Ngôn ngữ Tiếng Việt B. Ngôn ngữ Tiếng Anh C. Ngôn ngữ Pascal D. Ngôn ngữ máy Câu 2 : Theo em hiểu viết chương trình là gì ? A. Tạo ra các câu lệnh rồi sắp xếp theo một trật tự nào đó. B. Viết ra một đoạn văn bản được sắp xếp theo chương trình. C. Viết ra các câu lệnh mà em đã được học. D. Tạo ra các câu lệnh để điều khiển Robot. Câu 3 : Để chia lấy phần nguyên ta dùng phép toán : A. Div B. : C. Mod D. / Câu 4 : Để viết thông tin ra màn hình, Pascal sử dụng câu lệnh : A. Write B. Read; C. Delay; D. Clrscr; Giáo án Tin học 8 7 Câu 5 : Cấu trúc của một chương trình Pascal thường có những phần sau : A. Phần thân, phần cuối B. Phần khai báo, phần thân, phần cuối. C. Phần khai báo, phần thân. D. Phần đầu, phần thân, phần cuối. Câu 6: Ngôn ngữ lập trình gồm những yếu tố nào? A. Tập hợp các ký tự B. Các quy tắc C. Cả A và B đều đúng D. Ý tưởng – Giải thuật. Câu 7: Ý nghĩa của lệnh Readln(x) là: A. In giá trị của biến x ra màn hình. B. Dừng màn hình kết quả. C. Nhập dữ liệu từ bàn phím vào cho biến x. D. Xóa màn hình kết quả. Câu 8: Lệnh gán trong Pascal được viết như sau: A. := B. >= ; C. => ; D. # Câu 9: Trong ngôn ngữ lập trình Pascal để chạy chương trình sau khi đã biên dịch xong người ta thường sử dụng phím nào? A. Ctrl + F8 ; B. Ctrl + F9 C. Ctrl + F10 D. Ctrl + F2. Câu 10: X là một số thực, để khai báo biến X ta có thể khai báo như sau: A. Var X: integer; B. Var X: Real; C. Var X: String; D. Var X: char; II/ Tự luận: Câu 11 (3 điểm): Viết các biểu thức toán học sau bằng các ký hiệu trong ngôn ngữ Pascal. a) 5x 3 + 2x 2 – 8x + 15 b) yx yx − + c) 4 22 22 aca −+ Câu 12 (2 điểm): Hằng giống và khác biến ở điểm nào? Câu 13 (2 điểm): a) Viết chương trình nhập vào 2 số nguyên a và b từ bàn phím. Sau đó in ra tích của 2 số a và b. b) Viết chương trình: Nhập vào giá trị chiều dài và chiều rộng của hình chữ nhật. In ra màn hình chu vi và diện tích của hình chữ nhật đó. ------- Hết ------- E. ĐÁP ÁN I/ Trắc nghiệm: Câu 1 2 3 4 5 6 7 8 9 10 Đáp án D A A A C C C A B B II/ Tự luận: Câu 11: a) 5*x*x*x + 2*x*x-8*x+15 b) (x+y)/(x-y) c) (2*a*a+2*c*c – a)/4 Câu 12: Hằng và biến: • Giống nhau: - Là đại lượng được đặt tên dùng để lưu trữ dữ liệu. - Đều phải khai báo trước khi sử dụng. • Khác nhau: Giáo án Tin học 8 8 - Giá trị của biến có thể thay đổi, còn giá trị của hằng được giữ nguyên trong suốt quá trình thực hiện chương trình. Câu 13: a) Program Tich; uses crt; var a, b, Tich: integer; Begin Write (‘ nhap a=’); readln(a); Write (‘ nhap b=’); readln(b); Tich: = a*b; Writeln (‘ tich cua a vµ b la:’, Tich: 8:2); Readln; End. b) Program HCN; uses crt; var a, b, s, chu_vireal; Begin Write( ‘nhap chieu dai hinh chu nhat vao bien a=’); Readln(a) ; Write( ‘nhap chieu rong hinh chu nhat vao bien b=’); Readln(b); Chu_vi:=a+b; Writeln(‘chu vi hinh chu nhat la:’,chu_vi) ; S := a*b ; Writeln(‘ dien tich hinh chu nhat la:’, s); Readln; End. F. CỦNG CỐ: GV: - Thu bài về nhà chấm. - Sửa nhanh phần trắc nghiệm G. HƯỚNG DẪN VỀ NHÀ: - Đọc nghiên cứu trước phần mềm Sun Times SGK/88. Giáo án Tin học 8 9 . làm bài tập. - Làm lại tất cả các bài tập trên lớp ở nhà. - Ôn lại bài cũ đã học. • Hướng dẫn về nhà. - Ôn tập lại các kiến thức đã học, làm lại các bài tập. GV: Yêu cầu HS làm bài tập 3 SGK/26. - HS: Trả lời - GV: Yêu cầu HS làm bài tập 4 SGK/26. - HS: Lên bảng làm bài - GV: Yêu cầu HS làm bài tập 4 SGK/33. -