Đề cương Sáng kiến Sử dụng phần mềm chấm bài Themis góp phần nâng cao chất lượng bồi dưỡng học sinh giỏi Tin học 9
Bạn đang xem 20 trang mẫu của tài liệu "Đề cương Sáng kiến Sử dụng phần mềm chấm bài Themis góp phần nâng cao chất lượng bồi dưỡng học sinh giỏi Tin học 9", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
Tóm tắt nội dung tài liệu: Đề cương Sáng kiến Sử dụng phần mềm chấm bài Themis góp phần nâng cao chất lượng bồi dưỡng học sinh giỏi Tin học 9
UBND THỊ XÃ NINH HÒA PHÒNG GIÁO DỤC VÀ ĐÀO TẠO Kính gửi: Hội đồng Xét duyệt sáng kiến thị xã ĐỀ CƯƠNG SÁNG KIẾN Đề tài: “Sử dụng phần mềm chấm bài Themis góp phần nâng cao chất lượng bồi dưỡng học sinh giỏi tin học 9” Họ và tên: Trần Minh Thọ Chức vụ: Giáo viên – Tổ phó tổ Toán, Tin, Thể dục Đơn vị công tác: Trường THCS Trần Quang Khải Đề tài chuyên môn: Môn tin học khối lớp 9 Tháng 8 năm 2020 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc ĐỀ CƯƠNG SÁNG KIẾN - Họ và tên: Trần Minh Thọ Giới tính: Nam - Ngày, tháng, năm sinh: 19/08/1982 - Cơ quan, đơn vị công tác: THCS Trần Quang Khải - Chức vụ/ chức danh: Tổ Phó tổ Toán, Tin, thể dục - Trình độ chuyên môn: Đại học sư phạm 1. Tên sáng kiến: Sử dụng phần mềm chấm bài Themis góp phần nâng cao chất lượng bồi dưỡng học sinh giỏi tin học 9 2. Lĩnh vực áp dụng 2.1. Lĩnh vực áp dụng sáng kiến: Áp dụng cho việc dạy học môn tin học phần ngôn ngữ lập trình Pascal và đặc biệt là bồi dưỡng học sinh giỏi môn tin học. 2.2. Mục tiêu Môn tin học ở trường phổ thông trang bị cho học sinh những hiểu biết cơ bản về công nghệ thông tin và vai trò của nó trong xã hội hiện đại. Môn học này giúp học sinh bước đầu làm quen với phương pháp giải quyết vấn đề theo quy trình công nghệ và kĩ năng sử dụng máy tính phục vụ học tập và cuộc sống. Tin học có ý nghĩa to lớn đối với sự phát triển trí tuệ, tư duy thuật toán, góp phần hình thành học vấn phổ thông cho học sinh. Bồi dưỡng học sinh giỏi là một trong những phong trào mũi nhọn của trường và của Thị xã, Có học sinh giỏi các cấp nhất là học sinh giỏi Thị xã, Tỉnh. Giáo viên mới thấy được sự thành công của mình trong sự nghiệp giáo dục và sự tiến bộ nghề nghiệp đối với xã hội. Để học tốt môn ngôn ngữ lập trình Pascal học sinh cần được hình thành và rèn luyện tư duy lập trình, việc hình thành và rèn luyện được giáo viên chú trọng thường xuyên thông qua một số bài toán đơn giản nhưng đòi hỏi phải có sự vận dụng tư duy của học sinh. Phần mềm Themis là phầm mềm chấm bài tự động là công cụ hỗ trợ quan trọng của giáo viên và ban giám khảo các kì thi lập trình, phần mềm có 5. Mô tả sáng kiến: 5.1. Về nội dung của sáng kiến: Nội dung của sáng kiến là nêu lên các kinh nghiệm trong việc sử dụng phần mềm chấm bài Themis để góp phần nâng cao chất lượng bồi dưỡng học sinh giỏi môn tin học 9. Sáng kiến giúp cho giáo viên tiết kiệm nhiều thời gian khi chấm bài (code) của học sinh, tạo tác phong làm việc chuyên nghiệm, khoa học. Sáng kiến nhằm giúp cho học sinh có tư duy lập trình, giúp các em giải các bài toán về lập trình tốt hơn, các em có hứng thú hơn khi học lập trình, không còn thấy môn học khô khan, khó, đặc biệt là các em học sinh giỏi sẽ tìm ra các giải pháp để giải các đề thi một cách trọn vẹn và làm được hết các test cũng như yêu cầu mà đề đưa ra. 5.1.1. Hình thành lòng yêu thích học lập trình Giáo viên cần tạo cho học sinh lòng yêu thích học lập trình thông qua việc giới thiệu một số người thành đạt trên thế giới nhờ học giỏi về tin học và được học lập trình từ nhỏ như tỉ phú Bill Gates - tác giả và chủ tịch tập đoàn Microsoft, hãng phần mềm khổng lồ; Mark Elliot Zuckerberg là một nhà lập trình máy tính người Mỹ, đồng sáng lập của Facebook; Larry Page và Sergey Brin sáng lập Google từ năm 1998... Giởi thiệu cho học sinh xem các video nói về việc dạy học lập trình từ nhỏ cho học sinh tiểu học, ứng dụng lập trình pascal để điều khiển Robot....các video nói về lợi ích của việc học lập trình Thời sự VTV1 nói về tác dụng của học lập trình: https://youtu.be/cVs- wqwCoQ8 Vì sao phải dạy lập trình cho con từ nhỏ: https://youtu.be/7RlumXKoEXY Tại sao mọi người nên học lập trình: https://youtu.be/OQAnhML3Q8g Hào hứng ứng dụng thuật toán pascal để lập trình Robot: https://dantri.com.vn/giao-duc-khuyen-hoc/hao-hung-ung-dung-thuat-toan- pascal-de-lap-trinh-robot-20160411071310523.htm 5.1.2. Sử dụng phần mềm Themis 5.1.2.1. Giới thiệu về phần mềm: Themis là phần mềm chấm bài tự động được phát triển theo yêu cầu của Cục Khảo thí và Kiểm định chất lượng giáo dục, Bộ Giáo dục và Đào tạo. Sản phẩm được thiết kế phục vụ ký thi học sinh giỏi Quốc gia hàng năm, nhưng 3 Trong thư mục này chứa 2 thư mục con là Đáp án và Thí Sinh, thư mục đáp án chứa thư mục mang tên các đề thi và bộ test đáp án gồm file input và file output. Thư mục Thí sinh chứa các thư mục con là Số báo danh của thí sinh trong mỗi số báo danh lại chứa các tệp tin .pas là bài thi của học sinh. 5 b. Xem điểm và báo cáo kết quả Phần mềm chấm và hiện kết quả điểm từng bài, điểm tổng cộng. Đối với những bài bị lỗi thì hiện kí tự đặc biệt. Ví dụ: bảng chấm điểm kiểm tra học kì 2 của nửa lớp 82 năm học 2019 – 2020 Đối với các bài có kí tự đặc biệt thì giáo viên kiểm tra lại bằng tay, để xem mức độ làm bài của học sinh. Sau đây là 2 trường hợp lỗi thường xảy ra đối với bài làm của học sinh Một là học sinh chưa làm bài ví dụ bài 4 ở máy 10 Hai là bài dịch bị lỗi ví dụ bài 4 ở máy 9 Bài 3 ở máy 9 thì bài làm không qua được hết các test nên không đạt điểm tối đa chỉ đạt 1,5/2. Còn bài 1 ở máy 9 thì không bị lỗi gì nhưng làm không đúng nên bị điểm 0/4. 7 5.1.3. Cách tạo bộ test cho mỗi bài tập, đề thi 5.1.3.1. Sự cần thiết phải có bộ Test Bộ test có vai trò cực kì quan trọng, bộ test giúp phần mềm kiểm tra và chấm bài của học sinh theo tiêu chuẩn do giáo viên đưa ra. Khi tạo bộ test giáo viên cần tính hết các trường hợp mà học sinh có thể mắc phải sai lầm ví dụ như khai báo biến có kiểu dữ liệu nhỏ, các trường hợp số âm, các trường hợp số rất nhỏ, rất lớn,... Thông thường mỗi bài tập có từ 10 đến 20 bộ test. Một số trường hợp thì ít nhất phải có 5 bộ test. Nếu bộ test không chuẩn, không lường hết trường hợp thì giải thuật của học sinh không chính xác vẫn đạt điểm tối đa. Vì vậy bộ test có vai trò cực kì quan trọng. 5.1.3.2. Cấu trúc bộ test Mỗi bài đều có trúc bộ test như sau: (1 phần của ví dụ ở trên) BÀI 1 TEST01 BAI1.INP BAI1.OUT TEST02 BAI1.INP BAI1.OUT TEST03 BAI1.INP BAI1.OUT ... Trong đó các tệp BAI1.INP Là dữ liệu nhập vào, ứng với nó BAI1.OUT là dữ liệu xuất ra. Phần mềm sẽ căn cứ vào bộ test chuẩn này để chấm bài. Nếu khớp thì sẽ cho điểm phần test đó, nếu không khớp thì test đó bị 0 điểm. 9 Để giải bài toán trên thì ta cần tìm tích 2 phần tử lớn nhất, gọi là tích 1, và tìm tích 2 phần tử bé nhất (để phòng trường hợp là 2 số đều âm, thì tích của chúng ra số dương nên cũng có thể là lớn nhất) gọi là tích 2, kết quả bài toán chính là số lớn nhất của tích 1 và tích 2. Để tìm 2 phần tử lớn nhất thì ta dùng cách sắp xếp 2 phần tử lớn nhất ra đầu, sau đó để tìm 2 phần tử nhỏ nhất thì ta cũng sắp xếp 2 phần tử nhỏ nhất ra đầu. Use math; var a:array[1..100000]of longint; i,n,t,tich1,tich2,j:longint; f:text; begin assign(f,'BAI1.inp'); reset(f); readln(f,n); for i:=1 to n do read(f,a[i]); close(f); for i:=1 to 2 do for j:=i+1 to n-1 do if a[i]<=a[j] then begin t:=a[i]; a[i]:=a[j]; a[j]:=t; end; tich1:=a[1]*a[2]; for i:=1 to 2 do for j:=i+1 to n-1 do if a[i]>=a[j] then begin t:=a[i]; a[i]:=a[j]; a[j]:=t; end; tich2:=a[1]*a[2]; assign(f,'BAI1.OUT'); Rewrite(f); write(f,max(tich1,tich2)); close(f); readln end. Xây dựng bộ test Khi xây dựng bộ test cần lưu ý đầy đủ các trường hợp 11 BAI2.INP BAI2.OUT 7 10 1 2 -4 3 5 -1 3 3 5 -1 3 Giáo viên cần giải bài trên để có code xây dựng bộ test: var a:array[1..1000]of longint; n,i,j,d,c,s,max:longint; f:text; Begin Assgin(f,’BAI2.inp’); Reset(f); read(f,n); for i:=1 to n do read(f,a[i]); close(f); max:=low(longint); for i:=1 to n do begin s:=a[i]; for j:=i to n do begin if ij then s:=s+a[j]; if s>max then begin max:=s;d:=i;c:=j;end; end; end; assign(f,’BAI2.OUT’); rewrite(f); writeln(f,max); for i:=d to c do write(f,a[i],' '); close(f); end. Xây dựng bộ test Khi xây dựng bộ test cần lưu ý đầy đủ các trường hợp Test có đoạn con là 1 số dương lớn nhất (03) Test có đoạn con là 1 số âm lớn nhất (04) Test toàn số dương (05) Test toàn số âm (04) Test có số âm và dương (01, 02) Test có 2 đoạn có tổng bằng nhau(06) 13 Giáo viên cần giải bài trên để có code xây dựng bộ test : var f,g:text; N,K,M,x,y:longint; Begin assign(f,'CONG.INP'); reset(f); assign(g,'CONG.OUT'); rewrite(g); readln(f,N,K); close(f); M:=0; while N>0 do begin x:=N mod 10; y:=K mod 10; M:=M*10+(x+y) mod 10; K:=K div 10; N:=N div 10; end; N:=0; While M>0 do begin N:=N*10+M mod 10; M:=M div 10; end; writeln(g,N); close(g); end. Khi xây dựng bộ test cần lưu ý đầy đủ các trường hợp từ số nhỏ có 1 chữ số đến số lớn 109 Test BAI3.INP BAI3.OUT 01 1 1 2 02 8 9 7 03 111 999 0 04 545 847 382 05 4237 6236 463 06 64590 38439 92929 07 437587 297535 624012 08 891773 567130 358803 09 96366277 27265630 13521807 10 383441522 477665112 750006634 15 const n:array[0..9] of longint=(10,20,60,100,120); var t,i:longint; s:string; f:text; begin randomize; for t:=0 to 4 do begin str(t,s); s:='test'+s; mkdir(s); s:=s+'/BAI4.inp'; assign(f,s); rewrite(f); writeln(f,n[t]); for i:=1 to n[t] do write(f,random(n[t]*10)+1,' '); close(f); end; end. Ghi chú: Hàm mkdir(s) dùng để tạo thư mục s Lưu ý: lúc này trong thư mục các test0 đến test4 chỉ chứa các file BAI4.INP Để tạo file BAI4.OUT ta cần chạy đoạn chương trình sau (đây cũng gần là đáp án của bài) var n,i,j,tg,t:longint; a:array[1..1000] of longint; f,g:text; s:string; begin for t:=0 to 4 do begin str(t,s); s:='test'+s+’\’; assign(f,s+'BAI4.INP'); reset(f); assign(g,s+'BAI4.OUT'); rewrite(g); readln(f,n); for i:=1 to n do read(f,a[i]); for i:=1 to n-1 do for j:=i+1 to n do if a[i]>a[j] then begin tg:=a[i]; a[i]:=a[j]; a[j]:=tg; end; for i:=1 to n do write(g,a[i],' '); close(f); close(g); end; end. 17
File đính kèm:
- de_cuong_sang_kien_su_dung_phan_mem_cham_bai_themis_gop_phan.pdf