Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
192 KB
Nội dung
SỞ GIÁO DỤC VÀ ĐÀO TẠO THANH HOÁ TRƯỜNG THPT NGA SƠN SÁNG KIẾN KINH NGHIỆM TẠO HỨNG THÚ HỌC TẬP KHI VẬN DỤNG CẤU TRÚC RẼ NHÁNH, CẤU TRÚC LẶP ĐỂ GIẢI MỘT SỐ BÀI TẬP CƠ BẢN VỀ TOÁN-TIN Người thực hiện: Nguyễn Thị Thoan Chức vụ: Giáo viên SKKN thuộc lĩnh vực mơn: Tin Học THANH HỐ NĂM 2018 MỤC LỤC NỘI DUNG Mở đầu 1.1 Lí chọn đề tài 1.2 Mục đích nghiên cứu 1.3 Đối tượng nghiên cứu 1.4 Phương pháp nghiên cứu Nội dung sáng kiến kinh nghiệm 2.1 Cơ sở lý luận sáng kiến kinh nghiệm a Cấu trúc rẽ nhánh dạng thiếu b Câu lệnh ghép c Cấu trúc lặp với số lần biết trước d Cấu trúc lặp với số lần chưa biết trước 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm 2.3 Các giải pháp giải vấn đề a Một số tập vận dụng cấu trúc rẽ nhánh b Một số tập vận dụng cấu trúc lặp 2.4 Kết thu Kết luận, kiến nghị 3.1 Kết luận 3.2 Kiến nghị TRANG 1 2 2 3 3 4 11 16 17 17 17 1.Mở đầu 1.1 Lí chọn đề tài Sự phát triển khoa học công nghệ đại đặt giáo dục vào thử thách mới, nhằm đào tạo hệ tương lai vừa có phẩm chất, vừa phải có lực tiếp cận khoa học hội nhập với xu chung xã hội Do giáo dục phổ thông nước ta thực bước chuyển từ chương trình giáo dục tiếp cận nội dung sang tiếp cận lực người học, nghĩa từ chỗ quan tâm đến việc học sinh học đến chỗ quan tâm học sinh làm qua việc học Để đảm bảo điều đó, định phải thực thành cơng việc chuyển từ phương pháp dạy nặng truyền thụ kiến thức sang dạy cách học, cách vận dụng kiến thức, rèn luyện kĩ năng, hình thành lực phẩm chất, đồng thời phải chuyển cách đánh giá kết giáo dục từ nặng kiểm tra trí nhớ sang kiểm tra, đánh giá lực vận dụng kiến thức giải vấn đề kịp thời nhằm nâng cao chất lượng hoạt động dạy học giáo dục Bộ mơn tin học THPT thường quan tâm, u thích khơng thuộc tổ hợp mơn thi đại học Tin học học sinh môn khó đặc biệt chương trình tin 11 kiến thức lập trình đa số học sinh khó tiếp cận Trong nhiều năm giảng dạy tơi thấy việc tạo hứng thú cho học sinh u thích mơn lập trình Pascal chương trình tin học 11 việc làm cần thiết cần đầu tư Thực tế em thường u thích mơn tốn mơn tốn nằm nhiều tổ hợp thi đại học đưa sang kiến vận dụng ngôn ngữ lập trình Pascal giải tốn mà em yêu thích Sáng kiến kinh nghiệm “Tạo hứng thú học tập vận dụng cấu trúc rẽ nhánh, cấu trúc lặp để giải số tập TốnTin” minh chứng cho ứng dụng ngơn ngữ lập trình Pascal mà học sinh nhìn thấy nhận đồng thời muốn gửi tới bạn đồng nghiệp chút kinh nghiệm thân để học sinh thật u thích mơn tin học mà cụ thể ngơn ngữ lập trình Pascal 1.2 Mục đích nghiên cứu - Tạo hứng thú học tập vận dụng cấu trúc rẽ nhánh, cấu trúc lặp giải số tập Tốn-Tin Khơi dậy em đam mê u thích mơn tin, thấy ứng dụng đơn giản, cụ thể, thiết thực lập trình Pascal với tốn học - Góp phần đổi phương pháp dạy học trường phổ thơng nói chung mơn Tin học nói riêng 1.3 Đối tượng nghiên cứu - Nghiên cứu cấu trúc rẽ nhánh, cấu trúc lặp số tập Toán-Tin - Học sinh khối 11 trường THPT Nga Sơn năm học 2017-2018 1.4 Phương pháp nghiên cứu - Dựa sở lý thuyết mơn tốn môn học sở cho phát triển tư lập trình tin học - Dựa sở lý thuyết ngơn ngữ lập trình Pascal - Phương pháp thực nghiệm sư phạm - Phương pháp điều tra khảo sát thực tế Nội dung sang kiến kinh nghiệm Tạo hứng thú cho người học vấn đề quan trọng hoạt động dạy-học hoạt động phức tạp chất lượng hiệu phụ thuộc vào người học Các nhà nghiên cứu tâm lý cho rằng, hứng thú thái độ đặc biệt cá nhân đối tượng đó, có ý nghĩa sống có khả mang lại khối cảm cá nhân trình hoạt động Sự hứng thú biểu trước hết tập trung cao độ, say mê chủ thể hoạt động Trong cơng việc có hứng thú làm việc, người có cảm giác dễ chịu với hoạt động làm nảy sinh khát vọng hành động cách sáng tạo Khi có hứng thú say mê nghiên cứu, học tập việc lĩnh hội tri thức trở nên dễ dàng Trên thực tế người khơng thích, khơng hứng thú học mơn học thường người khơng học tốt mơn học đó, việc tạo hứng thú cho người học xem yêu cầu bắt buộc làm công tác giảng dạy, mơn học 2.1 Cơ sở lí luận Theo định lí Bohn Jacopini (Bon Ja_co_pi_ni)1: Mọi q trình tính tốn mơ tả thực dựa ba cấu trúc cấu trúc tuần tự, cấu trúc rẽ nhánh cấu trúc lặp Do học sinh cần nắm cấu trúc sau: a1 Cấu trúc rẽ nhánh Cấu trúc rẽ nhánh dạng thiếu: if then ; Cấu trúc rẽ nhánh dạng đủ: if then else ; Trong đó: - Điều kiện biểu thức logic, nhận giá trị TRUE FALSE - Câu lệnh, câu lệnh1, câu lệnh câu lệnh Pascal b1 Câu lệnh ghép Begin < câu lệnh>; End; Câu lệnh, câu lệnh 1, câu lệnh câu lệnh if …then câu lệnh ghép c1 Cấu trúc lặp với số lần biết trước câu lệnh for-do Dạng lặp tiến: For:= to ; Dạng lặp lùi: For:=< giá trị cuối> downtodo; Trong mục 2.1 Định lí Bohn Jacopini, cấu trúc rẽ nhánh, câu lệnh ghép, cấu trúc lặp với số lần biết trước tham khảo từ tài liệu tham khảo số Trong đó: - Biến đếm biến đơn, có kiểu nguyên kí tự - Giá trị đầu, giá trị cuối, biểu thức kiểu với biến đếm giá trị đầu phải nhỏ giá trị cuối d1 Cấu trúc lặp với số lần chưa biết trước câu lệnh While-do while ; Trong đó: - Điều kiện biểu thức logic; - Câu lệnh câu lệnh đơn ghép 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm Thực tế giảng dạy môn Tin Học trường THPT Nga sơn nhiều năm thấy năm trở lại ý thức nhu cầu xã hội điều kiện sơ sở vật chất nâng lên nên em học sinh dành nhiều thời gian cho mơn học, từ mà chất lượng học sinh nâng lên đặc biệt tin học khối lớp 10,12 tin học gần gũi với đời sống ứng dụng nhiều thực tế Tuy nhiên môn tin học 11 chưa cao thể rõ kết kiểm tra thấp, tỉ lệ em giải tập sách giáo khoa tập thực hành thấp Khó có sản phẩm để em nhìn thấy Việc tư thuật toán nội dung khó em Điều dẫn đến nhiều học sinh khơng thích dẫn đến học mơn Bên cạnh tơi nhận thấy em tỏ hứng thú giải toán toán học nhiều test khác Nhiều em tỏ thích thú lập trình để giải toán cho chạy kết từ hăng say giải tốn khó Bằng cách vừa thúc đẩy em việc học mơn tốn nhận học ngơn ngữ lập trình Pascal khơng q khó, u thích mơn học 2.3 Các giải pháp để giải vấn đề Cấu trúc lặp với số lần chưa biết trước câu lệnh While –do tham khảo từ TLTK số a Một số tập vận dụng cấu trúc rẽ nhánh: Bài tốn 16: Lập trình giải phương trình bậc 2: ax2+bx+c=0 (a �0) Tơi đưa tốn giải phương trình bậc với em thuật toán quen thuộc bước đầu em dễ dàng vận dụng cấu trúc rẽ nhánh để viết chương trình Xác định tốn: Input: Nhập hệ số a,b,c (a �0); Output: Thông báo nghiệm phương trình Ý tưởng: b2-4ac Sai Đúng kiểm tra r>=0 Thơng báo vơ nghiệm Tính đưa nghiệm phương trình Kết thúc Vận dụng cấu trúc if…then đưa chương trình: Program ptbac2; Uses crt; Var a,b,c,delta, x1,x2: real; Begin Clrscr; Bài toán tham khảo từ TLTK số Write('nhap a,b,c') ; read(a,b,c); Delta:=b*b-4*a*c; If delta0 then Begin X1:=(-b-sqrt(delta))/2*a; X2:=(-b+sqrt(delta))/2*a; Writeln('phuong trinh co nghiem phan biet la',x1:7:2,x2:7:2); End; Readln; End Sau lập trình chạy chương trình với nhiều test khác học sinh hứng thú với chương trình viết điều giúp em hăng hái làm tốn khó Bài toán 26: Bài tập 3/39 SGK Đại số 10 phát biểu lại sau: Cho hàm số y = 3x2-2x +1 Các điểm M(-1;6), N(1;10), P(0,1) có thuộc đồ thị hàm số khơng? Xác định tốn: Input: Nhập vào tọa độ x y Output: Kết luận điểm có thuộc đồ thị hàm số hay khơng? Tôi đưa giúp em vận dụng cấu trúc If Then dạng đủ Đồng thời học sinh nhớ lại tính chất điểm thuộc hàm số Từ kiến thức em học toán học em dễ dàng vận dụng lập trình Nếu tọa độ điểm (x,y) thỏa mãn phương trình hàm số cho thơng báo điểm thuộc đồ thị khơng thơng báo điểm khơng thuộc đồ thị Bài toán tham khảo từ TLTK số Chương trình: Program Hamso; Var y,x:real; Begin Writeln('Nhap vao toa diem can kiem tra'); Write(' nhap x,y '); read(x,y); If y=3*sqr(x)-2*x +1 then Write('Diem co toa (',x,',',y,') thuoc thi ham so') Else Write('Diem co toa (',x,',',y,') khong thuoc thi ham so'); Readln; End Thơng qua chương trình giáo viên phát triển cho học sinh nhìn thấy ứng dụng tin học mơn tốn Đối với hàm số khác ta kiểm tra điểm có thuộc đồ thị cho hay khơng? Bài tốn 36: Giải hệ phương trình: a1x b1y c1 a2x b2y c2 Xác định toán: Input: Nhập hệ số hệ phương trình a1,a2,b1,b2,c1,c2 Output: Nghiệm hệ phương trình Để lập trình giải tốn hệ phương trình hai ẩn u cầu học sinh nhớ lại kiến thức, cách giải hệ chương trình đại số 10, vận dụng cấu trúc rẽ nhánh viết chương trình Chương trình: Program giai_he_hai_an; Bài tốn số tham khảo từ TLTK số Uses crt; Var a1,a2,b1,b2,c1,c2:real; Dx,dy, d: real; Begin Clrscr; Writeln('GIAI HE HAI AN:'); Writeln(' -'); Write('Nhap a1,b1,c1'); Read(a1,b1,c1); Write('Nhap a2, b2,c2='); readln(a2,b2,c2); d:=a1*b2-b1*a2; dx:=c1*b2-b1*c2; dy:=a1*c2-a2*c1; if d=0 then begin if (dx=0) and(dy=0) then writeln(' he vo so nghiem'); if ((dx=0) and( (dy0)) or ((dx0) and(dy=0)) then write('he vo nghiem') end else begin writeln('he co nghiem nhat'); writeln('x=', dx/d:4:2, 'va y=', dy/d:4:2); end; readln; end Thông qua chương trình học sinh khắc sâu hiểu rõ cấu trúc If Then Else hoạt động máy tính thực chương trình Bài tốn 43: Bài 3/18 Sách tập tin 11 Cho ba số nguyên m, n, k Nếu ba số theo thứ tự nhập vào tạo thành cấp số cộng tăng gấp đơi số, trường hợp ngược lại giảm số đơn vị Viết chương trình thực yêu cầu Xác định toán: Input: m,n,k số nguyên Output: Kết luận m,n,k có cấp số cộng hay không? Với tập học sinh luyện cấu trúc rẽ nhánh đủ dựa tảng kiến thức toán học cấp số cộng Giáo viên hỏi học sinh tính chất cấp số cộng Nếu số m, n, k theo thứ tự tạo thành cấp số cộng ta có điều gì? Học sinh trả lời 2*n=(m-k); áp dụng để viết chương trình Chương trình: Program bai3_18sachbttin; Var m,n,k: integer; Begin Write('nhan m,n,k'); Read(m,n,k); If 2*n=(m+k) then Begin Writeln('3 so',m,',',n,',',k,'lap mot cap so cong'); N:=n*2; m:=m*2; k:=K*2; Writeln('m=',m:4,'n=',n:4,'k=',k:4); Bài toán tham khảo từ TLTK số End Else begin Writeln('3 so',m,',',n,',',k,' khong lap mot cap so cong'); N:=n-1; m:=m-1; k:=k-1; Writeln('m=',m:4,'n=',n:4,'k=',k:4); End; Readln; End Bài toán 5: Bài 1/49 SGK Đại số 10 Xác định tọa độ đỉnh giao điểm với trục tung, trục hồnh (nếu có Parabol) a Y = x2-3x+2 b Y = -2x2+4x-3 c Y= x2-2x d Y=-x2+4 Xác định toán: Input: Nhập hệ số a,b,c Output: Xác định tọa độ đỉnh giao điểm với trục tung, trục hồnh - Khi định hướng giải tốn giáo viên hỏi học sinh cơng thức tính tọa độ đỉnh Parabol (x0=-b/2*a;y0=-/4*a) Từ ta viết chương trình tính tọa độ đỉnh ứng với hàm Các hệ số a,b,c nhập từ bàn phím - Trường hợp tìm giao với trục hồnh gán x=0 ta dễ dàng tính y - Trường hợp giao với trục tung tức y=0 Tương đương với việc giải phương trình bậc hai tìm nghiệm x Nếu phương trình khơng có nghiệm hàm số khơng giao với trục hồnh Nếu phương trình có nghiệm nghiệm phân 10 biệt phương trình giao với trục hồnh điểm hai điểm Bài toán tham khảo từ TLTK số Chương trình: Program Bai1_49 SGK đai 10; Var y,x,x1,x2,a,b,c,d:real; Begin Write('Nhap vao he so a,b,c cua ham so can kiem tra'); read(a,b,c) d:=sqr(b)-4a*c; x:=-b/2*a; y:=-d/4*a; Writeln('Toa dinh cua ham so la: (',x,',',y,')' ); X:=0; y:=a*sqr(x)+b*x+c; Writeln(‘Toa diem giao voi truc hoanh la: (',x,',',y,')' ); Y:=0; If d=1 Viết chương trình in số hạng đầu dãy số Xác định toán: Input: Số hạng đầu u1:=-1 Output: số hạng đầu dãy Với việc giới thiệu toán này, học sinh vừa tiếp cận khái niệm, tính Bài toán 3, toán tham khảo từ TLTK số 14 chất dãy số toán học nên em dễ dàng hiểu yêu cầu tốn Từ kiến thức em biết tơi hướng em đến câu hỏi Trong Tin học máy tính giải tốn nào? Đề cho biết số hạng đầu dãy số cơng thức tính Un Ta dùng vòng lặp For While để tính số hạng dãy số thơng qua cơng thức tính Un+1=Un+3 Sau lần lặp ta tính in số hạng dãy số cho Đề yêu cầu in số hạng nên ta dùng vòng For duyệt từ đến số hạng đầu biết, tính từ số hạng thứ trở Program Bài 2_92 SGK Đại số 11 Program Bài 2_92 SGK Đại số 11 Var u,n: integer; Var u,n: integer; Begin Begin U:= -1; U:= -1;n:=2; Writeln('5 so hang dau cua day so la'); Writeln('5 so hang dau cua day so la'); Write(u:5); Write(u:5); For n:=2 to While n