SKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶP

20 269 0
SKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶP

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

SKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶPSKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶPSKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶPSKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶPSKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶPSKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶPSKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶPSKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶPSKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶPSKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶPSKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶP

SỞ GIÁO DỤC ĐÀO TẠO THANH HÓA TRƯỜNG THPT BA ĐÌNH NGA SƠN   SÁNG KIẾN KINH NGHIỆM XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH CẤU TRÚC LẶP Người thực hiện: Trần Ngọc Chiến Chức vụ: Giáo viên SKKN thuộc lĩnh vực (môn): Tin THANH HOÁ NĂM 2015 PHẦN A – ĐẶT VẤN ĐỀ Có thể nói dạy học hoạt động đặc trưng có người Trải qua hàng nghìn năm, hoạt động dạy học không ngừng cải tiến Khó nói đâu điểm dừng hay đâu đỉnh việc cải tiến dạy học Thế nhưng, thực tế sống cho thấy đến thời điểm dạy học đạt thành tựu đáng nể Đó thành tựu làm phát huy tối đa vai trò người học, làm tối ưu hóa hoạt động người dạy hướng người học, tổ chức hoạt động dạy học theo định hướng hiệu điều kiện tối ưu Lẽ đương nhiên, để thực yêu cầu ấy, đạt thành tựu lý tưởng đòi hỏi việc dạy học phải dựa sở khoa học định mà loại tập cho học sinh điều thiếu Hoạt động dạy học dạng hoạt động đặc trưng loài người nhằm truyền thụ lại kinh nghiệm, vốn kiến thức xã hội loài người tích luỹ từ hệ cho hệ khác, biến chúng thành vốn liếng, kinh nghiệm, phẩm chất lực tư sáng tạo người học Hoạt động dạy học gồm hai hoạt động: hoạt động dạy giáo viên hoạt động học học sinh Hai hoạt động liên quan mật thiết với nhau, tác động qua lại lẫn có chung mục đích cuối giúp cho người học lĩnh hội nội dung học đồng thời phát triển phẩm chất, nhân cách lực tư sáng tạo người học Nói dạy học nói chung dạy học môn Tin nói riêng cần người học phát huy tính tích cực, tự giác chủ động sáng tạo họ hoạt động học đạt mục tiêu hoạt động dạy học mà người dạy cần phải biết phân tích nội dung hoạt động dạy thành hoạt động thành phần vào mục tiêu tiết học, trình độ học sinh, trang thiết bị có nhà trường mà lựa chọn phương pháp giảng dạy, thời điểm đưa nội dung kiến thức tiết học cách phù hợp nhằm thực hoạt động tiềm tàng nội dung cần dạy để đạt mục tiêu đặt cách cao nhất, hiệu Ngày hiểu biết tin học điều thiếu Bởi xâm nhập vào nhiều ngành khoa học khác với vai trò công cụ hữu ích để học tập, ứng dụng, nghiên cứu phát minh PHẦN B - GIẢI QUYẾT VẤN ĐỀ I – CƠ SỞ LÍ LUẬN CỦA VẤN ĐỀ Việc lựa chọn nghiên cứu đề tài dựa vào hai nguyên tắc dạy học là: nguyên tắc đảm bảo thống tính vừa sức chung vừa sức riêng nguyên tắc đảm bảo thống tính tập thể cá nhân Phương pháp dạy học Tin học có liên quan mật thiết đến nhiều môn khoa học như: Triết học vật biện chứng, Toán học, Giáo dục học, Tâm lý học, Lôgic học khoa học khác Cơ sở Toán học: Đó tính xác, chặt chẽ logic, khoa học dạy học Cơ sở Giáo dục học: Căn vào nguyên tắc đảm bảo thống tính vừa sức chung vừa sức riêng dạy học, tính tập thể cá nhân dạy học Cơ sở Triết học: Mâu thuẫn động lực thúc đẩy trình phát triển Một vấn đề gợi cho học sinh học tập mâu thuẫn yêu cầu nhiệm vụ nhận thức với tri thức kinh nghiệm sẵn có Cơ sở Tâm lý học: Sự nảy sinh, hình thành tâm lý phương diện cá thể trình chuyển đổi liên tục từ cấp độ sang cấp độ khác đạt tới chất lượng diễn quy luật đặc thù Quy luật trình nhận thức từ trực quan sinh động đến tư trừu tượng, từ tư trừu tượng thực tiễn Trong trình nhận thức có đạt hiệu hay không, có bền vững hay không phụ thuộc vào trình tích cực hoạt động, sáng tạo chủ thể Trong môn học nói chung môn Tin học nói riêng, thống điều khiển thầy hoạt động học trò có thực cách quán triệt, kích thích quan điểm hoạt động thực dạy học hoạt động hoạt động Dạy học theo phương pháp phải làm cho học sinh chủ động tư nhiều hơn, làm nhiều hơn, tham gia hoạt động nhiều trình chiếm lĩnh tri thức, thầy đóng vai trò người hướng dẫn Dạy học dạy cho học sinh phương pháp tư sáng tạo, dạy tin học phải dạy suy nghĩ, dạy cho học sinh thành thạo phương pháp tư duy, từ phân tích tổng hợp trừu tượng hóa, khái quát hóa… phải dạy cho học sinh có tìm tòi tự phát phát biểu vấn đề, dự đoán kết quả, tìm hướng giải toán làm tập tin học nói chung tập Pascal, hướng viết giải thuật toán Hình thành phát triển tư tích cực, độc lập sáng tạo, có óc hoài nghi khoa học dạy học tin học cho học sinh trình lâu dài, thông qua học tiết học II – THỰC TRẠNG CỦA VẤN ĐỀ CẦN NGHIÊN CỨU: 2.1 Thực trạng chung: Đối với môn Tin học trường THPT ngôn ngữ lập trình Pascal Đây nội dung khó người dạy người học Một nội dung khó tập với Câu lệnh rẽ nhánh cấu trúc lặp chương trình Tin học 11 Mặt khác, biết xây dựng hệ thống tập cho việc điều khiển trình dạy học Vì giáo viên phải xác định mức độ yêu cầu thể hành động mà học sinh phải đạt đạt để xây dựng hệ thống tập, hệ thống ví dụ hợp với dạy 2.2 Đối với giáo viên Bản thân giáo viên trực tiếp giảng dạy Tin học, mạnh dạn chọn đề tài: “Xây dựng hệ thống tập dạy câu lệnh rẽ nhánh cấu trúc lặp” Với đề tài hy vọng giúp cho thân vững vàng hơn, hiểu thêm ngôn ngữ lập trình Pascal, để dạy học sinh tiếp cận với ngôn ngữ lập trình Pascal, làm cho em hiểu thấy ứng dụng rộng rãi ngôn ngữ lập trình Pascal khoa học đời sống 2.3 Đối với học sinh Học sinh THPT coi tin học môn học phụ, hầu hết em tập trung vào học môn thi vào trường đại học trung học chuyên nghiệp Trường THPT Ba Đình trường chất lượng cao huyện, em cần phải học rèn luyện, trang bị nhiều phương diện Không kỹ lưỡng mà phải nâng cao yêu cầu SGK Chính môn Tin học hành trang để em mang theo vào trường đại học III- GIẢI PHÁP TỔ CHỨC THỰC HIỆN: 3.1 – Phân tích xây dựng tập 3.1.1- Sự phức tạp đối tượng hoạt động Đối tượng hoạt động phức tạp hoạt động khó thực Vì dựa vào phức tạp đối tượng để xây dựng tập Ví dụ 1: Khi cho học sinh luyện tập câu lệnh rẽ nhánh đưa tập dựa vào phức tạp biến số Chẳng hạn: Viết chương trình cho máy nhận vào số thực Xét xem số có làm thành cạnh tam giác không? Ở ví dụ học sinh dễ dàng đưa thuật toán để viết chương trình Hay nói cách khác học sinh dễ dàng xét tổng cạnh tam giác lớn cạnh lại Thuật giải: Bước 1: Nhập vào số a, b, c thực ứng với chiều dài cạnh tam giác; Bước 2: – Nếu (a < b + c) (b < a + c) (c < a + b) tiếp đến bước 3; – Nếu không thỏa mãn chuyển đến bước 4; Bước 3: Thông báo số vừa nhập ba cạnh tam giác; Bước 4: Thông báo số vừa nhập ba cạnh tam giác; Bước : Kết thúc Dựa vào thuật toán học sinh dễ dàng viết chương trình Write (‘Hay nhap so thuc y’); readln(a,b,c); If (a < b + c) and (b < a + c) and (c < a + b) then Write(‘Ba so vua nhap la ba canh cua mot tam giac’) Else Write (‘Ba so vua nhap khong phai la ba canh cua mot tam giac ’); Nhưng thêm yêu cầu vào như: Nếu tam giác tam giác tam giác nhọn, tam giác vuông hay tam giác tù độ phức tạp lại tăng thêm nhiều Các em phải so sánh tổng hai cạnh với cạnh mà em lại phải so sánh lần mà phải sử dụng vòng lặp lồng giải được, giáo viên cần hướng dẫn cho em thuật toán để giải vấn đề Thuật toán : Bước 1: Nhập số a, b, c tương ứng với ba cạnh tam giác; Bước 2: Nếu (a < b + c) (b < a + c) (c < a + b) tiếp đến bước 3; Nếu không thỏa mãn điều kiện chuyển đến bước 10; Bước 3: Thông báo có tam giác ; Bước 4: Đưa số lớn c; Bước 5: a := a*a; b := b*b; c := c*c Bước 6: Nếu c < a + b chuyển đến bước 8; Nếu c = a + b chuyển sang bước 9; Nếu không chuyển đến bước 7; Bước 7: Thông báo tam giác tù ; chuyển đến bước 11; Bước 8: Thông báo tam giác nhọn ; chuyển đến bước 11; Bước 9: Thông báo tam giác vuông ; chuyển đến bước 11; Bước 10: Thông báo không tam giác ; Bước 11: Kết thúc Giáo viên cần gợi ý cho em đưa số lớn c em nên dùng biến gọi biến trung gian (tg) Begin Write (‘Hay nhap so thuc y’); Readln(a,b,c); If (a < b + c) and (b < a + c) and (c < a + b) then Begin Write( ‘Ba so vua nhap la ba canh cua mot tam giac’); {Dua so lon nhat ve c} If a > c then Begin tg := a; a := c; c := tg; End; If b > c then Begin tg := b; b := c; c := tg; End; {Moi so la binh phuong cua no} a:= a*a; b:= b*b; c := c*c; If c < a + b then Writeln (‘Day la tam giac nhon’) Else If c = a + b then Writeln (‘Day la tam giac vuông ’) Else Writeln (‘Day la tam giac tu ’) End Else Writeln(‘Ba so vua nhap không phai la ba canh cua mot tam giac’); Readln; End Tóm lại: Đối tượng hoạt động phức tạp hoạt động khó thực gặp toán dạng này, người giáo viên phải từ từ hướng dẫn học sinh đưa dạng đơn giản có đối tượng tham gia hoạt động, từ học sinh dễ dàng giải yêu cầu tập 3.1.2- Sự trừu tượng, khái quát đối tượng hoạt động Như biết, tính chất giải thuật không giải toán riêng lẻ mà giải cho lớp toán có cấu trúc khác mặt liệu vào Vì vậy, đối tượng hoạt động trừu tượng, khái quát có nghĩa yêu cầu hoạt động cao Do coi mức độ trừu tượng, khái quát đối tượng để xây dựng tập Ví dụ2: Viết chương trình nhập vào dãy số nguyên sau tính tổng số âm tính trung bình cộng số dương a) Dãy có 10 phần tử b) Số phần tử dãy nhận vào từ bàn phím trước vào phần tử dãy c) Số phần tử dãy xác trước vào phần tử dãy mà biết khoảng Nó hoàn toàn xác định người ta vào dấu hiệu kết thúc dãy nhận số Trường hợp a) số phần tử dãy số, em cần bố trí vòng lặp For thực được, đoạn chương trình sau: for i := to 10 Begin Write(‘Nhap so thu: ’,i,‘=’); Readln(a); If a < then ta := ta + a Else Begin td := td + a; sd := sd + 1; End; End; Writeln(‘Tong cac so am la: ’, ta); Writeln(‘Trung binh cong cua cac so duong la: ’, (td/sd):8:2); Trường hợp b) hoạt động khái quát, giáo viên gợi ý để học sinh phát biết viết chương trình đó, ta cần biến để nhận vào số phần tử dãy trước thực vòng lặp, biến đếm phải chạy từ đến n Đoạn chương trình sau: Write(‘Cho biet so phan tu cua day’); Readln(i); For i :=1 to i Begin Writeln(‘Nhap so thu: ’,i, ‘=’); Readln(a); If a < then ta := ta + a Else Begin td := td + a; sd := sd + 1; End; Writeln(‘Tong cac so am la: ’, ta); Writeln(‘Trung binh cong cua cac so duong la: ’, (td/sd):8:2); End; Trường hợp c) hoạt động lại khái quát mức thay biến cụ thể điều kiện kết thúc dãy số Trong trường hợp giáo viên gợi ý cho em để em tự đặt xem với yêu cầu có khác với hai yêu cầu trước như: Dãy số có phần tử? Đến lúc không muốn nhập ta phải làm nào? Có thể dùng điều kiện để kết thúc dãy đó? Nên dùng vòng lặp để nhập số nguyên đó? Học sinh phải tìm cách trả lời câu hỏi Giáo viên gợi ý: Dùng biến để xác định số phần tử dãy dùng vòng lặp với điều kiện sau để nhận vào phần tử dãy số điều kiện để kết thúc nhận vào số Repeat i := 1; Write('Nhap so thu: ', i, '='); Readln(a); If a < then ta := ta + a Else Begin td := td + a; sd := sd +1; End; Until a = 0; Writeln('Tong cac so am la: ',ta); Writeln('Trung binh cong cua cac so duong la: ',(td/sd):8:2); Như vậy: Hoạt động nhập vào dãy số nguyên tiến hành ba bình diện khác nhau, tính trừu tượng khái quát đối tượng hoạt động ngày gia tăng tùy thuộc vào đối tượng học sinh Ví dụ 3: Tính giá trị biểu thức P sau: a) P= + + + + b) P= + 15 + + 5n c) P= m + m 15+ + m 5n Với m số nguyên lớn Trường hợp a) học sinh dễ dàng sử dụng vòng lặp For để tính giá trị P sau: P := 0; For k := to P := Sqrt(k + P); Write('Gia tri cua bieu thuc P la: ',P:8:2); Trường hợp b) khái quát hoá cao học sinh phải biết tổ chức lặp phần a) không giải yêu cầu Vì nhiệm vụ người giáo viên phải hướng dẫn học sinh vòng lặp For theo chiều Downto từ n đến để tính dần giá trị P từ ngoài, theo chiều to không giải toán Repeat Write('Nhap gia tri cua n:'); Readln(n); Until n > 0; P := 0; For k := n downto P := Sqrt(5*k + P); Write('Gia tri cua bieu thuc P la: ',P:8:2); Trường hợp c) trừu tượng cao hơn, với ý thức khái quát hoá, học sinh đặt vấn đề n dấu bậc máy tính giải toán Bây em suy nghĩ đến tính giá trị biểu thức P có n dấu m Để giúp học sinh không nản cảm thấy khó, nhiệm vụ người thầy giáo nhắc lại cho học sinh biết bậc m số có số mũ 1/m để nhập P lớn n không âm phải tổ chức vòng lặp…để học sinh tính P sau: Repeat Write('Nhap gia tri cua n va m:'); Readln(n, m); Until (n > 0) and (m > 1); P := 0; For k := n downto P := Exp(1/m*Ln(5*k + P)); Write('Gia tri cua bieu thuc P la: ',P:8:2); Tóm lại việc xây dựng dược hệ thống tập giúp cho học sinh tăng khả tư duy, khả trừu tượng hoá, khái quát hoá 3.1.3- Nội dung hoạt động Nội dung hoạt động chủ yếu tri thức liên quan đến hoạt động điều kiện khác hoạt động Nội dung hoạt động gia tăng hoạt động khó thực nội dung hoạt đông để phân loại tập Ví dụ 4: Nhận vào m phần tử dãy số, in số chia hết cho 9, tính tổng số chia hết cho Có thể phân loại tập dựa vào phức tạp nội dung mức sau: a) Nhập vào m phần tử số nguyên dương in hình dãy vừa nhập b) Nhập vào m phần tử số nguyên, in hình phần tử số chia hết cho chia hết cho Tính tổng số chia hết cho c) Nhập vào m phần tử số nguyên lớn nhỏ 3000, in hình phần tử số chia hết cho chia hết cho Tính tổng số chia hết cho Ở nội dung a) học sinh dễ dàng độc lập viết chương trình nhận vào số m bố trí vòng lặp để nhận vào số nguyên không âm sau: Write('Nhap vao bao nhieu phan tu la nguyen duong? '); Readln(m); i := 0; Repeat i := i + 1; Write('Nhap so thu ',i,' = '); Readln(So[i]); if So[i] < then Begin Writeln('Moi nhap lai'); i := i - 1; Until i = m; Write('Day vua nhap la: '); For i := to m Write(So[i]:3); End; Ở nội dung b) thêm nội dung in số hết cho chia hết cho 5, sau tính tổng số chia hết cho 9, em lúng túng, em chưa nghĩ ngay, Vì vậy, giáo viên cần hướng dẫn cho em cần thêm điều kiện nhập số sau Until, học sinh dễ dàng viết lệnh đó: Write('Nhap vao bao nhieu phan tu la nguyen duong? '); Readln(m); i := 0; Repeat i := i + 1; Write('Nhap so thu ',i,' = '); Readln(So[i]); if So[i] < then Begin Writeln('Moi nhap lai so thu ',i); i := i - 1; End; Until i = m; Write('So chia het cho va la: '); for i := to m Begin If (So[i] mod = 0) and (So[i] mod = 0) then Write(So[i]:5); End; Readln; For i := to m If So[i] mod = then s := s + So[i]; Write('Tong cac so chia het cho la: ',s:3); Khi đến nội dung c) thêm nội dung số lớn nhỏ 3000 hướng dẫn theo tư ý b) em dễ dàng làm Write('Nhap vao bao nhieu phan tu la nguyen duong? '); Readln(m); i := 0; s := 0; Repeat i := i + 1; Write('Nhap so thu ',i,' = '); Readln(So[i]); if (So[i] = 3000) then Begin Writeln('Moi nhap lai so thu ',i); i := i - 1; End; Until i = m; Write('So chia het cho va la: '); for i := to m Begin If (So[i] mod = 0) and (So[i] mod = 0) then Write(So[i]:7); End; Readln; For i := to m If So[i] Mod = then s := s + So[i]; Write('Tong cac so chia het cho la: ',s:3); Như việc gia tăng thêm nội dung hoạt động hoạt động khó thực hiện, giáo viên trường hợp phải hướng dẫn học sinh vận dụng kết phần trước để suy nghĩ tìm cách giải phần sau 3.1.4 - Chất lượng hoạt động Chất lượng hoạt động thường tính độc lập độ thành thạo, lấy làm để xây dựng tập Ví dụ 5: Xây dựng chương trình, xây dựng tập theo mức độ sau: a) Hiểu chương trình b) Trình bày lại dược việc xây dựng chương trình c) Độc lập xây dựng chương trình Ví dụ cụ thể sau: Viết chương trình tính: S = + + + … + n với n nhập từ bàn phím chạy chương trình Trong ví dụ học sinh phải hiểu phép tính tổng dãy số, phải dùng vòng lặp có số lần định trước để viết thuật giải, mức độ hiểu chương trình Ở mức độ trình bày lại việc xây dựng chương trình bước nhập n, dùng vòng lặp For… cho biến chạy từ đến n, sau cho cộng dồn sau , thoát khỏi vòng lặp in giá trị tổng Ở mức độ độc lập xây dựng chương trình người giáo viên phải dẫn dắt để học sinh biết xác định số biến phải dùng biến, biến đếm thuộc kiểu số nguyên, biến chứa giá trị tổng thuộc kiểu số thực Trước vào vòng lặp phải khởi tạo gán cho biến chứa tổng Xác định vòng lặp For… Thì phép tính cộng dồn sau phải s := s + i, thông báo kết phải dùng lệnh Write định dạng cho tổng s số thực Var i: integer; S: real; Begin Write(‘Nhap gia tri cua n=’); Readln(n); S := 0; For i := to n S := S + i Write(‘Tong cua day S = ’,S:8:2); Readln; End; Sau học sinh viết xong chương trình để kiểm tra độ thành thạo học sinh cách cho thêm ví dụ tương tự sau: 10 Tính tổng S = + 1/2 + 1/3 + 1/4 +…+ 1/n với n nhập chạy chương trình Lúc mức độ thành thạo học sinh việc khai báo biến, biến đếm thuộc kiểu nguyên, biến chứa tổng thuộc kiểu thực trước vào vòng lặp phải gán cho biến chứa giá trị tổng Vì toán tương tự tập làm Mức độ độc lập xây dựng chương trình học sinh viết lệnh cộng dồn sau Do S := S + 1/i; viết toàn chương trình Var i: integer; S: real; Begin Write(‘Nhap gia tri cua n=’); Readln(n); S := 0; For i := to n S := S + 1/i Write(‘Tong cua day S = ’,S:8:2); Readln End; Để kiểm tra độ thành thạo học sinh rèn kỹ nắm cấu trúc vòng lặp có số lần lặp không xác định giáo viên thêm số ví dụ nhỏ sau: Em cho biết chương trình sau in giá trị a 1) Program VonglapWhile; Var a: integer; Begin a := 13 While a SO[i] then NN := SO[i]; Writeln; Write('So nho nhat cac so la: ', NN); Readln; Writeln; Write('Cac so lai la:'); For i := to 10 If SO[i] > NN then Write(SO[i]:5); Khi chuyển sang phần c) mong muốn học sinh giỏi viết được, học sinh lúng túng giáo viên gợi ý: Thế số nguyên tố? Giáo viên thông báo: số nguyên tố ước số từ đến bậc hai nó, hay ước số từ đến -1 i := 0; Repeat i := i + 1; Write(‘Nhap so thu ’, i, ‘ =’); Readln(so); If so >= then Begin b := true; For u := trunc((sqrt(so)) If so mod u = then Begin b := false; break end; 12 end else Until i = 20; Write(‘Nhap lai ’); Trong phần c) hoc sinh làm từ (3) làm có gợi ý giáo viên (2’) Nếu học sinh làm mà cần có gợi ý giáo viên mức độ (2’) mức độ (1) phức hợp hoạt động, lại thấp mức đô (3) tính độc lập hoạt động, bậc (2) lại mức độ(3) phức hợp hoạt động Tóm lại: Phối hợp nhiều phương diện hoạt động để người giáo viên phải lưu ý đến dạng tập chuẩn bị tốt câu hỏi gợi ý học sinh để giải tốt vấn đề gặp phải 3.2 Hệ thống tập dạy câu lệnh rẽ nhánh cấu trúc lặp Bài 1: Viết chương trình cho máy nhận vào ba số Xét xem ba số có ba cạnh tam giác hay không? Nếu có ta giác tam giác gì? (Vuông, nhọn hay tù) Chương trình: Program Tamgiac; Uses Crt; Var a, b, c, tg: Real; Begin Clrscr; Writeln(‘Cho ba so a, b, c’); Readln(a); Readln(b); Readln(c); If (a < b + c) and (b < a + c) and (c < a + b) then Begin Writeln(‘Ba so vua nhap la ba canh cua mot tam giac’); If a > c then Begin tg := a; a :=c; c: = tg; End; If b > c then Begin tg := b; b := c; c := tg; End; a := a*a; b := b*b; c := c*c; If c < a + b then Writeln(‘Day la tam giac nhon’) Else Writeln(‘Day la tam giac vuong’) Else Writeln(‘Day la tam giac tu’); End Else Writeln(‘Day khong phai la ba canh cua mot tam giac’); Readln; End Bài 2: Viết chương trình nhập vào dãy số nguyên sau tính tổng số âm tính trung bình cộng số dương a) Dãy số có 10 phần tử b) Số phần tử dãy nhập từ bàn phím trước vào phần tử dãy 13 c) Số phần tử dãy xác trước vào phần tử dãy mà biết tron khoảng Nó hoàn toàn xác định người ta nhập vào dấu hiệu kết thúc dãy nhận số Chương trình: a) Program Tinh_tong; Uses Crt; Var i, a, sd, td, ta: Integer; Begin Clrscr; sd := 0; td := 0; ta := 0; for i := to 10 Begin Write(‘Nhap so thu: ’,i,‘=’); Readln(a); If a < then ta := ta + a Else Begin td := td + a; sd := sd + 1; End; End; Writeln(‘Tong cac so am la: ’, ta); Writeln(‘Trung binh cong cua cac so duong la: ’, (td/sd):8:2); readln; End b) Program TinhTong_va_TBCduong; Uses Crt; Var i, a, sd, td, ta: Integer; Begin Clrscr; sd := 0; td := 0; ta := 0; Write(‘Cho biet so phan tu cua day’); Readln(i); For i :=1 to i Begin Writeln(‘Nhap so thu: ’, i, ‘=’); Readln(a); If a < then ta := ta + a Else Begin td := td + a; sd := sd + 1; End; Writeln(‘Tong cac so am la: ’, ta); Writeln(‘Trung binh cong cua cac so duong la: ’, (td/sd):8:2); End; Readln; End c) Program Tinhtong_va_TBCduong; Uses Crt; Var i, a, sd, td, ta: Integer; Begin Clrscr; sd := 0; td := 0; ta := 0; i := 0; Repeat i := 1; 14 Write('Nhap so thu: ', i, '='); Readln(a); If a < then ta := ta + a Else Begin td := td + a; sd := sd +1; End; Until a = 0; Writeln('Tong cac so am la: ',ta); Writeln('Trung binh cong cua cac so duong la: ',(td/sd):8:2); Readln; End Bài Tính giá trị biểu thức P sau: a) P = + + + + b) P = + 15 + + 5n c) P = m + m 15 + + m 5n Với m số nguyên lớn Chương trình: a) Program Tinh_GTTB_P; Uses Crt; Var k: Integer; P:Real; Begin Clrscr; P := 0; For k := to P := Sqrt(k + P); Write('Gia tri cua bieu thuc P la: ',P:8:2); Readln; End b) Program Tinh_GTBT_P(n); Uses Crt; Var k,n: Integer; P:Real; Begin Clrscr; Repeat Write('Nhap gia tri cua n:'); Readln(n); Until n > 0; P := 0; For k := n downto P := Sqrt(5*k + P); Write('Gia tri cua bieu thuc P la: ',P:8:2); Readln; End c) Program Tinh_GTBT_P(m); Uses Crt; Var k,n,m: Integer; P:Real; Begin Clrscr; Repeat Write('Nhap gia tri cua n va m:'); 15 Readln(n, m); Until (n > 0) and (m > 1); P := 0; For k := n downto P := Exp(1/m*Ln(5*k + P)); Write('Gia tri cua bieu thuc P la: ',P:8:2); Readln; End Bài 4: a) Nhập vào m phần tử số nguyên dương in hình dãy vừa nhập b) Nhập vào m phần tử số nguyên dương, in hình phần tử số chia hết cho chia hết cho Tính tổng số chia hết cho c) Nhập vào m phần tử số nguyên lớn nhỏ 3000, in hình phần tử số chia hết cho chia hết cho 5.Tính tổng số chia hết cho Chương trình: a) Program Nhap; Uses Crt; Var i, m :Integer; So: Array[1 20] of Integer; Begin Clrscr; Write('Nhap vao bao nhieu phan tu la nguyen duong? '); Readln(m); i := 0; Repeat i := i + 1; Write('Nhap so thu ',i,' = '); Readln(So[i]); if So[i] SO[i] then NN := SO[i]; Writeln; Write('So nho nhat cac so la: ', NN); Readln; Writeln; Write('Cac so lai la:'); For i := to 10 If SO[i] > NN then Write(SO[i]:5); Readln; End d) Program IN_SNTO; Uses Crt; Var i,j:Integer;b:Boolean; SO:Array[1 20] of Integer; Begin Clrscr; i:=0; Repeat i:=i+1; Write('Nhap so thu ',i,' = '); Read(SO[i]); Until i = 20; Readln; Write('Cac so nguyen to cua day la: '); For i := to 20 If So[i] = then Write(So[i]: 4) Else If SO[i] > then Begin b := true; 18 for j := to trunc(sqrt(So[i])) If So[i] mod j = then Begin b:=false; break; If b then Write(SO[i]:4); end; Readln; End; End IV - KIỂM NGHIỆM Qua năm áp dụng đề tài để giảng dạy tin học trường THPT Ba Đình thân nhận thấy kết giảng dạy nâng lên hẳn cụ thể bảng đây: Năm học 2012 -2013: Năm chưa áp dựng đề tài: Lớp 11A 11B 11D 11G 11H 11K X.loại Giỏi 18 16 13 Khá 11 19 12 13 TB 22 13 16 13 14 10 Yếu Kém T.số HS 48 27 33 49 37 37 Năm học 2013 -2014 : Năm áp dụng đề tài Lớp 11A 11D 11G 11H 11K 11M X.loại Giỏi 17 22 10 23 13 Khá 31 24 36 24 22 26 TB 1 Yếu 1 Kém T.số HS 49 48 48 47 42 35 Năm học: 2014 -2015: Năm áp dụng đề tài Lớp 11A 11D 11G 11H 11K 11M X.loại Giỏi 34 24 15 26 14 Khá 10 30 21 29 28 TB 4 Yếu Kém T.số HS 44 43 45 44 35 44 11M 11N Tổng 11 12 13 18 13 95 87 114 36 38 305 11N 11P Tổng 11 25 23 39 37 128 194 18 345 11E Tổng 10 31 132 154 14 0 300 45 Qua bảng tổng hợp kết năm học mà dạy, phần minh chứng cho kết đề tài 19 PHẦN C – KẾT LUẬN: Ngôn ngữ lập trình nói chung đóng vai trò quan trọng việc xây dựng chương trình ứng dụng để phục vụ cho sống Nhờ phát triển tin học (trong nhà lập trình chuyên nghiệp) mà hầu hết lĩnh vực xã hội ứng dụng tin học để giải công viêc nhanh, hiệu xác Ngôn ngữ lập trình Pascal trở thành ngôn ngữ lập trình phổ biến giới sử dụng lĩnh vực giảng dạy Trong trình giảng dạy, người giáo viên biết thực tốt hoạt động dạy học mình, hướng dẫn khéo léo hoạt động học HS Trong tiết học, làm cho học sinh chủ động để tìm tòi lại kiến thức học qua giải vấn đề giáo viên đặt Trong trình giải vấn đề, giáo viên sai lầm mà học sinh mắc phải hiểu không rỏ vấn đề giúp cho em hiểu rỏ câu lệnh, kết giáo dục đạt được, làm cho học sinh yêu thích môn học, ham học hỏi tìm tòi sáng tạo Trên kinh nghiệm “Xây dựng hệ thống tập dạy câu lệnh rẽ nhánh cấu trúc lặp” cá nhân xuất phát từ việc giảng dạy thực tế, có nhiều hạn chế điều kiện thời gian Tôi mong đóng góp ý kiến đồng nghiệp để đề tài hoàn thiện Xin chân thành cảm ơn ! Nga Sơn, ngày 05 tháng 05 năm 2015 XÁC NHẬN CỦA ĐƠN VỊ Tôi xin cam đoan SKKN viết, không chép nội dung người khác Tác giả Trần Ngọc Chiến 20 ... để xây dựng hệ thống tập, hệ thống ví dụ hợp với dạy 2.2 Đối với giáo viên Bản thân giáo viên trực tiếp giảng dạy Tin học, mạnh dạn chọn đề tài: Xây dựng hệ thống tập dạy câu lệnh rẽ nhánh cấu. .. nội dung khó người dạy người học Một nội dung khó tập với Câu lệnh rẽ nhánh cấu trúc lặp chương trình Tin học 11 Mặt khác, biết xây dựng hệ thống tập cho việc điều khi n trình dạy học Vì giáo viên... phải lưu ý đến dạng tập chuẩn bị tốt câu hỏi gợi ý học sinh để giải tốt vấn đề gặp phải 3.2 Hệ thống tập dạy câu lệnh rẽ nhánh cấu trúc lặp Bài 1: Viết chương trình cho máy nhận vào ba số Xét xem

Ngày đăng: 01/11/2017, 14:37

Hình ảnh liên quan

Qua bảng tổng hợp kết quả của 3 năm học mà tôi đã dạy, đã phần nào minh chứng cho kết quả của đề tài. - SKKN XÂY DỰNG HỆ THỐNG BÀI TẬP KHI DẠY CÂU LỆNH RẼ NHÁNH VÀ CẤU TRÚC LẶP

ua.

bảng tổng hợp kết quả của 3 năm học mà tôi đã dạy, đã phần nào minh chứng cho kết quả của đề tài Xem tại trang 19 của tài liệu.

Từ khóa liên quan

Mục lục

  • Người thực hiện: Trần Ngọc Chiến

Tài liệu cùng người dùng

Tài liệu liên quan