TÊN SKKN: VẬN DỤNG PHƯƠNG PHÁP PHÁT TRIỂN VÀ SỬA LỖI BÀI TẬP NHẰM NÂNG CAO HIỆU QUẢ TRONG GIẢNG DẠY MÔN TIN HỌC 8 I LÝ DO CHỌN ĐỀ TÀI: Trong thời đại của chúng ta, sự bùng nổ công nghệ thông tin đã tác động lớn đến công cuộc phát triển kinh tế xã hội con người. Đảng và Nhà nước đã xác định rõ ý nghĩa và tầm quan trọng của Tin học và công nghệ thông tin, truyền thông cũng như những yêu cầu đẩy mạnh của ứng dụng công nghệ thông tin, đào tạo nguồn nhân lực đáp ứng yêu cầu công nghiệp hoá, hiện đại hoá, mở cửa và hội nhập, hướng tới nền kinh tế tri thức của nước ta nói riêng thế giới nói chung. Cuộc cách mạng khoa học công nghệ trong những năm gần đây đã làm thay đổi một phần cuộc sống con người. Sự tác động mạnh mẽ của công nghệ thông tin đến muôn mặt của đời sống xã hội. Hệ thống nhà trường cũng không nằm ngoài sự tác động mạnh mẽ đó. Công nghệ thông tin giúp cho giáo viên không những nâng cao chất lượng dạy học trong nhà trường mà còn là công cụ, phương tiện để làm một cuộc “cách mạng” trong việc đổi mới phương pháp dạy học. Không còn lối truyền thụ một chiều, thầy đọc trò ghi mà công nghệ thông tin đã làm tích cực hóa quá trình dạy học, mang đến một luồng sinh khí mới cho hệ thống các nhà trường học hiện nay. Chính vì xác định được tầm quan trọng đó nên bộ giáo dục đã đưa môn Tin Học vào giảng dạy trong nhà trường và ngay từ tiểu học học sinh được tiếp xúc với môn Tin Học để làm quen dần với lĩnh vực công nghệ thông tin, tạo nền móng cơ sở ban đầu để học những phần nâng cao trong các cấp tiếp theo Là một giáo viên phụ trách giảng dạy môn Tin học tôi nhận thấy môn Tin học lớp 8 là môn học hay, thông qua môn học này học sinh có thể không ngừng nâng cao khả năng tìm tòi để hiểu và giải quyết được những vấn đề sung quanh cuộc sống hàng ngày. Vì những lí do trên tôi đã thực hiện đề tài “Vận dụng phương pháp phát triển và sửa lỗi bài tập nhằm nâng cao hiệu quả trong giảng dạy môn Tin học 8” II. NỘI DUNG ĐỀ TÀI: 1 Cơ sở lý luận: + Hiện tại Tin học đã được Bộ Giáo dục Đào tạo chính thức đưa vào giảng dạy trong nhà trường phổ thông. Đồng thời Bộ cũng đã thiết lập khung chương trình môn Tin học là môn học tự chọn cho các cấp học. + Ở nhà trường Trung Học Cơ Sở môn Tin học là một môn học tự chon nhưng bộ môn cũng có vai trò vô cùng quan trọng như những môn học khác là tạo nền móng kiến thức cơ bản với các em học sinh.
Trang 1TÊN SKKN:
VẬN DỤNG PHƯƠNG PHÁP PHÁT TRIỂN VÀ SỬA LỖI BÀI TẬP NHẰM NÂNG CAO HIỆU QUẢ TRONG GIẢNG DẠY MÔN TIN HỌC 8
I/ LÝ DO CHỌN ĐỀ TÀI:
Trong thời đại của chúng ta, sự bùng nổ công nghệ thông tin đã tác động lớn đến công cuộc phát triển kinh tế xã hội con người Đảng và Nhà nước đã xác định rõ ý nghĩa và tầm quan trọng của Tin học và công nghệ thông tin, truyền thông cũng như những yêu cầu đẩy mạnh của ứng dụng công nghệ thông tin, đào tạo nguồn nhân lực đáp ứng yêu cầu công nghiệp hoá, hiện đại hoá, mở cửa
và hội nhập, hướng tới nền kinh tế tri thức của nước ta nói riêng - thế giới nói chung
Cuộc cách mạng khoa học công nghệ trong những năm gần đây đã làm thay đổi một phần cuộc sống con người Sự tác động mạnh mẽ của công nghệ thông tin đến muôn mặt của đời sống xã hội Hệ thống nhà trường cũng không nằm ngoài sự tác động mạnh mẽ đó
Công nghệ thông tin giúp cho giáo viên không những nâng cao chất lượng dạy học trong nhà trường mà còn là công cụ, phương tiện để làm một cuộc
“cách mạng” trong việc đổi mới phương pháp dạy học Không còn lối truyền thụ một chiều, thầy đọc trò ghi mà công nghệ thông tin đã làm tích cực hóa quá trình dạy học, mang đến một luồng sinh khí mới cho hệ thống các nhà trường học hiện nay
Chính vì xác định được tầm quan trọng đó nên bộ giáo dục đã đưa môn Tin Học vào giảng dạy trong nhà trường và ngay từ tiểu học học sinh được tiếp xúc với môn Tin Học để làm quen dần với lĩnh vực công nghệ thông tin, tạo nền móng cơ sở ban đầu để học những phần nâng cao trong các cấp tiếp theo
Là một giáo viên phụ trách giảng dạy môn Tin học tôi nhận thấy môn Tin học lớp 8 là môn học hay, thông qua môn học này học sinh có thể không ngừng nâng cao khả năng tìm tòi để hiểu và giải quyết được những vấn đề sung quanh cuộc
sống hàng ngày Vì những lí do trên tôi đã thực hiện đề tài “Vận dụng phương
Trang 2pháp phát triển và sửa lỗi bài tập nhằm nâng cao hiệu quả trong giảng dạy môn Tin học 8”
II/ NỘI DUNG ĐỀ TÀI:
1/ Cơ sở lý luận:
+ Hiện tại Tin học đã được Bộ Giáo dục & Đào tạo chính thức đưa vào giảng dạy trong nhà trường phổ thông Đồng thời Bộ cũng đã thiết lập khung chương trình môn Tin học là môn học tự chọn cho các cấp học
+ Ở nhà trường Trung Học Cơ Sở môn Tin học là một môn học tự chon nhưng bộ môn cũng có vai trò vô cùng quan trọng như những môn học khác là tạo nền móng kiến thức cơ bản với các em học sinh
2/ Nội dung, Biện pháp thực hiện các giải pháp cuả đề tài:
2.1 Phương pháp phát triển bài tập từ những bài thực hành trong sách giáo khoa:
Trong quá trình giảng dạy môn Tin học 8 là môn học tương đối mới mẻ, đòi hỏi tư duy nhiều với các em học sinh, đây là môn học có sự kết hợp của ngôn ngữ lập trình, thực hiện tư duy và tính toán
Thông qua các tiết dạy tôi nhận thấy ngoài việc làm những bài tập thực hành ở sách giáo khoa thì giáo viên cần tăng cường thêm một số bài tập mang tính chất mở rộng, phát triển từ những bài tập trong các bài thực hành để các em hiểu bài học hơn và vận dụng những điều mình đã học vào để giải quyết những vấn đề mới dựa trên nền tảng kiến thức đã có
Để tự tư duy và viết được các chương trình thì trước tiên giáo viên yêu cầu học sinh cần phải nắm rõ các bước quá trình giải bài toán trên máy tính gồm:
Xác định bài toán:
Mô tả thuật toán:
Viết chương trình trên máy tính
Khi phát triển thêm những bài tập dựa trên những bài tập sách giáo khoa
đã cho thì giáo viên yêu cầu học sinh phải làm đầy đủ các bước giải một bài toán trên máy tính như các ví dụ ở dưới
Trang 3Ví dụ 1: khi dạy “bài 6: câu lệnh điều kiện” và “bài thực hành 4:
sử dụng lệnh điều kiện if …then” thì học sinh đã hiểu được cấu trúc hàm if…
then ngoài những bài tập thực hành trong sách giáo khoa giáo viên có thể bổ sung thêm các bài tập mới dựa trên các bài tập sách giáo khoa:
Bài tập 1: viết chương trình nhập vào 2 số nguyên a và b khác nhau từ bàn phím
và so sánh tìm ra số lớn
Xác định bài toán:
+ INPUT: có 2 số nguyên a và b
+ OUTPUT: tìm ra số lớn
Mô tả thuật toán:
+ Bước 1: Max<- a
+ Bước 2: nếu max<b thì max<-b
Viết chương trình trên máy tính:
Program so_sanh;
Var a,b,max:integer;
Begin
Write(‘ nhap a va b:’);readln(a,b);
Max:=a;
If max < b then write(‘so lon la: ’,max);
Readln;
End
Bài tập 2: viết chương trình nhập vào 3 số nguyên a, b và c khác nhau từ bàn
phím tìm ra số lớn nhất và nhỏ nhất
Program so_sanh_3_so;
Var a,b,c,max,min:integer;
Begin
Write(‘nhap 3 so a, b va c:’); readln(a,b,c);
Max:=a;
If max< b then max:=b;
If max < c then max := c;
Trang 4Min := a;
If min > b then min min:= b;
If min > c then min := c;
Writeln(‘so lon nhat la:’,max);
Writeln(‘so nho nhat la:’,min);readln;
End
Bài tập 3: viết chương trình tính tiền cho của hàng bán hoa
- Nhập số cành hoa
- Nếu số cành >= 20 thì giá là 2000d/cành, ngược lại là
2500đ/cành
Tính tiền và xuất ra kết quả
Xác định bài toán:
+ INPUT: số cành hoa
+ OUTPUT: tiền hoa phai trả
Mô tả thuật toán:
+ nếu số cành hoa >= 20 thì tổng tiền <- số cành hoa * 2000, ngược lại tổng tiền <- số cành hoa * 2500
Viết chương trình trên máy tính:
Program tinh_tien_hoa;
Var canhhoa:integer;
Tongtien:longint;
Begin
Write(‘nhap so canh hoa:’);readln(canhhoa);
If canhhoa >= 20 then tongtien:=canhhoa * 2000 else tongtien:=canhhoa
* 2500;
Write(‘tien phai tra la:’,tongtien);readln;
End
Bài tập 4: Viết chương trình tính tiền thuê sách:
Nhập : số cuốn, số ngày, giá
Tính tiền = số ngày * số cuốn * giá Nếu số ngày >5 thì giảm
2000 ngược lại không giảm
Xác định bài toán:
+ INPUT: số ngày, số cuốn, giá
Trang 5+ OUTPUT: Tính tiền thuê sách
Mô tả thuật toán:
+ Nếu số ngày > 5 thì tổng tiền <- số ngày * số cuốn * giá - 2000, ngược lại tổng tiền <- số ngày * số cuốn * giá
Viết chương trình trên máy tính:
Program tien_thue_truyen;
Var songay,socuon:integer;
Gia,tongtien:longint;
Begin
Write(‘nhap so ngay thue:’);readln(songay);
Write(‘nhap so cuon:’);readln(socuon);
Write(‘nhap gia thue:’);readln(gia);
If songay > 5 then tongtien := songay * socuon * gia – 2000
Else tongtien := songay * socuon * gia;
Write(‘tong tien phai tra la:’, tongtien);
Readln;
End
Ví dụ2: khi dạy bài thực hành 7 “sử dụng lệnh lặp FOR …DO” sau khi giáo viên cho học sinh làm xong những bài tập sách giáo khoa thì giáo viên
có thể bổ sung thêm các bài tập mới dựa trên các bài tập sách giáo khoa:
Bài tập 1: viết chương trình tính tổng 10 số tự nhiên đầu tiên.
Xác định bài toán:
+ INPUT: có 10 số tự nhiên đầu tiên
+ OUTPUT: tổng 10 số tự nhiên đầu tiên
Mô tả thuật toán:
+ Bước 1: s <- 0;
+ Bước 2: I <- i+1;
+ Bước 3:nếu I <=10, thì s <- s+i và quay lại bước 2
+ Bước 4: kết thúc thuật toán
Viết chương trình trên máy tính:
Trang 6Program tong;
Var i: integer;
S:longint;
Begin
S:=0;
For i:=1 to 10 do s:=s+i;
Write(‘tong n la:’,s);readln;
End
Bài tập 2: viết chương trình tính tổng n số tự nhiên đầu tiên với số
n được nhập vào từ bàn phím.
Xác định bài toán:
+ INPUT: nhập vào số n
+ OUTPUT: tổng n số tự nhiên đầu tiên
Mô tả thuật toán:
+ Bước 1: s <- 0;
+ Bước 2: I <- i+1;
+ Bước 3: I > n, kết thúc thuật toán
+ Bước 4: s <- s+I;
Viết chương trình trên máy tính:
Program tong _n;
Var i,n:integer;
S:longint;
Begin
Write(‘nhap so n:’);readln(n);
S:=0;
For i:=1 to n do s:=s+i;
Write(‘tong n la:’,s);readln;
End
Trang 7Sau khi các em đã làm xong bài tập 2 thì giáo viên có thể dựa trên bài vừa làm yêu cầu học sinh làm 1 bài tiếp theo dựa trên cấu trúc của bài đã có để học sinh phát triển thêm
Bài tập 3: viết chương trình tính tổng n số tự nhiên đầu tiên (chỉ tính những số chẵn) với số n được nhập vào từ bàn phím.
Xác định bài toán:
+ INPUT: nhập vào sồ n
+ OUTPUT: tổng n số tự nhiên đầu tiên những số chẵn
Mô tả thuật toán:
+ Bước 1: s <- 0;
+ Bước 2: I <- i+1;
+ Bước 3: I > n, kết thúc thuật toán
+ Bước 4: i mod 2 = 0, s <- s+I;
Viết chương trình trên máy tính:
Program tong _n_chan;
Var i,n:integer;
S:longint;
Begin
Write(‘nhap so n:’);readln(n);
S:=0;
For i:=1 to n do if I mod 2 =0 then s:=s+i;
Write(‘tong n la:’,s);readln;
End
Bài tập 4: viết chương trình tính tổng n số tự nhiên đầu tiên (chỉ tính những số lẻ) với số n được nhập vào từ bàn phím.
Xác định bài toán:
+ INPUT: nhập vào sồ n
+ OUTPUT: tổng n số tự nhiên đầu tiên những số lẻ
Mô tả thuật toán:
+ Bước 1: s <- 0;
Trang 8+ Bước 2: I <- i+1;
+ Bước 3: nếu I > n, thì qua bước 5
+ Bước 4: i mod 2 <> 0, s <- s+I;
+ Bước 5: kết thúc thuật toán
Viết chương trình trên máy tính:
Program tong _n_le;
Var i,n:integer;
S:longint;
Begin
Write(‘nhap so n:’);readln(n);
S:=0;
For i:=1 to n do if I mod 2 <>0 then s:=s+i;
Write(‘tong n so le la:’,s);readln;
End
Đối với dạng bài tập mới phát triển thêm ngoài bài tập trong bài thực hành thì nếu có thời gian thì giáo viên có thể cho làm tại lớp hoặc giao bài tập về nhà Nhưng trước khi học sinh về nhà làm thì giáo viên cần có sự gợi ý đề học sinh có những định hướng ban đầu
2.2 Phương pháp sửa lỗi chương trình trong giảng dạy môn Tin học 8
Trong lỗi chương trình ở môn tin học 8 thường học sinh sẽ vấp phải 3 loại lỗi thông dụng như sau: lỗi cấu trúc chương trình, lỗi cú pháp chương trình
và lỗi nhỏ khi chạy chương trình
2.2.1 Sửa lỗi cấu trúc chương trình:
Khi học sinh viết chương trình trên máy tính đặc biệt là ở một số bài thực hành đầu thì viết chương trình sai về lỗi cấu trúc thường xuyên xảy ra, đặc biệt là những học sinh trung bình và yếu
Để khắc phục lỗi này đôi khi giáo viên cũng cần tạo ra các chương trình
có lỗi sai về cấu trúc chương trình để học sinh nhận ra sai cấu trúc ở đâu sửa lại như thế nào Thông qua việc sửa những lỗi này học sinh có thể nắm vững hơn được kiến thức môn Pascal thông qua các bài tập
Trang 9Ví dụ 1: khi viết “chương trình tính tổng 10 số tự nhiên đầu tiên” các
em viết như hình dưới đây.
Khi chạy chương trình máy tính sẽ báo lỗi như thông báo ở dưới, lúc này nhiệm vụ của học sinh sẽ là sửa lại cấu trúc để chương trình có thể chạy được trên máy tính
Nhưng để sửa được những lỗi này thì học sinh nên làm như sau:
Bước 1: xác định lại cấu trúc của chương trình Khi đó giáo viên phải hướng
dẫn cho học sinh đọc “thông báo lỗi” là sai ở dòng thứ 4 và cột thứ 1 với lỗi là sai cấu trúc chương trình, Uses không phải đặt ngay trên Begin
Bước 2: đánh dấu chỗ sai
Bước 3: sửa lại những chỗ đã đánh dấu sai để chương trình chạy được và đúng
như sau:
Trang 10Ví dụ 2: viết chương trình nhập vào 2 số rồi tính tổng, tính hiệu và tính tích 2 số đó Khi viết học sinh cũng có thể viết sai cấu trúc như hình dưới đây
Khi chạy chương trình thì chương trình không chạy và thông báo lỗi như sau
Nhưng để sửa được những lỗi này thì học sinh nên làm như sau:
Bước 1: xác định lại cấu trúc của chương trình Khi đó giáo viên phải hướng
dẫn cho học sinh đọc “thông báo lỗi” là sai ở dòng thứ 3 và cột thứ 5 với lỗi là sai cấu trúc chương trình, Begin phải đặt dưới câu lệnh khai báo biến Var ngay nơi con trỏ báo lỗi sai
Bước 2: đánh dấu chỗ sai
Bước 3: sửa lại những chỗ đã đánh dấu sai để chương trình chạy được và đúng
như sau:
Trang 112.2.2 Sửa lỗi sai cú pháp:
Đây cũng là một lỗi học sinh khi viết chương trình trên máy tính, nhưng trong quá trình viết chương trình học sinh không phải học sinh nào cũng nhận ra
và sửa nó nên trên đây là một vài ví dụ sai lỗi cú pháp ở những chương trình do học sinh viết
Ví dụ 1: viết chương trình nhập vào 1 số tự nhiên từ bàn phím và kiểm tra số đó là chẵn hay lẻ.
Sau khi bài tập sai cú pháp như hình ở dưới thì học sinh phải làm các bước sau để có thể sửa lại chương trình đúng và chạy được trên máy tính
Bước 1:
Xem thông báo lỗi ở vị trí dòng thứ mấy, cột thứ mấy: trong chương trình này sai ở dòng 5, cột 24
Xem chương trình đang viết sử dụng cú pháp gì, trong trường hợp này đang sử dụng cú pháp “câu lệnh điều kiên”
Bước 2: nhắc lại cú pháp của “câu lệnh điều kiện dạng thiếu” như sau: if <điều
kiện> then <câu lệnh>;
Bước 3: quan sát lại chương trình sẽ nhận ra sai cú pháp ở chỗ “If n mod 2 = 0
do” trong chương trình và sửa lại như sau:
Trang 12Ví dụ 2: viết chương trình nhập vào 1 số tự nhiên, kiểm tra số đó có phải là số nguyên tố hay không?
Sau khi chạy chương trình thì chương trình sai nên không chạy và hiện thông báo lỗi như hình dưới
Sau khi có bài tập sai cú pháp thì học sinh phải làm các bước sau để có thể sửa lại chương trình đúng và chạy được trên máy tính
Bước 1:
Xem chương trình thông báo lỗi ở dòng nào, cột nào trong chương trình này lỗi tại dòng 9 và cột 45, dòng 10 và cột 32, dòng 11 và cột 25
Xem chương trình đang viết sử dụng cú pháp gì, trong trường hợp này đang sử dụng cú pháp “câu lệnh điều kiên”, cú pháp “lặp với số lần biết trước”
Bước 2: nhắc lại các cú pháp dùng trong chương trình
Cú pháp của “câu lệnh điều kiện dạng thiếu” như sau: if <điều kiện> then <câu lệnh>;
Trang 13Cú pháp “lặp với số lần biết trước” như sau: while <điều kiện> do <câu lệnh>;
Bước 3: quan sát lại chương trình để nhận ra chỗ sai
Nhận ra sai cú pháp ở chỗ “If n mod 2 = 0 do” trong chương trình và sửa lại như sau:
Sau điều kiện trong hàm if không có dấu chấm phẩy (;) và while do thay cho while to nên câu lệnh while (n mod i<>0); to i:=i+1; sai cú pháp
Câu lệnh sau if là then chứ không phải to và trước else không có dấu chấm phẩy (;) như trong câu lệnh if i=n to writeln(n ,’ la so nguyen to’); else writeln(n,’ khong phai la so nguyen to!’);
Chương trình sửa lại sẽ như sau:
Khi học sinh làm quen những dạng bài tập như vậy giúp các em sửa lỗi tốt hơn trong quá trình viết chương trình trên máy tính
2.2.3 Sửa lỗi nhỏ khi chạy chương trình:
Đây không phải là một lỗi lớn khi viết chương trình nhưng các em học sinh thường xuyên mắc phải, trong một số trường hợp nào đó cho dù các em viết được một chương trình nhưng không thể nào cho chạy được
Những lỗi các em thường mắc phải như:
Không có dấu “;” khi kết thúc câu lệnh
Dư 1 dấu “.” ở cuối Dấu ngoặc không đúng yêu cầu của ngôn ngữ lập trình Viết không đúng lệnh
Khai báo biến trùng với từ khóa, tên chương trình
Trang 14Đối với những dạng lỗi như thống kê ở trên thì các em cần phải làm những bước như sau:
Bước 1: xác định các lỗi
Bước 2: sửa lại một cách hệ thống từ trên xuống dưới
Ví dụ 1: viết chương trình nhập vào chiều dài và chiều rộng, tính chu vi
và diện tích hình chữ nhật.
Khi học sinh viết có thể không sai cấu trúc chương trình hay sai cú pháp của chương trình nhưng đôi khi lại mắc phải những lỗi nhỏ như sau:
Bước 1: xác định các lỗi
Thông báo lỗi này cho biết có sai tại dòng 5, cột 9 lỗi kết thúc câu lệnh
là (;) chấm phẩy
Thông báo lỗi như ở trên cho biết có sai tại dòng 7, cột 38 lỗi kết thúc câu lệnh là chấm phẩy (;) thay cho dấu phẩy (,)
Bước 2: sửa lại một cách hệ thống từ trên xuống dưới như hình dưới đây
đối với chương trình này là có thể chạy được
Ví dụ 2: viết chương trình tính tích N số tự nhiên đầu tiên được nhập vào từ bàn phím.
Trang 15Trong một số trường hợp học sinh viết chương trình trên máy tính gặp phải những lỗi thông dụng như hình dưới đây
Bước 1: xác định các lỗi
Thông báo lỗi này cho biết có sai tại dòng 5, cột 19 lỗi thiếu dấu nháy đơn (‘ ) để in thông báo ra màn hình
Thông báo lỗi như ở trên cho biết có sai tại dòng 8, cột 9 lỗi câu lệnh viết sai
Bước 2: sửa lại một cách hệ thống từ trên xuống dưới như hình dưới đây
đối với chương trình này là có thể chạy được
Đối với lỗi này chủ yếu do học sinh ít viết chương trình nên không nắm
rõ để khắc phục lỗi này học sinh cần thực hành nhiều thì kỹ năng viết chương trình sẽ dần được cải thiện và tự sửa lỗi chương trình khi có sai sót
III/ KẾT QUẢ THỰC HIỆN: