Hãy chọn những phát biểu đúng dưới đây: a Để có thể sử dụng biến và hằng trong chương trình ta phải khai báo chúng trong phần khai báo b Ta chỉ cần khai báo tên biến mà không cần khai bá[r]
(1)Tuần: 16 Tiết: 32 Bài thực hành SỬ DỤNG LỆNH ĐIỀU KIỆN IF THEN (Tiết 2) Ngày soạn: 02/12/2013 Ngày dạy: 03/12/2013 I Mục tiêu: Kiến thức: Học sinh viết câu lệnh điều kiện IF….Then Kỹ năng: Rèn kĩ ban đầu đọc các chương trình đơn giản và hiểu ý nghĩa thuật tốn sử dụng chương trình Luyện tập sử dụng cu lệnh IF……….Then, HS phải hiểu và phải tự viết chương trình giải bài toán tương tự (ví dụ kiểm tra tính chất tam giác dựa trên số đo cạnh: cân, đều, vuông) Thái độ: Có ý thức, tự giác làm bài tập, giúp đỡ lẫn hoạt động nhóm, tính kỷ luật, biết giữ gìn tài sản chung II Chuẩn bị:: Giáo viên: Phòng máy, máy chiếu, bài trình chiếu Học sinh: Học bài cũ III Tiến trình: Ổn định lớp – Kiểm tra sỉ số: 8A1: .8A2: .8A3: Kiểm tra bài cũ: Câu 1: Trong Pascal, câu lệnh điều kiện dạng thiếu viết các từ khóa if và then nào? Hãy viết câu lệnh dạng thiếu để in số a màn hình a<b? Câu 2: Trong Pascal, câu lệnh điều kiện dạng đầy đủ viết các từ khóa if và then nào? Hãy viết câu lệnh dạng đầy đủ để in số a màn hình a<b? Bài mới: Nội dung Họat động thầy Họat động trò Hoạt động 1: Bài 3(31 phút) - Gv cho hs đọc đề - Hs đọc đề, thảo luận kĩ để hiểu Bài Dưới đây là chương trình + yêu cầu hs Tìm hiểu ý nghĩa chương trình này nhập ba số dương a, b, và c từ bàn các câu lệnh chương trình, - Hs thực theo yêu cầu Gv phím, kiểm tra và in màn hình soạn, dịch và chạy chương trình cách gõ chương trình vào kết kiểm tra ba số đó có thể là với các số tuỳ ý.(trong thời gian máy và chạy chương trình độ dài các cạnh tam giác 20’) hay không -trong hs sinh thực gv Ý tưởng: Ba số dương a, b, và c là quan sát giúp đỡ hs yếu theo dõi độ dài các cạnh tam giác quá trình làm bài hs và a + b > c, b + c > a +lưu ý cho hs là cần biết điều kiện và c + a > b Program để ba số dương a, b, c là ba cạnh Ba_canh_tam_giac; tam giác thì tổng hai cạnh uses crt; phải lớn lớn cạnh còn lại, nghĩa là Var a, b, c: real; phải đồng thời thoả mãn ba điều Begin kiện a + b > c, b + c > a và c + a > Clrscr; b - Hs chú ý cái khó bài này là write('Nhap ba so a, +GV hướng dẫn HS cách biểu phải biết chuyển biểu thức điều b va c:'); diễn ba điều kiện này Pascal: kiện toán học sang biểu diễn readln(a,b,c); (a+b>c) and (b+c>a) and (c+a>b) Pascal If (a+b>c) and + giải thích để HS hiểu dùng phép (b+c>a) and (c+a>b) quan hệ and là để đảm bảo ba then điều kiện a + b > c, b + c > a và c writeln('a, b va c + a > b đồng thời thoả mãn; Việc la canh cua mot phải sử dụng dấu ngoặc tròn tam giac!') phép so sánh trên là để đảm bảo else writeln('a, b, thứ tự ưu tiên thực phép toán c khong la canh và để đảm bảo tham số phép cua tam giac!'); and (và or) có thể là giá trị End đúng sai (không là số) Đại diện nhóm trình bày Tìm hiểu ý nghĩa các câu lệnh -yêu cầu hs trình bày chương trình, soạn, dịch và -Để HS luyện tập thêm câu lệnh (2) điều kiện, phép so sánh, có thể yêu cầu HS viết chương trình Vieát chöông trình kieåm tra xeùt khen thưởng cho học sinh.( Học sinh có điểm trung bình 8.0 trở lên thì khen thưởng ) - Hs Program Khen; Var diem: Real; Begin Writeln(‘ Nhap diem trung binh ‘); Readln(diem); If diem > = then Writeln (‘ khen thuong ’) Else Writeln ( ‘khong duoc khen thuong’) Readln; End chạy chương trình với các số tuỳ ý Lưu ý: Trong chương trình trên chúng ta sử dụng từ khoá and để kết hợp nhiều phép so sánh đơn giản thành phép so sánh phức hợp Giá trị phép so sánh này là đúng và tất các phép so sánh đơn giản có giá trị đúng Ngược lại, cần phép so sánh thành phần có giá trị sai thì nó có giá trị sai IV Củng cố - Dặn dò: - Nhắc lại cấu trúc và lưu ý sử dụng câu lệnh điều kiện - Học bài,ôn lại cấu trúc câu lệnh điều kiện Bài tập nhà: Viết chương trình cho phép nhập điểm bài kiểm tra bạn nào đó, sau đó thực hiện: - Nếu điểm nhỏ 5, in dòng chữ "Ban can co gang hon"; - Nếu điểm lớn và nhỏ 6.5, in dòng chữ "Ban dat diem trung binh"; - Nếu điểm lớn 6.5 và nhỏ 8, in dòng chữ "Ban dat diem Kha"; - Nếu điểm lớn 8, in dòng chữ "Hoan ho ban dat diem Gioi" (3) Tuần: 17 Tiết: 33 KIỂM TRA THỰC HÀNH Ngày soạn: 06/12/2013 Ngày dạy: 10/12/2013 I Mục tiêu: Kiến thức: Kiểm tra khả thực hành, nắm kiến thức v vận dụng vo lập trình học sinh, thông qua đó giúp đỡ học sinh và giáo viên thấy ưu nhược điểm quá trình học tập học sinh để có biện pháp bổ sung giúp đỡ Kỹ năng: Rèn kĩ viết các chương trình đơn giản Thái độ: Có ý thức, tự giác, trung thực làm bài II Chuẩn bị:: Giáo viên: Phòng máy, đề kiểm tra Học sinh: Hệ thống lại kiến thức III Tiến trình: 1.Ổn định lớp – Kiểm tra sỉ số: 8A1: .8A2: .8A3: Phát bài và theo dõi kiểm tra: Thu bài - Dặn dò: Về nhà chuẩn bị nội dung bài ôn tập IV Thống kê bài làm học sinh: Lớp – 10 TS % 6.5 – 7.9 TS % – 6.4 TS % 3.1 – 4.9 TS % 8A1 8A2 8A3 TC V Nhận xét bài làm học sinh – Rút kinh nghiệm: 2–3 TS % 0.1 – 1.9 TS % TS % Trên TB TS % (4) Ma trận đề: Nhận biết Thông hiểu Câu lệnh điều kiện Tổng điểm Vận dụng Tổng 5đ 5đ 5đ 5đ 5đ 10đ Đề bài: Bài 1: Vết chương trình tìm số lớn hai số a,b (a khác b) nhập từ bàn phím (5 điểm) Bài 2: Cho trước ba số dương a, b và c Viết chương trình kiểm tra ba số đó có thể là ba cạnh tam giác hay không (5 điểm) Đáp án: Bài : Var a,b: real ; (1đ) Begin Writeln(‘nhap so a :’) ; readln(a) ; Writeln(‘nhap so b :’) ; readln(b) ; (2đ) If a >b then writeln(‘ so lon hon la :’ ,a) else writeln(‘ so lon hon la :’, b) (2đ) End Học sinh làm cách khác mà đúng cho điểm tối đa Bài Var a,b,c : Real ; (1 đ) Begin write('Nhap ba so a, b va c:'); readln(a,b,c);(1đ) If(a+b>c)and(b+c>a)and(c+a>b)then writeln('a, b va c la canh cua mot tam giac!') else writeln('a, b, c khong la canh cua tam giac!'); end (3đ) Học sinh làm cách khác mà đúng cho điểm tối đa Tuần: 17 ÔN TẬP (Tiết 1) Ngày soạn: 06/12/2013 (5) Tiết: 34 Ngày dạy: 10/12/2013 I Mục tiêu: Kiến thức: Học On tập cho học sinh các kiến thức sau: o Chương trình máy tính là gì? Ngôn ngữ lập trình? Chương trình dịch? o Các thành phần ngôn ngữ lập trình? Cấu trúc chương trình? o Khái niệm, khai báo và vai trò biến, hằng? Lệnh gán o Khái niệm kiểu liệu, số phép toán Kỹ năng: Mô tả thuật toán đơn giản liệt kê các bước Viết chương trình Pascal đơn giản, khai báo đứng biến, câu lệnh vào/ra để nhập thông tin từ bàn phím đưa thông tin màn hình Thái độ: Có ý thức, tự giác làm bài tập, giúp đỡ lẫn hoạt động nhóm, rèn tính kỷ luật, biết giữ gìn ti sản chung II Chuẩn bị:: Giáo viên: Phòng máy, máy chiếu, bài trình chiếu Học sinh: Ôn tập lại các kiến thức từ bài đến bài III Tiến trình: Ổn định lớp – Kiểm tra sỉ số: 8A1: .8A2: .8A3: Kiểm tra bài cũ: +Câu 1: Nêu cú pháp câu lệnh điều kiện dạng thiếu? +Câu 2: Nêu cú pháp câu lệnh điều kiện dạng đủ? Bài mới: Họat động thầy Họat động trò Hoạt động 1: Ơn tập lý thuyết - Vì caàn phaûi vieát chöông - Vieát chöông trình laø vieát nhieàu trình để điều khiển máy tính? lệnh và tập hợp lại chương trình giúp người điều khieån maùy tính moät caùch hieäu quaû hôn - Ngôn ngữ lập trình là gì? - Ngôn ngữ lập trình là ngôn ngữ dùng để viết các chương trình maùy tính -Nêu các bước chương trình - Gồm bước: dòch? + B1: Vieát chöông trình baèng ngôn ngữ lập trình +B2: Dòch chöông trình thaønh ngôn ngữ máy để máy tính hiểu - Nêu cấu trúc chung chương trình? - Goàm phaàn: Phaàn khai baùo vaø - Nêu vài kiểu liệu phần thân ngôn ngữ lập trình Pascal? - Integer, Real, Char, String - Caùch khai baùo bieán? - Pheùp gaùn giaù trò cho moät bieán coù daïng gì? - Var tên_biến: kiểu_dữ_liệu - Câu lệnh nhập liệu? - Tên_biến:= biểu thức - Câu lệnh in giá trị ( liệu )? - Read(tên_biến) Readln(teân_bieán ) - Câu lệnh khai báo có dạng - Write(tên_biến) gì? Writeln(teân_bieán ) - Nêu khác và giống - Const tên_hằng = giá_trị bieán vaø haèng Nội dung I Lyù thuyeát: Vì caàn phaûi vieát chöông trình để điều khiển máy tính? Ngôn ngữ lập trình là gì? Nêu các bước chương trình dòch? Neâu caáu truùc chung cuûa chöông trình? Nêu vài kiểu liệu ngôn ngữ lập trình Pascal? Caùch khai baùo bieán? Pheùp gaùn giaù trò cho moät bieán coù daïng gì? Câu lệnh nhập liệu? Câu lệnh in giá trị (dữ liệu )? 10 Caâu leänh khai baùo haèng coù daïng gì? 11 Nêu khác và giống biến và (6) + Giống: Dùng để lưu liệu + Khaùc: Haèng phaûi xaùc ñònh khai báo và không thay đổi; biến có thể thay đổi Hoạt động 2: Ôn tập bài tập - Gv đưa hệ thống bài tập lên máy chiếu và cho các em hoạt động nhóm tìm phương án trả lời Trong số các tên sau đây, chương trình Pascal, tên nào là hợp lệ? A) ba; B) Tamgiac; E) beginprogram; F) end; C) 8a; G) n1; H) abcdeh D) Tam giac; K) tính_diện_tích_hình_tròn; (Các tên hợp lệ: ba, Tamgiac, beginprogram, n1, abcdeh; tên không hợp lệ: 8a (bắt đầu số), Tam giac (có dấu cách), end (trùng với từ khoá), tính_diện_tích_hình_tròn: các kí tự không có bang chữ cái tiếng anh) Phát biểu nào sau đây đúng: a) Khi viết chương trình chúng ta cần tuân thủ đúng các quy tắcdo ngôn ngữ lập trình quy định mà không cần quan tâm đến ý nghĩa các câu lệnh b) Khi viết chương trình, chúng ta không phải tuân thủ các quy tắc viết câu lệnh ngôn ngữ lập trình quy định mà còn phải sử dụng đúng các câu lệnh theo trật tự định để nhận đựơc lời giải đúng bài tóan c) Khi viết chương trình, chúng ta cần sử dụng các câu lệnh có ý nghĩa đúng (theo trật tự đinh để nhận lời giải bài toán, chương trình dịch tự nhận biết và sửa các câu lệnh viết sai quy tắc ngôn ngữ lập trình Các thành phần ngôn ngữ lập trình là: a) các từ khóa và tên b) bảng chữ cái , các từ khóa và tên c) bảng chữ cái và các quy tắc để viết các câu lệnh có ý nghĩa xác định, cách bố trí các câu lệnh, cho có thể tạo thành chương trình hoàn chỉnh và thực trên máy tính d) Chỉ bảng chũ cái và các từ khóa Dãy chữ số 5678 có thể thuộc kiểu liệu nào? (Dãy chữ số 5678 có thể là liệu kiểu liệu số nguyên, số thực kiểu xâu kí tự Tuy nhiên, để chương trình dịch Turbo Pascal hiểu 5678 là liệu kiểu xâu, chúng ta phải viết dãy số này cặp dấu nháy đơn) Hãy phân biệt ý nghĩa các câu lệnh Pascal sau đây: Writeln('7+67=','7+67'); và Writeln('7+67=',67+7); (Lệnh Writeln('7+67=','7+67')in màn hình hai xâu kí tự '7+67' và '67+7' liền nhau: 7+67 = 67+7, còn lệnh Writeln('7+67=',7+67) in màn hình xâu kí tự '7+67' và tổng 7+67 sau: 7+67=74.) Viết các biểu thức toán đây các kí hiệu Pascal: a c a (b 2) a) b d ;b) ax bx c ; c) x ; d) (a b)(1 c) (Các biểu thức Pascal:a) a/b+c/d; b) a*x*x+b*x+c ;c) 1/x-a/5*(b+2); d) (a*a+b)*(1+c)*(1+c)*(1+c) ) Chuyển các biểu thức viết Pascal sau đây thành các biểu thức toán: a) (a+b)*(a+b)-x/y; b) b/(a*a+c); ( a b) (Các biểu thức toán tương ứng:a) c) a*a/(2*b+c)*(2*b+c); x b y ; b) a c ; d) 1+1/2+1/2*3+1/3*4+1/4*5 a2 1 1 1 (2 b c ) 2.3 3.4 4.5 ) c) ; d) Các ngôn ngữ lập trình phân chia liệu thành các kiểu khác với mục đích gì? a) Sử dụng nhớ máy tính cách hiệu b) Thực các phép tóan tương ứng với kiểu liệu c) Tự động hóa các công việc viết chương trình d) Kiểm sóat lỗi chương trình thực các phép tóan không có nghĩa Hãy chọn phương án trả lời sai? Bốn bạn A, B, C, D đưa kết phép chia lấy phần nguyên và phép chia lấy phần dư hai số 14 và sau A) 14/5=2; 14 Div = 14 mod = B) 14/5=2,8; 14 Div = 14 mod = C) 14/5=2,8; 14 Div = 14 mod = D) 14/5=3; 14 Div = 14 mod = Hãy chọn kết đúng (7) 10 Hãy xác định kết các biểu thức sau đây: a) 15 ≥ 3; b) (20 15)2 ≠ 25; c) 112 = 121; d) x > 10 3x 11 Giả sử A khai báo là biến với kiểu liệu số thực, X là biến với kiểu liệu xâu Các phép gán sau đây có hợp lệ không? a) A:= 4; b) X:= 3242; c) X:= '3242'; d) A:= 'Ha Noi' (Đáp án: a) Hợp lệ; b) Không hợp lệ; c) Hợp lệ; d) Không hợp lệ ) 12 Trong Pascal, khai báo nào sau đây là đúng? a) var tb: real; b) var 4hs: integer; c) const x: real; d) var R = 10; (a) Hợp lệ; b) Không hợp lệ vì tên biến không hợp lệ; c) Không hợp lệ vì phải cho giá trị khai báo; c) Không hợp lệ vì phải cho giá trị khai báo; d) Không hợp lệ vì không gán giá trị cho biến khai báo (cách gán giá trị cho biến không đúng cú pháp) 13 Hãy liệt kê các lỗi có chương trình đây và sửa lại cho đúng: Var a,b:= integer; Const c:= 3.14; Begin a:= 200 b:= a/c; Write(b); Readln End (hd:Các lỗi chương trình: (1) Thừa dấu dòng (chỉ cần dấu hai chấm); (2) Thừa dấu hai chấm dòng (với cần dấu bằng); (3) Thiếu dấu chấm phẩy dòng 4; (4) Khai báo kiểu liệu biến b không phù hợp: Khi chia hai số nguyên, kết luôn luôn là số thực, cho dù có chia hết hay không Do đó cần phải khai báo biến b là biến có kiểu liệu số thực) 14 Hãy cho biết kiểu liệu các biến cần khai báo dùng để viết chương trình để giải các bài toán đây: a) Tính diện tích S hình tam giác với độ dài cạnh a và chiều cao tương ứng h ( a và h là các số tự nhiên nhập vào từ bàn phím) b) Tính kết c phép chia lấy phần nguyên và kết d phép chia lấy phần dư hai số nguyên a và 15 Chỉ dùng chữ cái hãy tạo 10 tên hợp lệ khác pascal? Chỉ với hai chữ cái a,b chữ dùng ít lần có thể tạo bao nhiêu tên pascal? ( tên a,b,ab,ba) 16 Hãy chọn phát biểu đầy đủ các phát biểu đây: a) Trong lập trình biến dùng để lưu trữ liệu và liệu biến lưu trữ có thể thay đổit thưc chương trình b) Có thể xem biến là “tên” vùng nhớ dành riêng để lưu các liệu có kiểu định, giúp người viết chương trình truy cập chính xác đến liệu đó c) Biến có thể lưu liệu người sử dụng nhập vào máy tính các kết tính toán trung gian d) Tất các kiểu nói trên 17 Hãy ghép thuật ngữ cột bên trái với ý nghĩa tương ứng cột bên phải a) 1) Tên người lập trình đặt phải tuân thủ quy tắc người lập tình đặt b) từ 2) Những đại lượng người lập trình đặt tên và có thể thay đổi giá trị thực chương trình khóa c) biến 3) Những tên gọi có ý nghĩa xác định từ trước và không thể sử dụng cho mục đích khác d) tên 4) Những đại luợng người lập trình đặt tên và có giá trị không thay đổi thực chương trình 18 Số biến tối đa chương trình là: a) Chỉ biến cho kiểu liệu b) 10 biến c) Chỉ hạn chế dung lượng nhớ d) Không giới hạn 19 Hãy chọn phát biểu đúng đây: a) Để có thể sử dụng biến và chương trình ta phải khai báo chúng phần khai báo b) Ta cần khai báo tên biến mà không cần khai báo liệu , chương trình dịch tự động xác định kiểu liệu mà (8) biến có thể lưu trữ c) Để khai báo biến, ta cần khai báo tên biến và kiểu liệu mà biến đó lưu trữ d) Giá tri biến có thể thay đổi(được gán lại )trong quá trình thực chương trình.( hd : a,c,d đúng) 20 Biến khai báo kiểu số thực có thể lưu các giá trị nào các giá trị đây: a) số nguyên b) Một số thực (có thể là số nguyên) phạm vi cho phép c) số thực d) dãy các chữ và số IV Củng cố - Dặn dò: - Xem lại các kiến thức và bài thực hành đã ôn tập - Xem lại các kiến thức các bài và bài 6; bài thực hành - Tiết sau tiếp tục ôn tập và sửa các bài tập đề cương (9)