Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 20 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
20
Dung lượng
342,5 KB
Nội dung
MỤC LỤC Trang 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 2 NỘI DUNG SÁNG KIẾN KINH NGHIỆM 2.1 Cơ sở lí luận sáng kiến kinh nghiệm 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm 2.3 Các sáng kiến kinh nghiệm giải pháp sử dụng để giải vấn đề 2.3.1 Các giải pháp 2.3.2 Các biện pháp tổ chức thực giải pháp 2.3.2.1 Dãy số biến mảng 2.3.2.2 Khai báo trực tiếp mảng chiều 2.3.2.3 Các dạng tập 2.4 Hiệu sáng kiến kinh nghiệm hoạt động giáo dục, 17 với thân, đồng nghiệp nhà trường KẾT LUẬN, KIẾN NGHỊ 18 3.1 Kết luận 18 3.2 Kiến nghị 18 TÀI LIỆU THAM KHẢO 19 1 MỞ ĐẦU 1.1 Lý chọn đề tài Pascal ngôn ngữ lập trình cấp cao Đây ngơn ngữ lập trình có cấu trúc chặt chẽ, rõ ràng tảng để học ngơn ngữ lập trình cao Do Pascal nhiều quốc gia có Việt Nam đưa vào chương trình giảng dạy Tin học trường THCS Thực tế trình giảng dạy nhận thấy nhiều em học sinh cảm thấy khó khăn việc học lập trình Pascal Đặc biệt với học sinh lớp lại cảm thấy việc học lập trình Pascal mới, lạ khó Nếu em học theo cách cần học thuộc nhớ thao tác khơng có tác dụng Như học xong câu lệnh rẽ nhánh yêu cầu học sinh làm tập phần lớn học sinh lúng túng nhiều thời gian để cố nhớ xem thầy, cô giáo làm nào, học sinh khó hình dung thuật tốn cách viết chương trình Trong đặc thù dạng tập mảng chiều đòi hỏi em cần phải học cách tư logic, mơ tả thuật tốn viết dịng lệnh máy tính xác đến đấu chấm, dấu phẩy Mặc khác, với tâm lí thơng thường em học sinh coi Tin học môn phụ không quan trọng nên nhiều em chủ quan không dành nhiều thời gian để học dẫn đến khó hiểu khơng làm tập Đây lí mà nhiều em vào đội tuyển HS giỏi lại xin khó bắt nhịp với lượng lớn kiến thức thi HS giỏi Tin học trẻ kết chưa cao Với lý khiến định chọn đề tài: “Hướng dẫn HS lớp giải tập mảng chiều Pascal” nhằm nâng cao chất lượng mơn Tin học nói chung chất lượng đội tuyển HS giỏi cấp nói riêng Mục đích nghiên cứu Nhằm giúp HS nắm cấu trúc câu lệnh mảng chiều, cách hoạt động câu lệnh, từ nâng cao mặt kiến thức mô tả thuật tốn viết chương trình cho tốn Đảm bảo cho HS vững kiến thức để có đủ khả dự thi kỳ Tin học trẻ cấp Huyện, cấp Tỉnh cấp Quốc gia 1.3 Đối tượng nghiên cứu Đề tài nghiên cứu giải pháp để hướng dẫn HS lớp giải tập mảng chiều Pascal Từ việc nghiên cứu vận dụng đề tài, rút học kinh nghiệm góp phần nâng cao chất lượng công tác dạy học môn Tin học Trường THCS Lý Thường Kiệt nói riêng chất lượng đội tuyển HS giỏi huyện Hà Trung 1.4 Phương pháp nghiên cứu 1.4.1 Phương pháp phân tích tổng kết kinh nghiệm Từ thực tiễn dạy học bồi dưỡng HS giỏi nhiều năm, đúc rút thành cẩm nang cho riêng trình giảng dạy cách luyện cho HS cách tự học để nắm vững chuyên đề, luyện cho HS cách làm thi máy tính 1.4.2 Phương pháp thực nghiệm khoa học Đưa kinh nghiệm thân phương pháp hướng dẫn HS giỏi lớp giải tập mảng chiều để đánh giá, rút kinh nghiệm thời gian 1.4.3 Phương pháp phân tích tổng hợp lý thuyết Nghiên cứu nhiều tài liệu tham khảo có liên quan đến phương pháp giải tập mảng chiều giúp tơi tìm hiểu sâu sắc vấn đề Qua tổng hợp để tạo phương pháp giải dạng tập câu lệnh cách khoa học, hiệu cho học sinh 1.4.4 Phương pháp phân loại hệ thống hóa lý thuyết Sau phân tích tổng hợp lý thuyết dùng phương pháp phân loại, hệ thống nhằm khái quát lên thành loại, dạng tập theo chuyên đề để hướng dẫn học sinh học 1.4.5 Phương pháp điều tra Bản thân tiến hành khảo sát cách cho HS làm kiểm tra chủ yếu tập trung việc giải tập mảng chiều Từ điều tra khả HS việc tiếp cách giải tập cách tối ưu 1.4.6 Phương pháp thực nghiệm sư phạm: Đề tài áp dụng cho khóa học Từ tơi tổng kết rút kinh nghiệm cho khóa học sau NỘI DUNG SÁNG KIẾN KINH NGHIỆM 2.1 Cơ sở lý luận sáng kiến kinh nghiệm Ở trường THCS không trọng học chun sâu ngơn ngữ lập trình Trong thấy học lập trình tập trung rèn luyện cho HS kĩ tư logic, tư hệ thống sáng tạo để giải vấn đề Tin học mà kĩ vô quan trọng để giải nhiều vấn đề sống Học Pascal giúp cho ta hiểu cách làm việc máy tính, cách giao tiếp để lệnh cho máy tính làm việc theo điều khiển người thông qua ngôn ngữ lập trình Các em tạo chương trình thú vị cách sử dụng câu lệnh Pascal Cũng giống môn học khác như: Tốn học, Vật lý, Hóa học … em thực hiểu u thích mơn Tin học em tìm thấy nhiều niềm vui, đam mê tìm hiểu khám phá điều mẻ đầy hấp dẫn môn tưởng chừng khơ khan Vì vậy, tơi chọn đề tài: “Hướng dẫn HS lớp giải mảng chiều Pascal” với mong muốn đóng góp phần nhỏ vào việc nâng cao chất lượng Tin học nhà trường và nâng cao chất lượng HS giỏi kỳ thi Tin học trẻ cấp Tỉnh, cấp Quốc gia 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm: Lập trình mơn học hướng dẫn học sinh cách giải toán cách viết chương trình máy tính Đây môn học học sinh nên phần đông em không nắm bắt kiến thức để vận dụng vào giải tập Mặt khác, theo kinh nghiệm giảng dạy thấy học sinh học đến mảng chiều em thấy khó: khó hình dung, khó khơng hiểu cách thực lệnh, học cảm giác mơ mơ màng màng dẫn đến ngại học ngại thực hành (do vận dụng lệnh vào giải tập nên test chương trình máy báo lỗi, khơng chạy đặc biệt sửa lỗi) Với nhiều năm giảng dạy rút số kinh nghiệm nho nhỏ dạy xong mảng chiều Turbo Pascal mà cảm thấy học sinh tiếp thu tốt, biết vận dụng vào giải tập cách linh hoạt đạt kết cao kỳ thi 2.3 Các sáng kiến kinh nghiệm giải pháp sử dụng để giải vấn đề 2.3.1 Các giải pháp: Để nâng cao chất lượng HS phải trăn trở, học hỏi nghiên cứu nhiều Cụ thể: Đổi phương pháp dạy học học sinh học mảng chiều là: * Giải pháp 1: Cung cấp cho HS kiến thức mảng chiều Tôi trọng rèn luyện cho học sinh biết khai thác sách giáo khoa tài liệu học tập, biết cách tự tìm lại kiến thức có, suy luận để tìm tịi phát kiến thức Định hướng cho HS cách tư phân tích, tổng hợp, đặc biệt hoá, khái quát hoá, tương tự, quy lạ quen… để dần hình thành phát triển tiềm sáng tạo Mảng chiều nhấn mạnh cho HS kiến thức sau: - Dãy số biến mảng - Khai báo trực tiếp mảng chiều * Giải pháp 2: Rèn luyện cho học sinh khả tư duy, sáng tạo phân tích thuật tốn - Với giải pháp hướng dẫn học sinh cách giải tập Toán học cách nói viết Từ yêu cầu học sinh đưa nhiều thuật toán ứng với tập Rồi chọn thuật tốn tối ưu cho tập * Giải pháp3: Phân dạng tập, phương pháp giải + Với dạng tập đưa nhiều ví dụ để học sinh hiểu nắm cú pháp câu lệnh, học sinh làm quen với nhiều dạng tập có sử dụng mảng chiều Các tập cho học sinh hướng dẫn học sinh cách giải Tốn học cách nói viết Sau áp dụng ngơn ngữ lập trình vào giải tập Ngồi ra, tơi cịn nhiều tập nhà học sinh luyện thêm mảng chiều * Giải pháp 4: Rèn kĩ giải tập máy tính - Thực hành mức độ cao tư đòi hỏi học sinh phải biết huy động gần hết vốn kiến thức làm việc với máy tính Mỗi thực hành thi lập trình giải tốn địi hỏi học sinh phải biết vận dụng toàn hiểu biết, huy động sức nhớ não để tìm cách giải nhanh nhất, tối ưu Để học sinh có tâm bình tĩnh thi địi hỏi học sinh phải nắm vững kiến thức cú pháp lệnh, học phải làm quen với nhiều dạng tốn mảng chiều Có gặp phải dạng tốn học sinh khơng bị lúng túng hình dung cách giải cách nhanh chóng - Với tập sau đưa thuật tốn tối ưu Tơi u cầu học sinh áp dụng ngơn ngữ lập trình vào giải tập thực hành máy Trong trình thực hành gặp lỗi học sinh phải tự sửa lỗi đó, trường hợp sửa lỗi khơng nhờ bạn giáo giúp Khi chương trình chạy hồn chỉnh tơi u cầu em ghi tập chạy máy riêng nhằm giúp em khắc sâu thêm thuật toán cách viết chương trình - Với dạng tập nhiều tập tương tự, tập nâng cao để giao nhà cho học sinh để học sinh khắc sâu kiến thức học - Sau tập thực hành nhận xét, củng cố phát triển toán để có tốn Như học sinh có tư linh hoạt sáng tạo * Giải pháp 5: Cho HS tiếp cận với đề thi học sinh giỏi cấp Tỉnh qua năm - Phân dạng tập qua đề thi - Cho học sinh làm tập đề thi năm trước để em tập làm quen khơng cịn bỡ ngỡ thi Với tập chấm điểm cho học sinh sau học sinh hoàn thành việc chạy chương trình máy sai lầm nguyên nhân dẫn đến sai lầm (nếu có) -> biện pháp khắc phục để học sinh nắm phần kiến thức làm chặt chẽ dạng tập * Giải pháp 6: Cho học sinh làm kiểm tra thử - Ra đề kiểm tra cho học sinh làm tập máy tính, tơi bấm chấm điểm Đề có mức độ nhận thức: nhận biết - thông hiểu - vận dụng vận dụng cao Từ HS rèn kỹ năng: phân tích - tổng hợp - đánh giá thực hành Với phương pháp nâng cao chất lượng mơn Tin học qua nâng cao chất lượng HS giỏi qua kỳ thi Tin học trẻ Do vậy, qua sáng kiến kinh nghiệm mạnh dạn đưa phương pháp nhỏ để bạn đồng nghiệp tham khảo góp phần đưa chất lượng môn Tin học Huyện – Tỉnh ngày nâng lên 2.3.2 Các biện pháp tổ chức thực giải pháp 2.3.2.1 Dãy số biến mảng Để khảo sát mức độ phân hóa giàu nghèo địa phương, người ta tiến hành thu thập thơng tin thu nhập hộ gia đình địa phương Cần viết chương trình tính mức thu nhập trung bình hộ gia đình địa phương độ chênh lệnh mức thu nhập hộ gia đình so với mức thu nhập trung bình Việc giải tốn gồm bước bản: - Tính thu nhập trung bình cách tính tổng thu nhập tất hộ gia đình chia cho tổng số hộ - Lần lượt lấy thu nhập hộ trừ giá trị trung bình bước để tính độ lệch mức thu nhập hộ so với mức thu nhập trung bình Giả sử số hộ gia đình khảo sát 50 Đoạn chương trình sau giúp giải toán trên: Var a, thunhaptb: Real; i:integer; Begin thunhaptb:=0; For i:=1 to 50 Begin Write(‘Thu nhap cu gia dinh thu ‘,i); readln(a); thunhaptb:=thunhaptb+a; end; thunhaptb:=thunhaptb/50; For i:=1 to 50 Begin Write(‘Thu nhap cu gia dinh thu ‘,i); readln(a); Writeln(‘Do lech so voi thu nhap tb la:’,a-thunhaptb); End; Readln; End Qua đoạn chương trình ta thấy thời điểm biến lưu giá trị nên đoạn chương trình trên, cần tới thu nhập hộ gia đình ta lại phải thực câu lệnh Readln(a) để nhập mức thu nhập hộ vào biến a Mà thao tác nhập mức thu nhập hộ gia đình từ bàn phím chiếm phần lớn thời gian trình thực đoạn chương trình trên, mà ta lại phải thực cơng việc hai lần Để phải nhập liệu lần, ta có phải khai báo nhiều biến, biến để lưu trữ thu nhập hộ gia đình Ví dụ: Var thunhap1, thunhap2, thunhap3,….: real; Readln(thunhap1); Readln(thunhap2); Readln(thunhap3);… Như địa phương cần khảo sát hộ gia đình phải khai báo nhiêu biến câu lệnh nhập mức thu nhập - công việc không thú vị Để tránh phải thực điều tương tự vậy, ngơn ngữ lập trình Pascal đưa kiểu liệu đặc biệt - kiểu mảng để lưu trữ nhiều liệu liên quan đến (như thunhap1, thunhap2,….ở trên) biến đánh “số thứ tự” cho liệu giúp việc xử lý liệu đơn giản Dữ liệu kiểu mảng tập hợp hữu hạn phần tử có thứ tự, phần tử có chung kiểu liệu, gọi kiểu phần tử Việc xếp thứ tự thực cách gán cho phần tử số Mảng => Chỉ số=> thunhap1 thunhap2 Thunhap3 thunhapk … 10 … k Các phần tử có kiểu liệu (như: integer, real, char,…) Khi khai báo biến có kiểu liệu kiểu mảng, biến gọi biến mảng Khi sử dụng biến mảng thực chất xếp theo số biến có kiểu tên Giá trị biến mảng mảng, tức dãy số (số nguyên, số thực) có thứ tự, số giá trị biến thành phần tương đương 2.3.2.2 Khai báo trực tiếp mảng chiều a Cú pháp: Var tên_biến_mảng: array[…] of kiểu liệu; Trong đó: - Chỉ số đầu, số cuối hai số nguyên thỏa mãn số đầu ≤chỉ số cuối - Kiểu liệu kiểu (trừ kiểu File) như: kiểu số thực, số nguyên,… VD: M: array[1 50] of Integer; A: array[1 100] of Integer; ten: array[1 60] of string[20]; b Cách truy cập đến thành phần mảng: Tên_biến_mảng[chỉ số mảng] Trong đó: Chỉ số mảng vị trí số mảng Các phần tử phân biệt với thông qua biến số VD: M 10 20 -4 14 -9 45 -8 -3 A 10 11 12 13 14 15 16 10 20 14 20 -9 8 10 Để truy cập đến phần tử thứ 5: M[5]:=-4; A[4]:=20; Có thể gán biến mảng cho biến mảng khác kiểu liệu: VD: M[5]:=A[4]; 2.3.2.3 Các dạng tập 2.3.2.3.1 Dạng 1: Nhập xuất tính tổng phần tử mảng Ví dụ: A: Kết quả: Tong S = 23 Hướng dẫn: Để giải toán cần phải đảm bảo vấn đề: - Nhập mảng Các thao tác theo yêu cầu: (1) Nhập số n (2) Tiến hành lặp (từ đến n) nhập cho giá trị Ai mảng - Tính tổng phần tử cho mảng A: (1) Khai báo khởi tạo tổng S (2) Sử dụng vòng lặp (từ đến n để duyệt qua tất giá trị A i) để tính cộng dồn giá trị Ai vào tổng S - Xuất mảng Cơng việc đơn giản sử dụng vịng lặp từ đến N để in giá trị Ai cho mảng VD1: Nhập n số nguyên từ bàn phím vào mảng a Tính tổng số mảng b Đưa phần tử mảng hình Chương trình: Var i, n, S: integer; A: array[1 50] of Integer; Begin {nhập phần tử vào mảng} Write(‘Nhap so phan tu cua mang n=’); Readln(n); For i:=1 to n Begin write(‘Nhap phan tu thu ‘, i,’ =’); Readln(A[i]); End; S:=0; {tính tổng} For i:=1 to n S:=S+A[i]; Writeln(‘Tong cua cac phan tu mang la:’,S); Writeln(‘Cac phan tu cua mang la:’); {Đưa cac phần tử hình} For i:=1 to n Write(A[i], ‘ ‘); Readln; End VD2 : Lập trình nhập dãy n số thực a Tính TBC số dãy b Đếm xem có số dương, tính tổng chúng Hướng dẫn: Để giải toán cần phải đảm bảo vấn đề: a- Nhập mảng Các thao tác theo yêu cầu: (1) Nhập số n (2) Tiến hành lặp (từ đến n) nhập cho giá trị Ai mảng b- Tính trung bình cộng phần tử cho mảng A: (1) Khai báo khởi tạo tổng S (2) Sử dụng vòng lặp (từ đến n để duyệt qua tất giá trị A i) để tính cộng dồn giá trị Ai vào tổng S (3) Tính trung bình cộng TBC =S/n (lấy tổng S chia cho n phần tử) (4) Thông báo kết TBC c- Đếm xem có số dương, tính tổng chúng: (1) Khai báo khởi tạo biến đếm d=0 (2) Sử dụng vòng lặp (từ đến n để duyệt qua tất giá trị Ai) Nếu phần tử Ai >0 tăng biến đếm d lên đơn vị (3) Thông báo kết biến đếm d Chương trình: Var i, n,d: integer; S, TBC:real; A: array[1 50] of Real; Begin {nhập phần tử vào mảng} Write(‘Nhap so phan tu cua mang n=’); Readln(n); For i:=1 to n Begin write(‘Nhap phan tu thu ‘, i,’ =’); Readln(A[i]); End; S:=0; {tính tổng} For i:=1 to n S:=S+A[i]; TBC:=S/n; Writeln(‘Trung binh cong cua cac phan tu mang la:’,TBC:3:1); d:=0; {đếm số phần tử dương dãy số} For i:=1 to n If A[i]>0 then d:=d+1; Writeln(‘Day tren so so phan tu duong la:’,d); Readln; End Bài tập: Bài 1: Đọc vào n số nguyên từ bàn phím a Tính tổng trung bình cộng số cho b Tính tổng số lẻ trung bình cộng số chẵn c Tính trung bình cộng số thuộc đoạn [20,200] Bài 2: Lập trình đọc từ bàn phím dãy n số nguyên a Đếm xem dãy có số lẻ b Đưa hình số lẻ có dãy Bài 3: Đếm số lần xuất giá trị X mảng A Ví dụ: A: 5 1 X: Kết quả: So lan xuat hien X la 2.3.2.3.2 Dạng 2: Sắp xếp phần tử mảng theo chiều tăng giảm dần VD: Lập trình xếp dãy số nguyên theo chiều tăng dần Đưa dãy số xếp hình Ý tưởng: - Nhập n, nhập phần tử cho mảng a - Dùng vòng For lồng nhau: Vòng For 1:Dùng biến i chạy từ đến n-1 Vòng For 2: Dùng biến j chạy từ i+1 đến n Nếu a[i]>a[j] đổi chỗ a[i] cho a[j] - Đưa hình dãy số xếp Chương trình: Var i, n, j, tg: integer; A: array[1 50] of Integer; Begin Write(‘Nhap so phan tu cua mang n=’); Readln(n); For i:=1 to n Begin write(‘Nhap phan tu thu ‘, i,’ =’); Readln(A[i]); End; For i:=1 to n-1 For j:=i+1 to n If a[i]>a[j] then Begin tg:=a[i]; a[i]:=a[j]; a[j]:=tg; end; Writeln(‘Day da sap xep la:’); For i:=1 to n Write(a[i],’ ‘); Readln; End Bài tập: Bài 1: Lập trình xếp dãy số nguyên theo chiều giảm dần Đưa dãy số xếp hình Ý tưởng: - Nhập n, nhập phần tử cho mảng a - Dùng vòng For lồng nhau: Vòng For 1:Dùng biến i chạy từ đến n-1 Vòng For 2: Dùng biến j chạy từ i+1 đến n Nếu a[i]Max thay Max:=a[i]; Nếu a[i]a[i-1], tăng độ dài thêm ngược lại: * Nếu dãy xét cần lưu thì: Lưu lại độ dài, số đầu dãy, Xác định lại độ dài, số đầu dãy * Nếu dãy xét khơng cần lưu thì: Xác định lại độ dài, số đầu dãy 12 Chương trình: * Kết chương trình: - Dãy số: dãy tăng dài có dãy số 13 Bài 4: Sắp xếp sổ chẵn lên đầu dãy theo chiều giảm dần, số lẻ cuối dãy theo chiều tăng dần Chương trình: Kết chương trình: Bài tập làm thêm: Đọc vào n số nguyên từ bàn phím a Sắp xếp số chẵn lớn 10 lên đầu dãy, số lẻ, cuối số lại b Đọc vào số a, b Xếp số thuộc đoạn [a,b] lên đầu dãy, số nhỏ a, cuối số cịn lại 14 Bài 5: Viết chương trình chèn phần tử X vào vị trí k mảng A có N phần tử Xố phần tử vị trí h mảng A Ví dụ: A : 12 17 X = 20 , k=3 h=2 Kết chèn: 12 20 17 Kết xoá: 12 20 17 * Ý tưởng: a Chèn phần tử X vào vị trí k cho mảng A (có N phần tử) Ý tưởng thuật toán: + Dịch chuyển phần tử từ vị trí k đến N-1 lùi vị trí, trở thành phần tử từ vị trí k+1 đến N Lưu ý, để tránh trường hợp phần tử đè lên nhau, giải thuật phải tiến hành di dời phần tử sau trước….đến phần tử k sau + Gán giá trị cho A[k] x + Tăng số lượng phần tử A lên tức Sau chèn xong số phần tử mảng N+1 phần tử b Xoá phần tử vị trí k mảng A (có N phần tử) Ý tưởng thuật toán: + Dịch chuyển phần tử từ vị trí k đến N-1 tiến trước vị trí, trở thành phần tử từ vị trí k-1 đến N-2 + Giảm số lượng phần tử A xuống tức Sau chèn xong số phần tử mảng N+1 phần tử Bài 6: Tìm kiếm thay Tìm kiếm vị trí xuất x mảng A Thay giá trị Ai x thành y Ví dụ: A: 5 1 X=5 Y=15 Kết quả: Vi tri xuat hien X la Ket qua thay the: 15 15 15 1 * Mở rộng: + Tìm kiếm cặp phần tử gần có tổng chia hết cho 10 Thay phần tử tổng chúng Ví dụ: A: 19 62 32 12 Kết quả: 20 20 62 40 40 12 Hướng dẫn mở rộng: Var i,k:Integer; Begin For i:=0 to N If( (A[i-1]+A[i]) mod 10 = 0) then Begin k := (A[i-1]+A[i]); 15 A[i-1] := k; A[i] := k; End; End Bài 7: Loại người khỏi vịng trịn: Một nhóm gồm N học sinh thực trò chơi loại người khỏi vòng tròn Luật chơi sau: N học sinh đánh số hiệu từ đến N xếp thành vòng tròn học sinh thứ M bị loại khỏi vòng tròn tính theo chiều kim đồng hồ Khi học sinh bị loại khỏi vịng trịn, vịng trịn thu hẹp lại đếm thứ tự từ học sinh lại bên cạnh để xác định học sinh bị loại tiếp theo, vòng tròn học sinh Nhập hai số tự nhiên N, M số hiệu học sinh lại vòng tròn Dữ liệu vào từ file: bailam4.inp Dòng 1: Số tự nhiên N, M Dữ liệu file: bailam4.out Dòng 1: Số hiệu học sinh cịn lại vịng trịn Ví dụ: Dữ liệu vào từ file: bailam4.inp 10 Dữ liệu file: bailam4.out Chương trình: Var M,N,i,j,d,loai:Byte; a:array[1 100] of 1; Begin Write(' Nhap so hoc sinh:'); Readln(N); Write(' Hoc sinh bi loai dau tien: '); Readln(M); For i:=1 to N a[i]:=1; loai:=0; i:=0; d:=0; Repeat i:=i mod N + 1; If (a[i]0) and (d= N-1; Writeln(' CON NGUOI THU:'); d:=0; For i:=1 to N If a[i]=1 then Begin write(i:5); 16 Inc(d); End; If d=0 then write('0'); Readln; End 2.4 Hiệu sáng kiến kinh nghiệm hoạt động giáo dục, với bạn bạn thân, đồng nghiệp nhà trường Trong năm bồi dưỡng học sinh giỏi dự thi Tin học trẻ cấp Tỉnh cấp nhận thấy rằng: Tuy điều kiện sở vật chất khó khăn (17 máy); tài liệu bồi dưỡng có liên quan đến lập trình Pascal trường ỏi; Nhưng với kinh nghiệm em học đến mảng chiều gây hứng thú học tập cho học sinh, phát huy lực học tập độc lập, tự tìm kiến thức mới, sáng tạo tập thực hành khơng cịn cảm thấy bỡ ngỡ, sợ sai ngại thực hành lập trình mà thay vào niềm đam mê, hứng thú, u thích mơn học, bình tĩnh, tự tin vào thân dự thi Cụ thể kết thi Tin học trẻ cấp tỉnh vào tháng 11/2021 sau: Số giải cấp tỉnh Năm học 2021-2022 Giải Giải nhì Giải ba Giải KK 01 01 Ghi Với kết hy vọng áp dụng phương pháp vào dạy cho học sinh học mảng chiều ngày nâng cao chất lượng cho học sinh giỏi Tin học cho nhà trường, cho Huyện cho Tỉnh nhà Cịn với đồng nghiệp tơi tin bạn áp dụng phương pháp vào dạy câu lệnh rẽ nhánh bạn khơng phải nhiều thời gian dạy cho em từ kiến thức Mà qua kinh nghiệm bạn khắc sâu kiến thức cho em thông qua tập nâng cao luyện cho em cách làm thi thực hành máy Từ nâng cao chất lượng học sinh giỏi cấp cho nhà trường 17 KẾT LUẬN VÀ KIẾN NGHỊ 3.1 Kết luận: Trên số kinh nghiệm mà thân tơi tự tích luỹ qua năm phân công bồi dưỡng đội tuyển học sinh giỏi Rất mong bạn đồng nghiệp lãnh đạo phụ trách chun mơn Phịng giáo dục đào tạo - Sở giáo dục đào tạo xây dựng, góp ý để thân tơi ngày nâng cao tay nghề, để công tác bồi dưỡng học sinh giỏi Tin học trẻ trường đạt kết cao 3.2 Kiến nghị: Để phương pháp dạy ngày thực thi Là giáo viên trực tiếp giảng dạy môn Tin học đề nghị: - Với BGH trường, Phịng giáo dục đào tạo, UBND Huyện: Tơi đề nghị cấp trang bị thêm máy tính, tài liệu tham khảo kiến thức máy tính, lập trình Turbo Pascal để em thực hành nhiều tiết học, buổi học bồi dưỡng; phát huy tinh thần tự học, tự nghiên cứu - Với Phòng giáo dục đào tạo – Sở giáo dục đào tạo: Khi tổ chức kỳ thi học sinh giỏi cấp Huyện – cấp Tỉnh cho mơn văn hóa nên đưa thêm mơn Tin học để em cọ sát, làm quen với kỳ thi góp phần nâng cao chất lượng học sinh giỏi môn Tin học./ Xác nhận thủ trưởng đơn vị Thanh Hóa, ngày 15 tháng 03 năm 2022 Tơi xin cam đoan SKKN viết khơng chép nội dung người khác Người làm sáng kiến Nguyễn Thị Tâm 18 TÀI LIỆU THAM KHẢO Tin học dành cho học sinh THCS nhà xuất Giáo dục - Phạm Thế Long (chủ biên) Turbo pascal 7.0 PGS-PTS Bùi Thế Tâm Lập trình Turbo pascal 7.0 Hồng Hồng Em tập lập trình Đỗ Trần Hùng 19 DANH MỤC SÁNG KIẾN KINH NGHIỆM ĐÃ ĐƯỢC HỘI ĐỒNG SÁNG KIẾN KINH NGHIỆM NGÀNH GIÁO DỤC VÀ ĐÀO TẠO HUYỆN, TỈNH VÀ CÁC CẤP CAO HƠN XẾP LOẠI TỪ C TRỞ LÊN Họ tên tác giả: Nguyễn Thị Tâm Chức vụ đơn vị công tác: Trường THCS Lý Thường Kiệt TT Tên đề tài SKKN Phương pháp dạy thực hành Tin học Hướng dẫn học sinh giỏi lớp sử dụng với câu lệnh lặp For Turbo Pascal Hướng dẫn học sinh giỏi lớp sử dụng với câu lệnh lặp For Turbo Pascal Hướng dẫn học sinh giỏi lớp giải tập với câu lệnh lặp rẽ nhánh Pascal Hướng dẫn học sinh giỏi lớp giải tập với câu lệnh lặp rẽ nhánh Pascal Cấp đánh giá xếp loại Kết đánh giá xếp loại Năm học đánh giá xếp loại (Ngành GD cấp huyện/tỉnh; Tỉnh ) (A, B, C) Huyện C 2004-2005 Huyện A 2014-2015 Tỉnh C 2015-2016 Huyện A 2019-2020 Huyện B 2020-2021 20 ... hành Tin học Hướng dẫn học sinh giỏi lớp sử dụng với câu lệnh lặp For Turbo Pascal Hướng dẫn học sinh giỏi lớp sử dụng với câu lệnh lặp For Turbo Pascal Hướng dẫn học sinh giỏi lớp giải tập với... Với dạng tập tơi đưa nhiều ví dụ để học sinh hiểu nắm cú pháp câu lệnh, học sinh làm quen với nhiều dạng tập có sử dụng mảng chiều Các tập cho học sinh hướng dẫn học sinh cách giải Tốn học cách... hướng dẫn học sinh cách giải tập Tốn học cách nói viết Từ yêu cầu học sinh đưa nhiều thuật toán ứng với tập Rồi chọn thuật toán tối ưu cho tập * Giải pháp3: Phân dạng tập, phương pháp giải +