Biện pháp nâng cao hiệu quả dạy học hoạt động của câu lệnh rẽ nhánh trong chương trình tin học lớp 11 bằng một số bài tập tiêu biểu (sách giáo khoa cơ bản) cho học sinh trường THPT lê viết tạo
Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
160 KB
Nội dung
MỤC LỤC Trang I MỞ ĐẦU 1 Lý chọn đề tài: Mục đích nghiên cứu: Đối tượng nghiên cứu Phương pháp nghiên cứu II NỘI DUNG CỦA SÁNG KIẾN KINH NGHIỆM .2 Cơ sở lí luận sáng kiến kinh nghiệm 2 Thực trạng vấn đề nghiên cứu 3 Các giải pháp 4 Hiệu sáng kiến kinh nghiệm .14 III KẾT LUẬN, ĐỀ XUẤT 15 Kết luận 15 Kiến nghị .15 Tài liệu tham khảo .16 I MỞ ĐẦU Lý chọn đề tài Công nghệ thông tin nghành khoa học phát triển mạnh mẽ có nhiều ứng dụng hầu hết lĩnh vực sống Môn Tin học đưa vào giảng dạy thức trường học nên mẻ với học sinh nói chung học sinh THPT nói riêng Trong trình giảng dạy môn Tin học cho em học ngôn ngữ lập trình cụ thể ngôn ngữ lập trình Pascal, phần nội dung nói khó chương trình tin học THPT Thực tế giảng dạy cho em câu lệnh lặp cụ thể câu lệnh lặp thấy em gặp nhiều khó khăn việc xác định câu lệnh (cú pháp câu lệnh, hoạt động câu lệnh) cần dùng để giải tập Cấu trúc rẽ nhánh cấu trúc quan trọng cấu trúc ngôn ngữ lập trình Pascal mà học sinh bắt buộc phải nắm muốn làm tập lập trình Pascal Nên việc dạy cho em câu lệnh rẽ nhánh lý thuyết sách giáo khoa giảng dạy câu lệnh cho em thông qua số tập tiêu biểu có sử dụng câu lệnh rẽ nhánh, nhằm giúp em nắm vững câu lệnh hoạt động câu lệnh rẽ nhánh, qua giúp em yêu thích hứng thú học tập môn Tin học Trong trình giảng dạy câu lệnh rẽ nhánh lớp rút số tập hay dạy câu lệnh Dưới xin trình bày sáng kiến: “Biện pháp nâng cao hiệu dạy học hoạt động câu lệnh rẽ nhánh chương trình Tin học lớp 11 số tập tiêu biểu (sách giáo khoa bản) cho học sinh trường THPT Lê Viết Tạo, huyện Hoằng Hóa” Rất mong tham khảo góp ý giáo viên học sinh sáng kiến kinh nghiệm để giúp có giảng hay giúp học sinh học tốt môn Tin học Mục đích nghiên cứu Mục đích nghiên cứu nhằm giúp em hứng thú với môn Tin học nói chung lập trình Pascal nói riêng Nhằm giúp cho em nắm hoạt động, cấu trúc câu lện Rẽ nhánh để giải tập liên quan Qua giúp em giải tốt tập lập trình yêu thích môn học Đối tượng nghiên cứu Đối tượng học sinh mà trực tiếp giảng dạy học sinh khối 11 với lớp 11A, 11B, 11C, 11D năm học 2015-2016 trường THPH Lê Viết Tạo, huyện Hoằng Hóa, tỉnh Thanh Hóa Là trường chuyển sang mô hình công lập nên phần lớn em có lực học trung bình yếu, sở vật chất nhiều thiếu thốn nên việc giảng dạy học tập gặp không khó khăn Phương pháp nghiên cứu Phương pháp nghiên cứu hoạt động loại câu lệnh rẽ nhánh thông qua tập tiêu biểu Đưa tập cho học sinh nghiên cứu hướng dẫn cụ thể phần để làm tập Lập trình giải toán máy tính cho học sinh quan sát thực hành điểm quan trọng lập trình Học sinh ghi nhớ câu lệnh đặc biệt câu lệnh rẽ nhánh chương trình Yêu cầu học sinh cú pháp, hoạt động câu lệnh rẽ nhánh sử dụng chương trình II NỘI DUNG CỦA SÁNG KIẾN KINH NGHIỆM Cơ sở lý luận sáng kiến kinh nghiệm 1.1 Một số khái niệm a Khái niệm lập trình: Lập trình (programming): Là nghệ thuật cài đặt nhiều thuật toán trừu tượng có liên quan với ngôn ngữ lập trình để tạo chương trình máy tính b Khái niệm ngôn ngữ lập trình: Ngôn ngữ lập trình (programming language): Là hệ thống kí hiệu tuân theo quy ước ngữ pháp ngữ nghĩa, dùng để xây dựng chương trình cho máy tính Ngữ pháp (syntax): Quy ước quan hệ ký hiệu Ví dụ ngôn ngữ Pascal: ký hiệu Begin, end phải thành cặp, sau if biểu thức điều kiện, sau kí hiệu then Ngữ nghĩa (sematics): Quy ước ý nghĩa kí hiệu Ví dụ ngôn ngữ Pascal: dấu + biểu thị cho phép cộng, dấu - biểu thị cho dấu trừ … Phát biểu if … then … có nghĩa “nếu … làm …” Chương trình (program): Là tập hợp mô tả, phát biểu, nằm hệ thống quy ước ý nghĩa thứ tự thực hiện, nhằm điều khiển máy tính làm việc c Khái niệm rẽ nhánh: Để giải số tập máy tính ta thường sử dụng số mệnh đề có dạng như: Nếu Thì Nếu Thì Nếu không Các cấu trúc gọi cấu trúc rẽ nhánh 1.2 Các loại câu lệnh rẽ nhánh ngôn ngữ lập trình pascal a Câu lệnh rẽ nhánh dạng thiếu: Cú pháp: IF THEN ; Trong đó: - IF, THEN từ khóa Pascal - Điều kiện biểu thức quan hệ biểu thức logic - Câu lệnh lệnh Pascal b Câu lệnh rẽ nhánh dạng đủ: IF THEN ELSE ; Trong đó: - IF, THEN, ELSE từ khóa Pascal - Điều kiện biểu thức quan hệ biểu thức logic - Câu lệnh 1, câu lệnh lệnh Pascal 1.3 Sơ đồ khối a Sơ đồ khối câu lệnh rẽ nhánh dạng thiếu: Điều kiện Đúng Câu lệnh Sai Hoạt động: Nếu biểu thức điều kiện câu lệnh thực điều kiện sai câu lệnh bị bỏ qua b Sơ đồ khối câu lệnh rẽ nhánh dạng đủ: Câu lệnh Sai Điều kiện Đúng Câu lệnh Hoạt động: Nếu biểu thức điều kiện câu lệnh thực bỏ qua câu lệnh chuyển tới câu lệnh điều kiện sai câu lệnh thực bỏ qua câu lệnh chuyển tới câu lệnh Thực trạng vấn đề nghiên cứu 2.1 Thực trạng chung: Có thể nói chương trình tin học lớp 11 phần nội dung khó chương trình tin học THPT Vì đề cập tới nhiều khái niệm mẽ học sinh Học sinh phải kết hợp nhiều kiến thức, kỹ nhiều lĩnh vực khác vào để giải toán tin học, mặt khác trường chuyển sang mô hình công lập trước trường Bán công nên chất lượng đầu vào học sinh không cao hầu hết lực học mức trung bình yếu, cở sở vật chất thiếu thốn nên việc giảng dạy gặp nhiều khó khăn Tuy nhiên thứ phải có điểm khởi đầu nó, với việc học lập trình Pascal điểm khởi đầu giúp học sinh bước đầu tiếp cận với ngôn ngữ lập trình bậc cao qua giúp em có thêm định hướng học tập, nghề nghiệp sau yêu thích học tin học Pascal ngôn ngữ lập trình có cấu trúc cấu trúc rẽ nhánh cấu trúc quan trọng giúp em học tốt lập trình Pascal 2.2 Thực trạng giáo viên: Là giáo viên trẻ trường động nhiệt tình giảng dạy Nhưng kinh nghiệm giảng dạy ít, cở sở vật chất thiếu nên ảnh hưởng không nhỏ tới chất lượng giảng dạy 2.3 Thực trạng học sinh: Là trường chuyển sang mô hình công lập, học lực học sinh chủ yếu mức trung bình Tin học môn học mẻ học sinh nên việc tiếp cận nhiều bỡ ngỡ Do sở vật chất thiếu nên học sinh chưa thực hành máy Việc dạy học chủ yếu học lí thuyết nên việc tiếp thu kiến thức hạn chế Đối với câu lệnh rẽ nhánh cấu trúc khó cần thiết giải tập pascal khả tiếp thu học sinh thấp gặp nhiều khó khăn làm tập câu lệnh rẽ nhánh Các giải pháp nâng cao hiệu dạy học hoạt động câu lệnh rẽ nhánh chương trình Tin học lớp 11 số tập tiêu biểu 3.1 Dạy học hoạt động câu lệnh rẽ nhánh thông qua số tập tiêu biểu Đưa số tập tiêu biểu có sử dụng cấu trúc rẽ nhánh để học sinh thảo luận viết câu lệnh, nêu hoạt động, viết chương trình qua giúp em nắm vững kiến thức cấu trúc rẽ nhánh vận dụng linh hoạt, khoa học chương trình Cũng cố kiến thức lập trình nói chung cấu trúc rẽ nhánh nói riêng Qua tạo hứng thú học tập cho học sinh ngôn ngữ lập trình Pascal Hình thành học sinh kỹ phân tích, xử lý vấn đề áp dụng kiến thức liên quan cấu trúc rẽ nhánh trình lập trình chương trình sau Ở khuôn khổ trình bày nội dung thực hành ứng với thực tế trường THPT Lê Viết Tạo 3.2 Một số tập câu lệnh rẽ nhánh dạng thiếu: Bài 1: Hãy cho biết giá trị biến x sau đoạn chương trình sau với a= 10 b= 15 … x:=a; IF aa THEN max:=b; … {Hoạt động hai câu lệnh rẽ nhánh (phần cho học sinh nêu sau giáo viên tổng hợp lại): Ở câu lệnh IF a>b THEN Đầu tiên máy tính kiểm tra điều kiện a>b câu lệnh gán max:=a; thực sau chuyển tới câu lệnh tiếp sau, điều kiện a>b sai câu lện gán max:=a; không thực chuyển tới câu lệnh tiếp sau Ở câu lệnh IF b>a THEN Hoạt động tương tự trên.} Trường hợp 2: dùng câu lệnh rẽ nhánh dạng thiếu để tìm số lớn (max) … max:=a; IF max < b THEN max:=b; { max kết lớn cần tìm.} ? Giáo viên đưa câu hỏi trường hợp a b giá trị Max trường hợp trên? Với trường hợp giáo viên có chương trình minh họa trình chiếu lên bảng cho học sinh quan sát ghi nhớ Bài 3: Viết chương trình xếp số nguyên a, b, c nhập từ bàn phím theo chiều không giảm (tăng dần) đưa kết xếp hình Chương trình: Program bai_2; Uses crt; Var a,b,c: integer; tg: integer; Begin Clrscr; Writeln(‘moi nhap vao a,b,b’); Readln(a,b,c); Writeln (‘ba so vua nhap la:’, a:5,b:5,c:5); if a> b then begin tg:=a; a:=b; b:=tg; end; if b> c then begin tg:=b; b:=c; c:=tg; end; if a> b then begin tg:=a; a:=b; b:=tg; end; writeln(‘ ket qua sap xep:’, a:5, b:5, c:5); readln End ? Học sinh đặt câu hỏi lại có câu lệnh rẽ nhánh thứ lặp lại câu lệnh thứ Để giải thích cho học sinh thể thuật toán bảng Test sau: Bảng test thể kết a,b,c qua câu lệnh rẽ nhánh: Tên biến a b c Giá trị ban đầu if a>b then… if b>c then … if a>b then… Chú ý: câu lệnh rẽ nhánh thứ có lặp lại câu lệnh rẽ nhánh thứ bắt buộc phải có Qua hướng dẫn chương trình giáo viên chạy thử giáo viên yêu cầu học sinh nhà tự viết thực hành xếp ba số a, b, c giảm dần Bài 4: Viết chương trình nhập hệ số a, b tìm nghiệm phương trình ax + b=0 Hướng dẫn – phân tích toán – chương trình Giáo viên hỏi học sinh cách tìm nghiệm phương trình mặt toán học sau chuyển sang lập trình (viết chương trình) Pascal - Trường hợp 1: Nếu a=0 b = phương trình có vô số nghiệm - Trường hợp 2: Nếu a=0 b # phương trình vô nghiệm - Trường hợp 3: Nếu a # phương trình có nghiệm x= -b/a Chương trình: Program bai_3; Uses crt; Var a,b:real; Begin Clrscr; Writeln(‘moi nhap vao cac he so a, b:’); Readln(a,b); If (a = 0) and (b = 0) then Writeln(‘phuong trinh co vo so nghiem’); If (a = 0) and (b 0) then Writeln(‘phuong trinh vo nghiem’); If (a 0) then Writeln(‘phuong trinh co nghiem:’,-b/a:6:2); Readln; End Bài 5: Trong giải bóng đá phong trào có đội bóng (A,B,C) tham gia đội thi đấu với theo vòng tròn lượt tính điểm Điểm đội tính theo luật FIFA thắng cộng điểm, hòa cộng điểm thua cộng điểm Kết trận đấu sau: đội A gặp B có tỉ số x:y, kết trận A gặp C có tỉ số r:s, kết trận B gặp C có tỉ số u:v Viết chương trình nhập vào tỉ số trận đấu thực tính điểm đội xếp thứ hạng đội theo tổng số điểm giảm dần Hướng dẫn – chương trình: Khi trận đấu kết thúc có khả sảy cho đội - Thắng: cộng vào tổng điểm - Hòa: cộng vào tổng điểm - Thua: cộng vào tổng điểm Vậy với trường hợp ta dùng câu lệnh rẽ nhánh dạng thiếu để biểu diễn Sau thi đấu hết trận ta thực xếp điểm cho đội theo yêu cầu toán Cách xếp tương tự Chương trình: Program bai_4; Uses crt; Var DA,DB,DC,tg: byte; x,y,r,s,u,v:real; Begin Clrscr; Write(‘nhap ti so tran A va B:’); Readln(x,y); If x>y Then DA:=DA+3; If xs Then DA:=DA+3; If rv Then DB:=DB+3; If ub THEN x:=a ELSE x:=b; Để làm học sinh cần nắm vững cấu trúc hoạt động câu lệnh rẽ nhánh dạng đủ Hướng dẫn: Học sinh cần trả lời hai câu hỏi sau: ? biểu thức điều kiện a>b có hay sai? ? câu lệnh thực hiện? Học sinh trả lời giáo viên kết luận Bài 2: Lập chương trình nhập vào số nguyên dương a, b, c kiểm tra xem số có lập thành giá trị độ dài cạnh tam giác hay không ? Hướng dẫn – chương trình: số nguyên dương a, b,c lập thành độ dài cạnh tam giác thỏa mãn đồng thời điều kiện sau: a+b>c a+c>b b+c>a Chương trình Program bai_1; Uses crt; Var a, b, c: word; Begin Clrscr; Writeln(‘nhap vao so nguyen duong:’); Readln(a,b,c); If (a + b > c) and (a + c > b) and (b + c > a) then Writeln(‘3 so lap canh tam giac’) 11 Else Writeln(‘3 so khong lap canh tam giac’); Readln; End Bài 3: Viết chương trình nhập hệ số a, b, c tìm nghiệm phương trình ax2 + bx + c = Hướng dẫn – phân tích toán – chương trình: Ở toán học sinh thường hay nhầm lẫn với toán tìm nghiệm phương trình bậc hai Ta phân tích toán sau cài đặt chương trình máy Trường hợp 1: Nếu a = phương trình thành dạng phương trình bậc dạng học sinh biết cách biện luận Trường hợp 2: Nếu a # ta tính biệt số Delta phương trình bậc hai biện luận theo biệt số Delta Để mô tả trường hợp vào chương trình Pascal ta dùng câu lệnh rẽ nhánh dạng đủ sau: Chương trình Program bai_1; Uses crt; Var a,b,c,delta: integer; x1, x2:real; Begin Clrscr; Write(‘nhap vao cac he so a, b, c:’); Readln(a,b,c); If a = then Begin If (b = 0) and (c = 0) then Writeln(‘phuong trinh co vo so nghiem’); If (b = 0) and (c 0) then Writeln(‘phuong trinh vo nghiem’); If (b 0) then Writeln(‘phuong trinh co nghiem:’,-b/a:6:2); End Else 12 Begin Delta:=b*b – 4*a*c; If delta < then Writeln(‘phuong trinh vo nghiem’) Else Begin x1:= (-b + sqrt(delta))/(2*a); x2:= (-b - sqrt(delta))/(2*a); writeln(‘phuong trinh co nghiem’); writeln(‘ x1=’,x1:6:2,’x2:=’,x2:6:2); End; End Chú ý: Khi viết khối lệnh nên trình bày theo khối thẳng cột với từ khóa Begin End khối viết thẳng cột với nhau, lệnh cấp viết thẳng cột với thụt vào so với câu lệnh cấp cao Với tập dùng câu lệnh rẽ nhánh dạng đủ yêu cầu học sinh chuyển sang dùng câu lệnh rẽ nhánh dạng thiếu ngược lại Hiệu sáng kiến kinh nghiệm Thông qua việc áp dụng giải pháp giúp em tháo gỡ khó khăn, vướng mắc giải toán tin học nói chung tập có sử dụng cấu trúc rẽ nhánh nói riêng Giúp em có hiểu biết sâu sắc cấu trúc rẽ nhánh tạo cho em hướng thú học tập tạo phong trào học tập tốt học sinh môn học Kết đạt được: Sau dạy cho em tập câu lệnh rẽ nhánh có kiểm tra áp dụng cho học sinh lớp kết đạt sau: Đề bài: Câu 1: Cho đoạn chương trình pascal sau: x:=a; If a>b Then x:=a+b; Cho a=10 b = 15 sau đoạn chương trình giá trị x bao nhiêu? A x =10 B x =15 C x =25 D.x =5 13 Câu 2: Cho đoạn chương trình pascal sau: If a>b Then x:=a Else x:=b; Với a=15 b=10 sau đoạn chương trình giá trị x bao nhiêu? A x =10 B x =15 C x =25 D.x =5 Câu 3: Trong ngôn ngữ lập trình Pascal, câu lệnh sau đúng? A If Then ; Else ; B If Then ; Else C If Then Else ; D If Then Else Câu 4: Trong ngôn ngữ lập trình Pascal, câu lệnh sau đúng? A If ; Then ; B If Then C If Then D If ; Then Câu 5: Viết chương trình pascal nhập vào từ bàn phím ba số a, b, c trả lời xem ba số vừa nhập có lập thành số đo cạnh tam giác hay không? (Bài kiểm tra thực lớp 11A10, 11B10, 11C10, 11D10 Trong có hai lớp 11B10 11D10 không áp dụng hầu hết giải pháp trình giảng dạy) Kết lớp không thực nghiệm: Lớp Tổng số HS Số HS đạt điểm giỏi Số HS đạt điểm Số HS đạt điểm TB Số HS đạt điểm Yếu Số HS đạt điểm Kém (8,5 10)đ (78,5)đ (57)đ (3,55)đ (03,5)đ 11B11 44 2HS=4.5% 10HS=22.7% 20HS=45.5% 11HS=25.0% 1HS=2.3% 11D11 42 1HS=2.2% 8HS=19.0% 21HS=50% 11HS=26.2% 1HS=2.6% Kết lớp đạt sau thực nghiệm: Lớp Tổng số HS Số HS đạt điểm giỏi Số HS đạt điểm Số HS đạt điểm TB Số HS đạt điểm Yếu Số HS đạt điểm Kém (8,5 10)đ (78,5)đ (57)đ (3,55)đ (03,5)đ 11A11 40 8HS=20% 16HS=36.4% 16HS=36.4% 2HS=7.2% 11C11 46 4HS=8.7% 13HS=28.3% 25HS=54.3% 4HS=8.7% 14 15 III KẾT LUẬN, KIẾN NGHỊ Kết luận Tin học môn học đặc thù, trình học lý thuyết phải đôi với thực hành viết chương trình thực máy tính Với nghiên cứu thu kết khả quan với việc dạy khái niêmk câu lệnh rẽ nhánh Hầu hết em nắm rõ cú pháp, hoạt động câu lệnh câu lệnh vận dụng vào tập cụ thể tốt Tôi hài lòng với kết đạt Do tính đa dạng đặc thù môn học dù có cố gắng khó tránh khỏi thiếu sót, sai lầm mong đồng nghiệp em học sinh giúp đỡ để giúp em học tốt Kiến nghị Trường THPT Lê Viết Tạo trường chuyển sang mô hình công lập vài năm lại nên sở vật chất thiếu thốn nhà trường chưa có phòng máy để thực hành cho học sinh, chiều Kinh tế gia đình học sinh nên phần đông mua máy tính riêng cho em học tập nhà đề xuất với ban giám hiệu nhà trường, cấp lãnh đạo tạo điều kiện để học sinh có phòng máy thực hành cho em học tập tốt Và nên thành lập câu lạc Toán – Tin nhà trường cho em yêu thích tin học tham gia từ phát huy tối đa khả học sinh nhà trường Xin chân thành cảm ơn! XÁC NHẬN CỦA THỦ TRƯỞNG ĐƠN VỊ Thanh hoá, ngày 06 tháng năm 2016 Tôi xin cam đoan SKKN nghiên cứu thực hiện, không copy người khác Nếu sai xin hoàn toàn chịu trách nhiệm Người viết Lương Ngọc Hoàng 16 TÀI LIỆU THAM KHẢO Hồ Sĩ Đàm – Nguyễn Thanh Tùng: Bài Tập Tin Học 11 – Nhà xuất giáo dục Trần Doãn Vinh: Học Tốt Tin Học 11 – Nhà xuất Đại học quốc gia Hà Nội.(xuất năm 2009) Hồ Cẩm Hà (Chủ biên): Bài Tập Trắc Nghiệm Và Đề Kiểm Tra Tin Học 11 – Nhà xuất giáo dục Hồ Cẩm Hà (chủ biên), Lê Khắc Thành, Nguyễn Chí Trung: Dạy học theo chuẩn kiến thức kỹ môn tin học 11 – Nhà xuất Đại học sư phạm Mai Hương (Chủ biên) : Tự Học Lập Trình Pascal – Nhà xuất văn hóa thông tin 17 ... học tập môn Tin học Trong trình giảng dạy câu lệnh rẽ nhánh lớp rút số tập hay dạy câu lệnh Dưới xin trình bày sáng kiến: Biện pháp nâng cao hiệu dạy học hoạt động câu lệnh rẽ nhánh chương trình. .. nhánh chương trình Tin học lớp 11 số tập tiêu biểu 3.1 Dạy học hoạt động câu lệnh rẽ nhánh thông qua số tập tiêu biểu Đưa số tập tiêu biểu có sử dụng cấu trúc rẽ nhánh để học sinh thảo luận viết câu. .. dạy cho em câu lệnh rẽ nhánh lý thuyết sách giáo khoa giảng dạy câu lệnh cho em thông qua số tập tiêu biểu có sử dụng câu lệnh rẽ nhánh, nhằm giúp em nắm vững câu lệnh hoạt động câu lệnh rẽ nhánh,