1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phương pháp giúp học sinh lớp 11 hiểu, phân biệt được lặp với số lần biết trước và chưa biết trước với câu lệnh FOR – DO VÀ WHILE – DO

12 2,8K 18

Đ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

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 65,5 KB

Nội dung

- Hiện nay trong lí luận dạy học nói chung và lí luận dạy học môn Tin học nói riêng yêu cầu sử dụng khá nhiều phương pháp: phương pháp thảo luận, phương pháp đặt câu hỏi, phương pháp

Trang 1

A PHẦN MỞ ĐẦU

I LÍ DO CHỌN ĐỀ TÀI.

- Hiện nay trong lí luận dạy học nói chung và lí luận dạy học môn Tin học nói riêng yêu cầu sử dụng khá nhiều phương pháp: phương pháp thảo luận,

phương pháp đặt câu hỏi, phương pháp chia nhóm …

- Các cách thiết kế bài giảng hiện nay nhằm mục đích áp dụng phương pháp hiện đại để bồi dưỡng cho học sinh năng lực ham muốn học hỏi, tư duy sáng tạo, năng lực tự giải quyết vấn đề, rèn luyện và phát triển năng lực tự học sáng tạo, nghiên cứu, nghĩ và làm việc một cách tư duy tự chủ… Đồng thời để thích ứng với sự phát triển tư duy của học sinh trong xã hội mới và tiếp cận với các công nghệ tiên tiến trong xã hội, trên thế giới Bên cạnh đó, trong các

kỹ thuật dạy học mới, vai trò của giáo viên có sự thay đổi là: “hướng dẫn học sinh biết tự mình tìm ra hướng giải quyết những vấn đề nảy sinh trong quá trình học tập, biết cách làm việc độc lập, làm việc tập thể Giáo viên là người định hướng, là người cố vấn giúp học sinh tự đánh giá, cũng như giúp học sinh luôn đi đúng con đường tìm hiểu, lĩnh hội kiến thức…”

- Xuất phát từ thực tiễn giảng dạy tại trường THPT Đông Sơn 2 tôi thấy rằng,

để đạt hiệu quả cao trong mỗi phần học, tiết học cần có cách thiết kế bài giảng cho phù hợp với nội dung kiến thức; phương pháp, phương tiện dạy học phải phù hợp với từng đối tượng học sinh Để qua mỗi phần học, tiết học, học sinh thích thú với kiến thức mới, qua đó hiểu được kiến thức đã học trên lớp, đồng thời học sinh thấy được tầm quan trọng của vấn đề và việc ứng dụng của kiến thức trước hết để đáp ứng những yêu cầu của môn học, sau đó là việc ứng dụng của nó vào các công việc thực tiễn trong đời sống xã hội (nếu có)

Trong thời đại thông tin bùng nổ ngày nay, việc lập được các chương trình tự hoạt động cho máy tính, máy gia dụng là cần thiết Và để làm được việc đó cần có một quá trình nghiên cứu, học tập về ngôn ngữ lập trình lâu dài, qua đó nhà lập trình có thể chọn một ngôn ngữ lập trình thích hợp Tuy nhiên mọi thứ

Trang 2

điều có điểm khởi đầu của nó, với học sinh việc học Pascal là khởi đầu cho việc tiếp cận ngôn ngữ lập trình bậc cao, qua đó giúp các em hình dung được

sự ra đời, cấu tạo, hoạt động cũng như ích lợi của các chương trình hoạt động trong máy tính, các máy tự động…Quá đó giúp các em có thêm một định hướng, một niềm đam mê về tin học, về nghề nghiệp mà các em chọn sau này Đồng thời Pascal là một ngôn ngữ có cấu trúc thể hiện trên 3 yếu tố: Cấu trúc

về mặt dữ liệu, cấu trúc về mặt lệnh, cấu trúc về mặt chương trình

Vậy thì chúng ta phải làm như thế nào để sau khi kết thúc lớp 11 thì các

em có thể nắm và hiểu được như thế nào là ngôn ngữ lập trình, cụ thể là ngôn ngữ lập trình Pascal mà ta đã nói ở trên

Trong chương trình tin học 11 có những vấn đề hay những bài đã làm cho người thầy không biết bắt đầu làm sao cho học sinh hiểu được và hình dung được bài học

Xuất phát từ cơ sở trên, tôi đã chọn đề tài “PHƯƠNG PHÁP GIÚP HỌC SINH LỚP 11 HIỂU, PHÂN BIỆT ĐƯỢC LẶP VỚI SỐ LẦN BIẾT TRƯỚC

VÀ CHƯA BIẾT TRƯỚC VỚI CÂU LỆNH “FOR – DO VÀ WHILE – DO”

II MỤC ĐÍCH CỦA SÁNG KIẾN KINH NGHIỆM.

Sử dụng các ví dụ minh họa cụ thể để học sinh hiểu như thế nào gọi là ‘lặp’

và như thế nào là ‘lặp với số lần biết trước và lặp với số lần chưa biết trước’, tiếp theo đó là học sinh nắm được cú pháp, ý nghĩa của cấu trúc lặp Và thông qua các ví dụ đó hướng dẩn học sinh chuyển đổi qua lại giữa hai cấu trúc lặp để học sinh phân biệt, nắm vững về hai cấu trúc lặp

III NHIỆM VỤ CỦA SÁNG KIẾN KINH NGHIỆM

Đưa ra vấn đề mục 3, bài 10, tin học 11, để học sinh thảo luận qua đó nắm vững câu lệnh lặp với số lần biết trước và chưa biết trước Và hình thành ở học sinh kĩ năng phân tích, xử lý các vấn đề liên quan đến vòng lặp trong quá trình lập trình các chương trình đơn giản sau này

IV PHƯƠNG PHÁP NGHIÊN CỨU.

Trang 3

- Kết hợp thực tiễn giáo dục ở trường THPT ĐÔNG SƠN 2

- Có tham khảo các tài liệu về ngôn ngữ lập trình Pascal và tài liệu về sáng kiến kinh nghiệm

B NỘI DUNG I.CƠ SỞ LÍ LUẬN.

Khi học sinh học bài học Bài 10 “CẤU TRÚC LẶP” Học sinh đã có rất nhiều khó khăn, nhầm lẫn trong việc xác định vòng lặp và xác định điều kiện dừng của vòng lặp

II NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU.

1 Nội dung

Trong tiết học này tôi đã trình chiếu cho các em xem một vi dụ minh họa như sau:

- Giáo viên sẽ đặt câu hỏi như sau:

Bình này chứa tối đa là 50 lít

1 lít

Hình 1

Ca

Trang 4

Các em quan sát hình 1 và cho biết phải đổ bao nhiêu lần thì bình sẽ được đổ đầy nước và công việc gì được làm đi làm lại nhiều lần

+ Học sinh sẽ trả lời được ngay là số lần thực hiện là 50 lần và công việc được làm đi làm là công việc đổ nước vào bình

- Tiếp theo cho các em xem hình thứ 2 như sau:

Giáo viên đặt câu hỏi như sau:

+ Các em có biết được số lần thực hiện công việc đổ nước không ?

+ Đổ khi nào thì dừng việc đổ nước?

- Từ hai câu hỏi trên thì các em sẽ trả lời được là: chưa biết được số lần đổ và thực hiện công việc đổ nước cho đến khi bình đầy thì dừng việc đổ nước lại

=> Từ hai hình ảnh ở trên chúng ta có thể giúp cho các em hiểu và biết được như thế nào là lặp và phân biết được lặp với số lần biết trước và lặp với số lần chưa biết trước

Bình này chứa tối đa là 50 lít

? lít

Hình 2

Ca

Trang 5

- Sau khi các em đã biết được như thế nào là lặp và phân biệt được hai dạng lặp

- Tiếp theo đó đưa 2 bài toán trong sách giáo khoa làm ví dụ như sau:

Với a là số nguyên được nhập từ bàn phím và a > 2, xét các bài toán sau đây:

Bài 1 Tính và đưa kết quả ra màn hình tổng

1 1 1 1

S

Bài 2 Tính và đưa kết quả ra màn hình tổng

1 1 1 1

S

Cho đến khi 1 0,0001

Giáo viên đưa ra các câu hỏi sau:

Câu 1 Bài 1 đã xác định được lần lặp chưa?

Học sinh trả lời là: đã xác định được lần lặp, cụ thể cộng dồn đến a+100

Câu 2 Em hãy viết câu lệnh lặp để tính tổng S ở bài 1?

Học sinh viết:

S:=1/a;

for i:=1 to 100 do

S:=S+1/(a+i);

Câu 3 Bài 2 đã xác định được lần lặp chưa?

Học sinh trả lời là: chưa xác định được lần lặp, vì với a được nhập từ bàn phím thì: 1/(a+N) < 0.0001 không xác định được cụ thể N bằng bao nhiêu

Câu 4 Em hãy viết câu lệnh lặp để tính tổng S ở bài 2?

Học sinh viết:

S:=1/a;

N:=1;

While 1/(a+N) < 0.0001 do

Begin

Trang 6

N:=N+1;

End;

Giáo viên cho học sinh hoàn chỉnh chương trình dựa trên hai vòng lặp đã có ở trên để giải 2 bài toán trên (sau đó Giáo viên đi kiểm tra)

Câu 5 Em hãy cho biết sự tương đồng của hai bài toán trên:

Học sinh trả lời:

Xuất phát, S được gán giá trị: 1/a;

Tiếp theo, cộng dồn vào S một giá trị: 1/(a+N), với N tăng từ 1,2,3…

Câu 6 Hai bài toán trên khác nhau ở điểm nào?

Học sinh trả lời:

Bài toán 1 đã biết số lần lặp cụ thể, bài toán 2 chưa xác định được lần lặp cụ thể

Câu 7 Có thể dùng câu lệnh while…do để viết vòng lặp tính tổng S ở bài 1

được không?

Và có thể dùng câu lệnh for…do để viết vòng lặp tính tổng S ở bài 2 được

không?

Học sinh trả lơi:

Việc dùng câu lệnh lặp while…do để thực hiện vòng lặp cho câu lệnh for…do là có thể làm được, nhưng việc dùng câu lệnh for…do để thực hiện vòng lặp cho câu lệnh while…do là không được vì:

+ Câu lệnh for…do sau khi thực hiện câu lệnh sau do thì biến đếm tự động tăng lên 1, trong câu lệnh while…do ta có thể thực hiện lệnh tăng

biến_đếm lên 1 bằng cách thực hiện câu lệnh gán biến_đếm:=biến_đếm+1

+ Câu lệnh for…do kết thúc khi biến_đếm > Giá_trị_cuối, trong câu lệnh while…do ta có thể đưa điều kiện biến_đếm>Giá_trị_cuối vào trong điều kiện kiểm tra vòng lặp while…do, cụ thể bài 1 ta có thể thực hiện như

sau:

Trang 7

N:=1;

While N <= 100 do

Begin

S:=S+1/(a+N);

N:=N+1;

End;

+ Câu lệnh while…do thực hiện câu lệnh khi điều_kiện còn đúng, nên

ta không xác định được đến vòng lặp thứ bao nhiêu để điều_kiên sai vì thế ta không thể dùng vòng lặp for…do để thực hiện tính tổng S cho bài 2.

* MỘT SỐ VÍ DỤ CHO HỌC SINH THAM KHẢO THÊM

- VÍ DỤ 1:

Program chuongtrinh;

Uses crt;

Var a,b byte;

Begin

Clrscr;

a:=1;

b=7;

c:=0;

while a<b do

begin

c:=c+a;

a:=a+1;

end;

Writeln(‘c=’ ,c:6);

Readln

End;

Trang 8

a Hãy sửa lỗi sai của chương trình trên ?

b Kết quả của chương trình trên là bao nhiêu ?

- Sau khi học sinh trả lời thì ta cho học sinh xem kết quả để so sánh và phân tích

a) Sửa:

Program chuongtrinh;

Uses crt;

Var a,b : byte;

Begin

Clrscr;

a:=1;

b:=7;

c:=0;

while a<b do

begin

c:=c+a;

a:=a+1;

end;

Writeln(‘c=’,c:6);

Readln;

End

b) Giáo viên chạy chương trình cho học sinh xem kết quả và giải thích từ câu lệnh

- VÍ DỤ 2:

Hãy viết lại đoạn chương trình sau bằng cách sử dụng câu lệnh lặp For-do? S:=0; i:=1;

Trang 9

While i < = 20 do

Begin

S:= S+1;

i:= i+1;

End;

writeln(‘tong S =’, S:8);

- Học sinh lên bảng làm sau đó đối chiếu kết quả

S:=0;

For i:= 1 to 20 do

S:= S+i;

writeln(‘tong S =’, S:8);

- VÍ DỤ 3:

Hãy viết lại đoạn chương trình sau bằng cách sử dụng câu lệnh lặp While-do? S:=0;

For i:= 1 to 50 do

S:= S+i;

Writeln(‘tong S =’, S:8);

- Học sinh lên bảng làm sau đó đối chiếu kết quả

S:=0; i:=1;

While i < 50 do

Begin

S:= S+1;

i:= i+1;

End;

writeln(‘tong S =’, S:8);

2 Giải quyết vấn đề.

Trong quá trình thảo luận để giải thích, chứng minh vấn đề “khả năng chuyển đổi qua lại giữa hai câu lệnh lặp” bắt buộc học sinh phải nắm vững cú pháp,

Trang 10

cũng như ý nghĩa của hai câu lệnh trên Dẫn đến việc các em thấy được sự giống và khác nhau của hai câu lệnh một cách rõ ràng hơn

3 Kết quả thu được.

Trong quá trình trao đổi, thảo luận, trình bày học sinh được thể hiện khả năng vận dụng, hiểu biết của mình nên các em tỏ ra hăng hái trong việc giơ tay phát biểu tranh luận Đồng thời tiết học trở nên sinh động hơn và giáo viên không đóng vai trò là người xây dựng lý luận mà học sinh là người chủ động để giải quyết các vấn đề

C KẾT LUẬN

Ngôn ngữ lập trình nói chung đóng vai trò rất quan trọng trong việc xây dựng các chương trình ứng dụng để phục vụ cho cuộc sống Nhờ sự phát triển của tin học - trong đó các nhà lập trình chuyên nghiệp đóng vai trò không nhỏ -

mà hiện nay hầu hết các lĩnh vực trong xã hội đã ứng dụng được tin học để giải quyết công viêc nhanh, hiệu quả và chính xác hơn

Hiện nay, ngôn ngữ lập trình Pascal đã trở thành ngôn ngữ lập trình phổ biến nhất trên thế giới sử dụng trong lĩnh vực giảng dạy Trong quá trình giảng dạy các thầy cô có thể đưa ra các vấn đề như lập trình các game nhỏ…để các em

có thể chứng tỏ được khả năng của mình làm cho học sinh yêu thích môn học, ham học hỏi và sáng tạo

Đề tài này mang tính thực tiễn rất cao cụ thể là: Trong tiết học các em học sinh đã chủ động để tìm tòi lại kiến thức đã học qua đó giải quyết được vấn đề

do giáo viên đặt ra Trong quá trình giải quyết vấn đề, giáo viên chỉ ra những sai lầm mà các em học sinh mắc phải do hiểu không rỏ vấn đề giúp cho các

em hiểu rõ hơn về câu lệnh

Kết quả là có rất nhiều em đã dễ dàng vận dụng được câu lệnh lặp để giải các vấn bài toán lặp do giáo viên đặt ra

D TÀI LIỆU THAM KHẢO

1 Sách giáo khoa tin học 11 Hồ Sĩ Đàm chủ biên

Trang 11

2 Sách giáo viên tin học 11 Hồ Sĩ Đàm chủ biên

3 Lý thuyết và Bài tập lập trình Pascal 5.5-6.0 Nguyễn Thị Kiều Duyên

4 Lý thuyết và Bài tập lập trình Pascal – Quách Tuấn Ngọc

5 Một số sáng kiến kinh nghiệm và ý kiến của đồng nghiệp

MỤC LỤC Phần A: MỞ ĐẦU Trang 1

I Lý do chọn đề tài Trang 1

II MỤC ĐÍCH CỦA SÁNG KIẾN KINH NGHIỆM Trang 2

III NHIỆM VỤ CỦA SÁNG KIẾN KINH NGHIỆM Trang 2

IV PHƯƠNG PHÁP NGHIÊN CỨU Trang 2

Phần B: NỘI DUNG Trang 2

I.CƠ SỞ LÍ LUẬN……… Trang 2

II NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU…… Trang 2

1 Nội dung……… …Trang 2

2 Giải quyết vấn đề……… … Trang 7

3 Kết quả thu được……… … Trang 7

Phần C : KẾT LUẬN Trang 7

Ngày đăng: 21/03/2015, 10:02

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w