II. Đặt vấn đề.
Trong những năm học gần đây Bộ GD&ĐT đang tiến hành đổi mới
phương pháp dạy học và một trong những phương pháp đó là phát triển khả
năng tư duy, sáng tạo của học sinh; lấy học sinh làm trung tâm; tránh tình
trạng thầy đọc trò chép một cách thụ động; hướng học sinh đến việc tự làm
chủ kiến thức của mình, tự tìm tòi khám phá kiến thức cho bản thân mình.
Theo phương pháp trên thì ngoài việc cung cấp kiến thức cho học sinh người
thầy còn phải biết phát huy khả năng tư duy cho học sinh.
Trong quá trình dạy học tôi nhận thấy một điểm hạn chế của học sinh là
khi đã tìm ra lời giải cho một bài toán học sinh thường bằng lòng với cách
giải đó mà không thử tìm hiểu xem liệu bài toán này còn có thể giải được theo
phương pháp khác hay không. Học sinh không hiểu rằng việc tìm ra lời giải
mới của bài toán có nhiều điều rất thú vị, nó giúp ta xác định được một vấn đề
từ nhiều góc độ khác nhau từ đó có một cái nhìn tổng quan và toàn diện hơn
trong việc lĩnh hội tri thức cho bản thân.
Mặt khác trong phân phối chương trình Tin học 8 thì nội dung viết
chương trình là khá nhiều, ngược lại số tiết giảng dạy là khá ít điều này ảnh
hưởng nhiều đến phương pháp dạy học của giáo viên và thời gian tìm hiểu sâu
kiến thức, khả năng viết chương trình về ngôn ngữ lập trình pascal của học
sinh. Điều này đã để lại hệ lụy là đa số học sinh viết chương trình một cách
thụ động, dập khuôn hoặc thuộc lòng cách viết một chương trình mà chưa có
tính tư suy, sáng tạo trong cách viết.
Với những lý do trên nên tôi nguyên cứu và thực hiện đề tài “Rèn
luyện cho học sinh kỹ năng viết chương trình Pascal bằng nhiều phương
pháp” nhằm giúp học sinh lớp 8, đội tuyển học sinh giỏi 8, 9 khắc phục được
những hạn chế nêu trên, đồng thời yêu thích môn học ngôn ngữ lập trình
Pascal hơn.
yêu cầu thực tế của môn tin học lớp 8 (ngôn ngữ lập trình pascal) là khá cao. Nếu học sinh chỉ dừng lại ở nội dung kiến thức trong chương trình sách giáo khoa thì sẽ không đáp ứng được yêu cầu đặt ra. Cụ thể như: Thi học sinh giỏi tin học 8, 9 cấp thành phố; HSG lớp 9, tin học trẻ cấp tỉnh; trường chuyên lớp 10 đều phải thi ngôn ngữ lập trình pascal trong chương trình tin học 8. Bảng khảo sát đội tuyển HSG Tin học 8 cấp trường (Khi chưa thực hiện đề tài nghiên cứu) Viết chương trình bằng mấy phương pháp Số lượng 1 pp 2 pp 3 pp 4 pp 20 16 4 0 0 Điểm bài kiểm tra khảo sát chọn đội tuyển cấp trường lần 1 Phụ lục 3 (Đề khảo sát lần 1) 8->10 6,5-> 7,9 5->6,4 <5 1 7 10 2 Trang 4 V. Nội dung nghiên cứu. 1. Chuyên đề Câu lệnh điều kiện. Viết chương trình nhập vào 3 số nguyên dương a, b, c khác nhau. In ra màn hình số lớn nhất và nhỏ nhất trong 3 số trên. * Phương pháp 1: - Ý tưởng: + Tìm số lớn nhất: (a>b) và (a>c) thì a lớn nhất; (b>a) và (b>c) thì b lớn nhất; (c>a) và (c>b) thì c lớn nhất; + Tìm số nhỏ nhất: (a<b) và (a<c) thì a nhỏ nhất; (b<a) và (b<c) thì b nhỏ nhất; (c<a) và (c<b) thì c nhỏ nhất; - Chương trình: Var a,b,c:Integer; Begin Writeln(‘Nhap a, b, c:’);Readln(a,b,c); If (a>b) and (a>c) Then Writeln(a,’ lon nhat’) Else If (b>a) and (b>c) Then Writeln(b,’ lon nhat’) Else Writeln(c,’ lon nhat’) ; If (a<b) and (a<c) Then Writeln(a,’ nho nhat’) Else If (b<a) and (b<c) Then Writeln(b,’ nho nhat’) Else Writeln(c,’ nho nhat’) ; Readln; End. * Phương pháp 2: - Ý tưởng: + Nếu a>b thì ta gán a cho Max, b cho Min, ngược lại thì ta gán Max cho b, Min cho a {Tìm số lớn nhất và nhỏ nhất trong hai số a, b. Sau khi thực hiện dòng lệnh trên Max sẽ nhận được giá trị lớn nhất, Min sẽ nhận được giá trị nhỏ nhất} + Nếu c>Max thì ta gán c cho Max, ngược lại nếu c<Min thì ta gán c cho Min {So sánh c với giá trị lớn nhất (Max) và nhỏ nhất (Min)} - Chương trình: Var a,b,c,Max,Min:Integer; Begin Trang 5 Write(‘Nhap lan luoc 3 so a, b, c:’);Readln(a,b,c); If (a>b) Then Begin Max:=a; Min:=b; End Else Begin Max:=b; Min:=a; End; If (c>Max) Then Max:=c Else If (c<Min) Then Min:=c; Write(‘So lon la:’,Max,’ So nho la:’,Min); Readln; End. * Phương pháp 3: - Ý tưởng. + So sánh giá trị a và b, nếu a>b thì đổi giá trị a và b. {Sau khi đổi giá trị thì sẽ cho kết quả a <b}. + So sánh giá trị b và c, nếu b>c thì đổi giá trị b và c. {Sau khi đổi giá trị thì sẽ cho kết quả a, b b hay b>a }. + Lại so sánh giá trị a và b, nếu a>b thì đổi giá trị a và b. {Sau khi đổi giá trị thì sẽ cho kết quả a < b và b < c}. - Chương trình. Var a,b,c,tam:Integer; Begin Write('Nhap gia tri a, b, c tuong ung: ');Readln(a,b,c); If a>b Then begin Tam:=a; a:=b; b:=tam end; If b>c Then begin Tam:=b; b:=c; c:=tam end; If a>b Then begin Tam:=a; a:=b; b:=tam end; Write('So nho la:’,a,’ so lon la’,c); Readln; End. => Nhận xét: Trong 3 phương pháp trên thì mỗi phương pháp đều có một ưu điểm và hạn chế riêng: - Phương pháp 1: Giúp học sinh làm quen với câu lệnh điều kiện dạng đủ lồng nhau và điều kiện ghép ((a>b) and (a>c)) trong câu lệnh điều kiện thông qua phép toán And. - Phương pháp 2: Giúp học sinh làm quen với lệnh gán, sử dụng biến trung gian Max, Min và câu lệnh ghép (Begin Max:=a; Min:=b; End) trong câu lệnh điều kiện. Trang 6 - Phương pháp 3: Giúp học sinh làm quen với câu lệnh điều kiện dạng thiếu và ôn lại kiến thức sắp xếp giá trị hai biến theo thứ tự tăng hoặc giảm dần begin Tam:=a; a:=b; b:=tam end; 2. Chuyên đề Câu lệnh lặp. Bài toán 1: Số nguyên tố là số tự nhiên lớn hơn 1, chỉ có hai ước là 1 và chính nó. Yêu cầu: Nhập vào số nguyên dương N. Kiểm tra xem N có phải là số nguyên tố hay không, thông báo kết quả sau khi kiểm tra. * Phương pháp 1: - Ý tưởng: + Cho biến i chạy từ 2 đến n-1 {Ta xét trường hợp n có chia hết cho i hay không}, nếu n chia hết cho i thì ta tăng biến đếm lên một đơn vị {ban đầu biến đếm nhận giá trị bằng 0}. + Kiểm tra biến đếm, nếu biến đếm nhận giá trị bằng không {tức n không chia hết cho số nào trong khoảng từ 2 đến n-1} vậy n là số nguyên tố, ngược lại biến đếm nhận giá trị lớn hơn 0{tức n chia hết cho cho một hoặc nhiều giá trị trong khoảng [2..n-1]} vậy n không phải là số nguyên tố. - Chương trình. Var n,i,dem:Integer; Begin Write('Nhap gia tri N: ');Readln(n); If n<2 Then Write(n, Khong phai la so nguyen to') Else Begin dem:=0; For i:=2 To n-1 Do If n Mod i = 0 Then Inc(dem); If dem=0 Then Writeln(n, ' La so nguyen to') Else Writeln(n, ' Khong phai So nguyen to'); End; Readln; End. Trang 7 * Phương pháp 2. - Bổ sung kiến thức: + N là số Nguyên tố khi n>=2 và n không chia hết cho số nào có giá trị trong khoảng từ 2 đến n – 1. Tuy nhiên trên thực tế thì chỉ cần n không chia hết cho số nào có giá trị trong khoản từ 2 đến số nguyên gần với căn n nhất nhưng nhỏ hơn n {Trunc(Sqrt(n))} + Giả sử A và B là hai giá trị kiểu Boolean. Kết quả của các phép toán được thể hiện qua bảng dưới đây: A B A AND B A OR B TRUE TRUE TRUE TRUE TRUE FALSE FALSE TRUE FALSE TRUE FALSE TRUE FALSE FALSE FALSE FALSE - Ý tưởng: + Giống như phương pháp 1 tuy nhiên ở đây chúng ta không đếm mà sử dụng phương pháp đánh dấu của kiểu boolean. Tức ta xét trường hợp n có chia hết cho i hay không, nếu n chia hết cho i thì ta đánh dấu là False {Giả sử biến KT có biểu dữ liệu là Boolean thì nếu n chia hết cho i thì KT:=False, ban đầu ta gán KT:=True} + Kiểm tra biến KT, nếu KT là True {tức biến KT nhận tất cả là True} thì n là số nguyên tố, ngược lại n không phải số nguyên tố {tức biến KT có nhận lớn hơn hoặc bằng một giá trị False}. - Chương trình: Var i,n:Integer; Kt:Boolean; Begin Write('Nhap gia tri N: ');Readln(n); Kt:=True; If n < 2 Then Kt:=False Else For i:=2 To Trunc(Sqrt(n)) Do If n Mod i = 0 Then Kt:=False; If Kt Then Write(n,' la so nguyen to') Else Write(n,' Khong la so nguyen to'); Readln; End. Trang 8 => Nhận xét: - Phương pháp 1: Giúp cho học sinh có cái nhìn tổng quan hơn khi xác định n có phải là số nguyên tố hay không thông qua phương thức đếm số lần n có chia hết cho giá trị nào trong khoảng từ [2..n-1] hay không, theo định nghĩa thì số nguyên tố là số chỉ chia hết cho 1 và chính nó {tức nếu N là số nguyên tố chỉ khi n chia hết cho 1 và n}. Vậy nếu n còn chia hết cho số nào trong khoảng [2..n-1] thì n không phải nguyên tố. - Phương pháp 2: Phương giáp này giúp học sinh tìm hiểu được nhiều kiến thức hơn trên nền kiến thức của phương pháp 1. Khi cho i chạy từ 2 đến trunc(sqrt(n)) thì số lần thực hiện vòng lặp được giảm đi một nữa, sẽ tiết kiệm được thời gian khi chạy chương trình; mặt khác giúp học sinh ôn lại kiến thức lấy kết quả phép so sánh của kiểu dữ liệu Boolean, một kiểu dữ liệu mà chúng ta cũng rất hay sử dụng trong các bài tạo vòng lặp. Bài toán 2: Viết chương trình nhập vào 2 số nguyên dương a, b khác nhau. Tìm ước chung lớn nhất và bội chung nhỏ nhất của 2 số trên. * Phương pháp 1: - Ý tưởng: + Kiểm tra hai giá trị a, b. Nếu a>b thì a:=a-b ngược lại thì b:=b-a, tiếp tục kiểm tra giá trị a, b và trừ cho đến khi nào a=b thì kết thúc. Lúc đó: USLN=a. + BCNN của hai số a, b bằng phần nguyên của a nhân b chia cho USLN(a,b). {BCNN(a,b) = a*b Div UCLL(a,b)}. - Chương trình: Var a,b,p,du:Integer; Begin Write('Nhap gia tri a, b tuong uong : ');Readln(a, b); P:=a*b; Repeat If a>b Then a:=a-b Else b:=b-a; Until a = b; Writeln('UCLN cua a va b la: ',a,' BCNN la: ',p Div a); Readln; End. * Lưu ý: Sau khi test chương trình xong giáo viên cho học sinh test cặp giá trị a, b bằng nhau. Yêu cầu học sinh nhận xét, nêu thuật toán và viết lại chương trình trên với điều kiện a, b là hai số nguyên. Trang 9 * Phương pháp 2: - Ý tưởng: + Nếu a chia b có phần dư bằng 0 thì b là UCLN của a và b. Từ khái niệm này ta xây dựng thuật toán như sau: du:= a mod b, a:=b; b:=du, chương trình kết thúc khi b=0 và UCLN là a. + Viết ra UCLN, BCNN - Chương trình: Var a,b,p,du:Integer; Begin Write('Nhap gia tri a, b tuong uong : ');Readln(a, b); P:=a*b; While b0 Do Begin Du:=a mod b; a:=b:b:=du; End; Writeln('UCLN la: ',a,' BCNN la: ',P Div a); Readln; End. * Phương pháp 3: - Ý tưởng: + Ta cho biến i chạy từ 1 đến a, nếu thỏa mãn đồng thời 2 điều kiện (a mod i =0) và (b mod i =0) thì i là UCLN của a và b. + Viết ra UCLN, BCNN - Chương trình: Var a,b,p,d:Integer; Begin Write('Nhap gia tri a, b tuong uong : ');Readln(a, b); P:=a*b; For i:=1 To a Do if (a mod i=0) and (b mod i=0) then d:=i Writeln('UCLN la: ',d, ‘BCNN la: ',p Div d); Readln; End. Trang 10 * Phương pháp 4: - Ý tưởng: + Ta cho biến i chạy downto từ a đến 1, nếu thỏa mãn đồng thời 2 điều kiện (a mod i =0) và (b mod i =0) thì i là UCLN của a và b đồng thời kết thúc việc tìm kiếm {kết thúc vòng lặp}. + Viết ra UCLN, BCNN - Bổ sung kiến thúc: Lệnh break + Cú pháp: Break + Hoạt động: Lệnh break hoạt động khi được đặt trong thân các vòng lặp for, while, repeat. Khi gặp lệnh break thì máy sẽ thoát khỏi chu trình của vòng lặp, nếu có nhiều vòng lặp lồng nhau sẽ thoát vòng lặp trong nhất chứa lệnh break; - Chương trình: Var a,b,p,d:Integer; Begin Write('Nhap gia tri a, b tuong uong : ');Readln(a, b); P:=a*b; For i:=a Downto 1 Do if (a mod i=0) and (b mod i=0) then d:=i; Writeln('UCLN la: ',d, ‘BCNN la: ',p Div d); Readln; End. => Nhận xét: - Phương pháp 1, 2: Nếu chúng ta cho học thực hiện vòng While Do hoặc Repeat Until để viết chương trình cho hai phương pháp trên thì cơ bản thuật toán không thay đổi chỉ khác nhau là sử dụng phương pháp chia liên tiếp hay trừ liên tiếp. Tuy nhiên ở đây chúng ta sử dụng While Do cho phương pháp 1 và Repeat Until cho phương pháp 2 với mục đích giúp các em tìm hiểu thêm sự khác nhau trong điều kiện lặp và kết thúc hai câu lệnh trên, từ đó yêu cầu các em chỉnh sửa câu lệnh, thuật toán chia, trừ liên tiếp ngược lại trong hai phương pháp để khắc sâu kiến thức hơn. - Phương pháp 3, 4: Phương pháp này giúp các em ôn lại 2 nội dung kiến thức, một là điều kiện ghép trong câu lệnh điều kiện, hai là vòng lặp với số lần biết trước. Khi thực hiện vòng lặp dạng tiến For i:=1 To a thì có thể có nhiều giá trị thỏa mãn nhưng chương trình sẽ nhận được giá trị cuối cùng khi kết thúc lặp, giá trị này là giá trị ta cần tìm trong bài toán. Trong phương pháp 4 các em còn tìm hiểu thêm được kiến thức mới về câu lệnh Trang 11 Break. Lệnh này thường được áp dụng để tìm giá trị nhỏ nhất, lớn nhất thỏa mãn các điều kiện nào đó. Ví dụ Viết chương trình tìm số nguyên dương T nhỏ nhất có N chữ số, biết rằng khi chia T cho 19 thì dư 13 và khi chia T cho 31 thì dư 12. 3. Chuyên đề Mảng một chiều. Dãy Fibonaci là dãy 1, 1, 2, 3, 5, 8, 13, 21, ... dãy này được sinh ra bởi công thức đệ qui sau: F1=1, F2=1, Fk=Fk-1+Fk-2 với 2<K≤46. Mọi số nguyên dương N đều có thể triển khai thành tổng của một số trong dãy Fibonaci. Yêu cầu: Cho trước số N, hãy triển khai N thành tổng của ít nhất các số hạng khác nhau của dãy Fibonaci. * Phương pháp 1: - Ý tưởng: + Triển khai N thành dãy Fibonaci và lưu vào mảng A Ví dụ: N = 15 A 1 1 2 3 5 8 13 21 I 1 2 3 4 5 6 7 8 + Ban đầu t:=0, j:=0. Thực hiện vòng lặp Downto cho h chạy từ i đến 1, kiểm tra nếu t+ah ≤n thì tăng j lên một đơn vị và lưu ah vào bj, t:=t+ai, chương trình kết thúc khi t=n. + Viết ra mảng bj - Chương trình: Var a,b: array[1..100] of Longint; i,j,t,h,n:Longint; Begin Write('Nhap gia tri N:');Readln(n); a[1]:=1;a[2]:=1; i:=2; While a[i]<N Do Begin inc(i); a[i]:=a[i-1]+a[i-2]; End; t:=0;j:=0; For h:=i Downto 1 Do Trang 12 if t+a[h]<=n then Begin inc(j); b[j]:=a[h]; t:=t+b[j]; If b[j] = n then Break; End; For i:=1 To j Do Write(b[i],' '); Readln; End. * Phương pháp 2: - Ý tưởng: + Triển khai N thành dãy Fibonaci và lưu vào mảng A + Thực hiện vòng lặp Downto cho h chạy từ i đến 1, kiểm tra nếu ah ≤n thì viết ra ah, n:=n-ah, chương trình kết thúc khi n=0. - Chương trình: Var a,b: array[1..100] of Longint; i,j,t,h,n:Longint; Begin Write('Nhap gia tri N:');Readln(n); a[1]:=1;a[2]:=1; i:=2; While a[i]<N Do Begin inc(i); a[i]:=a[i-1]+a[i-2]; End; For h:=i Downto 1 Do if a[h]<=n then Begin Write(a[h], ‘ ’); N:=n-a[h]; If n = 0 then Break; End; Readln; End. Trang 13 => Nhận xét: - Phương pháp 1 và 2 khác nhau ở chỗ phương pháp 1 kiểm tra các phần tử trong a nếu nhỏ hơn hoặc bằng n thì chuyển phần tử đó vào mảng b, khi nào tổng của mảng b bằng n thì dừng, phương pháp 2 kiểm tra giá trị n, nếu n lớn hơn hoặc bằng phần tử trong mảng thì in ra phần tử trên và lấy lại giá trị mới cho n. - Nhìn chung phương pháp 2 học sinh dễ hiểu thuật toán hơn tuy nhiên ở phương pháp 1 lại giúp các em bổ sung thêm kiến thức về việc sử dụng nhiều biến mảng trong một chương trình. * Lưu ý chung: Trong các chuyên đề nêu trên, đối với các bài toán giải theo nhiều phương pháp, sau khi học sinh giải xong giáo viên cần cho học sinh nhận xét, phân tích mặt thuận lợi, khó khăn của mỗi phương pháp. Vì đây là điểm cốt lõi nhất để học sinh có thể so sánh điểm mạnh, yếu trong mỗi phương pháp giải từ đó khắc sâu được nội dung kiến thức và lựa chọn, đưa ra được phương pháp giải tối ưu nhất cho mình. Trong nội dung của đề tài tôi chỉ đưa ra một số bài toán để chúng ta cùng tham khảo, Tôi quan niệm rằng với ngôn ngữ lập pascal thì mọi bài toán đều có thể được giải (viết chương trình) bằng nhiều phương pháp khác nhau. Trang 14 VI. Kết quả nghiên cứu. Trong quá trình thực hiện đề tài thông qua việc quan sát của giáo viên và những thành tích đạt được từ các bài kiểm tra đánh giá, các hội thi của Phòng GD&ĐT Thành phố Tam Kỳ, Sở GD&ĐT tỉnh Quảng Nam tổ chức tôi nhận thấy việc học tập của các em có sự thay đổi một cách tích cực và đem lại hiểu quả khá cao. * Bảng khảo sát đội tuyển HSG Tin học 8 cấp trường (Khi thực hiện đề tài nghiên cứu) Viết chương trình bằng mấy phương pháp Số lượng 1 pp 2 pp 3 pp 4 pp 20 0 10 8 2 Điểm bài kiểm tra khảo sát chọn đội tuyển cấp trường lần 2 Phụ lục 4 (Đề khảo sát lần 2) 8->10 6,5-> 7,9 5->6,4 <5 7 8 5 * Về mặt nhận thức học tập. + Học lý thuyết: Đa số học sinh tập trung lắng nghe khi thầy giáo giảng bài, việc phát biểu xây dựng dựng bài được học sinh phát huy một cách tích cực,... + Viết chương trình: Các dòng lệnh thường ngăn rọn, sút tích, có tính tư duy sáng tạo cao trong việc tìm ra phương pháp giải quyết bài toán. * Về chất lượng dạy học: + Năm học 2012- 2013: Nhất đồng đội Tin 8 (6/7 học sinh đạt giải, trong đó 1 nhất, 1 nhì, 1 ba, 3 khuyến khích); Nhì đồng đội Tin 9 (3/3 học sinh đạt giải, trong đó 1 nhất, 3 khuyến khích) + Năm học 2013-2014: Nhất đồng đội Tin 8 (4/4 học sinh đạt giải, trong đó 2 nhất, 1 nhì, 1 ba); Nhì đồng đội Tin 9 (2/2 HS đạt giải, trong đó 1 nhì, 1 khuyến khích); + Năm học 2014-2015: Nhất đồng đội Tin 8 (4/4 học sinh đạt giải, trong đó 02 nhất, 02 nhì); Nhất đồng đội Tin 9 (3/3 HS đạt giải, trong đó 1 nhất, 2 khuyến khích); Trang 15 VII. Kết luận. Khi người giáo viên lên lớp mục tiêu đặt ra trong mỗi tiết dạy là rèn luyện cho các em kỹ năng sống, giáo dục đạo đức, nắm được chuẩn kiến thức kỹ năng chương trình sách giáo khoa, ... Trong các mục tiêu trên thì mục tiêu cuối cùng cần đạt được và đây là phần quan trọng nhất đó là chất lượng học tập của học sinh. Sau khi thực hiện đề tài “Rèn luyện cho học sinh kỹ năng viết chương trình pascal bằng nhiều phương pháp” tôi thấy đề tài đã đạt được những mục tiêu sau: - Thứ nhất: Giúp cho học sinh phát triển khả năng tư duy sáng tạo, tự chiếm lĩnh tri thức, khắc sâu kiến thức đã học, phát huy tính chủ động, tích cực trong việc tiếp thu kiến thức mới, khả năng suy luận khi giải quyết một vấn đề, qua đó giúp cho học sinh tìm ra được các phương pháp giải hay và ngắn gọn cho bài toán. - Thứ hai: Rèn luyện cho học sinh tính kiên trì, sáng tạo trong học tập, dần dần hoàn thiện phương pháp viết chương trình cho bản thân và có thể vận dụng vào việc xử lý các tình huống xãy ra trong cuộc sống hằng ngày một cách cho tối ưu nhất. - Thứ ba: Qua bảng thống kê những thành tích đạt được ta thấy chất lượng mũi nhọn luôn được duy trì bền vững với thành tích cao nhất, 100% học sinh tham gia dự thi đạt giải, đặt biệt đội tuyển Tin học lớp 8 năm học 2013-2014 đạt 2 giải nhất, năm học 2014-2015 đạt 2 giải nhất với số điểm tuyệt đối 20/20 điểm. Đề tài đã phát huy được mục tiêu đề ra đó là năng cao chất lượng đại trà, phát huy tính bền vững trong chất lượng mũi nhọn. Trang 16 VIII. Đề nghị. Triển khai rộng rãi nội dung đề tài “Rèn luyện cho học sinh kỹ năng viết chương trình pascal bằng nhiều phương pháp” đến tất cả giáo viên tin học trong địa bàn thành phố, tỉnh. Trang 17 IX. Phần phụ lục. - Phụ lục 1: BỘ GIÁO DỤC VÀ ĐÀO TẠO CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc Số: 7723/BGDĐT-GDTrH V/v: Hướng dẫn dạy môn Tin học Hà Nội, ngày 22 tháng 8 năm 2008 tự chọn lớp 8 năm học 2008-2009 Kính gửi: Các Sở Giáo dục và Đào tạo Tin học ở cấp THCS là 1 trong 3 môn học, hoạt động giáo dục tự chọn ở cấp THCS (Ngoại ngữ 2, Tin học, Nghề phổ thông) dành cho các lớp có điều kiện. Thời lượng dạy Tin học tự chọn là 2 tiết/tuần trong cả cấp học, bố trí vào thời lượng dạy học tự chọn 2 tiết/tuần trong Kế hoạch giáo dục cấp THCS. Môn Tin học đã được đưa vào dạy ở lớp 6 từ năm học 2006-2007, ở lớp 7 từ năm học 2007-2008 và từ năm học 2008-2009 được đưa vào dạy học ở lớp 8. Việc tổ chức thực hiện như sau: 1. Nếu đã dạy học môn Tin học tự chọn cho lớp 7 năm học 2007-2008, tiếp tục dạy môn Tin học tự chọn khi chuyển lên lớp 8. Các Sở GDĐT tổ chức tập huấn giáo viên dạy học môn Tin học tự chọn lớp 8 theo hướng dẫn của Bộ GDĐT, không để giáo viên chưa qua tập huấn. 2. Những nơi có đủ điều kiện về giáo viên, CSVC cần tổ chức dạy học môn Tin học tự chọn từ lớp 6, khi học sinh có nguyện vọng. Các lớp đã học môn Tin học từ lớp 6 phải chuẩn bị để học liên tục cho đến hết cấp THCS. Đối với lớp 9, có thể tiếp tục dạy học Tin học theo hướng dẫn trước đây tại công văn số 5488/GDTrH ngày 05/7/2004 của Bộ GDĐT. 3. Tài liệu dạy học Tin học tự chọn cấp THCS do Bộ GDĐT ban hành, gồm 4 cuốn: Tin học dành cho THCS quyển 1 (lớp 6), quyển 2 (lớp 7), quyển 3 (lớp 8) và quyển 4 (lớp 9). Các trường THCS liên hệ với các cơ sở phát hành sách giáo khoa để chuẩn bị tài liệu cho giáo viên và hướng dẫn học sinh mua sắm tài liệu Tin học dành cho THCS quyển 1, quyển 2 và quyển 3. 4. Việc kiểm tra, đánh giá kết quả học tập môn Tin học tự chọn cấp THCS, thực hiện theo Quy chế đánh giá, xếp loại học sinh THCS và học sinh THPT của Bộ GDĐT; kết quả học tập của học sinh được ghi vào Sổ Gọi tên và ghi điểm cũng như vào Học bạ ở phần dành cho các môn học tự chọn. Trong quá trình thực hiện, nếu có khó khăn vướng mắc đề nghị các Sở GDĐT báo cáo với Bộ GDĐT (qua Vụ GDTrH) để kịp thời giải quyết. Nơi nhận: - Như trên; - TT Nguyễn Vinh Hiển (để b/cáo); - NXB Giáo dục (để phối hợp); - Lưu: VT, Vụ GDTrH. TL. BỘ TRƯỞNG VỤ TRƯỞNG VỤ GIÁO DỤC TRUNG HỌC Lê Quán Tần Trang 18 - Phụ lục 2: Trang 19 - Phụ lục 3 Trường THCS Lý Tự Trọng KHẢO SÁT HỌC SINH GIỎI TIN 8 LẦN 1 TỔ: TOÁN – TIN NĂM HỌC: 2014-2015 Thời gian: 90 phút (không kể giao đề) ĐỀ CHÍNH
Tài liệu đính kèm: