NÂNG CAO HIỆU QUẢ dạy học câu LỆNH lặp với số lần BIẾT TRƯỚC TRONG CHƯƠNG TRÌNH TIN học 11 (cơ bản) BẰNG một số bài tập TIÊU BIỂU CHO học SINH TRƯỜNG THPT lê VIẾT tạo HUYỆN HOẰNG hóa - Pdf 44

MỤC LỤC
Trang
I. MỞ ĐẦU
1. Lý do 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
II. NỘI DUNG CỦA SÁNG KIẾN KINH NGHIỆM
1. Cơ sở lí luận của sáng kiến kinh nghiệm...........................................................2
2. Thực trạng của vấn đề nghiên cứu.....................................................................4
3. Các giải pháp.....................................................................................................5
4. Hiệu quả của sáng kiến kinh nghiệm...............................................................16
III. KẾT LUẬN, ĐỀ XUẤT
1. Kết luận...........................................................................................................18
2. Kiến nghị.........................................................................................................18
Tài liệu tham khảo...............................................................................................19


I. MỞ ĐẦU
1. Lý do chọn đề tài
Công nghệ thông tin là một nghành khoa học phát triển rất mạnh mẽ và có
nhiều ứng dụng trong hầu hết các lĩnh vực của cuộc sống. Môn Tin học mới
được đưa vào giảng dạy chính thức trong các trường học nên còn khá mới mẻ
với học sinh nói chung và học sinh THPT nói riêng.
Trong quá trình giảng dạy môn Tin học cho các em học về ngôn ngữ lập trình
cụ thể là ngôn ngữ lập trình Pascal, là một phần nội dung có thể nói là khó nhất
trong chương trình tin học THPT. Thực tế khi giảng dạy cho các em về câu lệnh
Lặp với số lần biết trước cụ thể là câu lệnh Lặp với số lần biết trước tôi thấy các
em còn gặp nhiều khó khăn trong việc xác định các câu lệnh (cú pháp câu lệnh,
hoạt động của câu lệnh) cần dùng để giải bài tập. Cấu trúc Lặp với số lần biết
trước là một cấu trúc quan trọng nhất trong các cấu trúc cơ bản của ngôn ngữ lập

4. Phương pháp nghiên cứu
Phương pháp nghiên cứu là chỉ ra hoạt động của các loại câu lệnh Lặp với số
lần biết trước thông qua các bài tập tiêu biểu. Đưa ra bài tập cho học sinh nghiên
cứu hướng dẫn cụ thể từng phần để làm bài tập đó. Lập trình giải bài toán trên
máy tính cho học sinh quan sát và thực hành chỉ ra những điểm quan trọng trong
bài lập trình. Học sinh ghi nhớ những câu lệnh đặc biệt là các câu lệnh Lặp với
số lần biết trước trong chương trình. Yêu cầu học sinh chỉ ra cú pháp, hoạt động
của các câu lệnh Lặp với số lần biết trước được sử dụng trong chương trình.
II. NỘI DUNG CỦA SÁNG KIẾN KINH NGHIỆM
1. Cơ sở lý luận của sáng kiến kinh nghiệm
1.1. Một số khái niệm
a. Khái niệm lập trình:
Lập trình (programming): Là nghệ thuật cài đặt một hoặc nhiều thuật toán
trừu tượng có liên quan với nhau bằng một ngôn ngữ lập trình để tạo ra một
chương trình máy tính.
b. Khái niệm ngôn ngữ lập trình:
Ngôn ngữ lập trình (programming language): Là một hệ thống các kí hiệu
tuân theo các quy ước về ngữ pháp và ngữ nghĩa, dùng để xây dựng các chương
trình cho máy tính.

Ngữ pháp (syntax): Quy ước về quan hệ giữa các ký hiệu. Ví dụ trong
ngôn ngữ Pascal: các ký hiệu Begin, end phải đi thành từng cặp, sau if sẽ là một
biểu thức điều kiện, sau đó là kí hiệu then.

Ngữ nghĩa (sematics): Quy ước về ý nghĩa của kí hiệu. Ví dụ trong
ngôn ngữ Pascal: dấu + biểu thị cho phép cộng, dấu - biểu thị cho dấu trừ …
Phát biểu if … then … có nghĩa là “nếu … thì làm …”.

Chương trình (program): Là một tập hợp các mô tả, các phát biểu, nằm
trong một hệ thống quy ước về ý nghĩa và thứ tự thực hiện, nhằm điều khiển

cuối
Đúng

Sai

Lệnh cần lặp
Biến đếm tăng 1

Hoạt động:

Bước 1: Tính giá trị đầu, gán cho biến đếm.
Bước 2: - Nếu biến đếm giá trị cuối thì thoát khỏi vòng lặp và
chuyển đến câu lệnh tiếp theo.

4


b. Sơ đồ khối của câu lệnh Lặp với số lần biết trước dạng lùi:
Biến đếm:=Giá trị cuối
Sai
Biến đếm < Giá trị đầu
Đúng
Lệnh cần lặp
Giảm biến đếm đi 1

Hoạt động:

Bước 1: Tính giá trị cuối, gán cho biến đếm.

việc tiếp thu kiến thức còn hạn chế. Đối với câu lệnh Lặp với số lần biết trước là
một cấu trúc khó và rất cần thiết khi giải bài tập pascal nhưng khả năng tiếp thu
của học sinh còn thấp còn gặp nhiều khó khăn khi làm các bài tập về câu lệnh
Lặp với số lần biết trước. Các em không có điều kiện được thực hành viết
chương trình nên việc các em hiểu được và làm được các bài tập về ngôn ngữ
lập trình Pascal nói chung và bài tập có sử dụng cấu trúc Lặp với số lần biết
trước là rất khó khăn.
3. Các giải pháp nâng cao hiệu quả dạy học câu lệnh Lặp với số lần biết
trước trong chương trình Tin học lớp 11 bằng một số bài tập tiêu biểu.
3.1. Dạy học hoạt động câu lệnh Lặp với số lần biết trước thông qua một số
bài tập tiêu biểu.
Đưa ra một số bài tập tiêu biểu có sử dụng cấu trúc Lặp với số lần biết trước
để học sinh thảo luận và viết câu lệnh, nêu hoạt động, viết chương trình qua đó
giúp các em nắm vững kiến thức về cấu trúc Lặp với số lần biết trước và vận
dụng nó linh hoạt, khoa học trong các chương trình.
Cũng cố kiến thức lập trình nói chung và cấu trúc Lặp với số lần biết trước
nói riêng. Qua đó tạo hứng thú trong học tập cho học sinh đối với ngôn ngữ lập
trình Pascal.
Hình thành ở học sinh kỹ năng phân tích, xử lý các vấn đề áp dụng các kiến
thức liên quan về cấu trúc Lặp với số lần biết trước trong quá trình lập trình các
chương trình sau này.
Ở trong khuôn khổ này tôi chỉ trình bày nội dung thực hành ứng với thực tế ở
trường THPT Lê Viết Tạo.
3.2. Một số bài tập về câu lệnh Lặp với số lần biết trước:
Bài 1: Hãy cho biết giá trị của biến S là bao nhiêu sau đoạn chương trình sa:

S:=0;
For i:= 1 to 10 do s:=s+1:

Để làm được bài này học sinh phải nắm được cú pháp và hoạt động của câu lệnh

tiệp theo.
Trường hợp 2: có thể sử dụng câu lệnh Lặp với số lần biết trước dạng lùi để tính
giá trị s.

S:=0;
For i:=100 to 1 do S:=S+i;

- Cho học sinh tự nêu hoạt động của vòng lặp này và cả lớp nhận xét về kết quả
thực hiện của máy.
Bài 3: Viết chương trình tính S =1+1/2 +1/3+ … +1/100;
- Học sinh dựa vào cách làm bài 2 để thực hiện viết chương trình cho bài 3.
7


- Đoạn chương trình tính S.

S:=0;
For i:=1 to 100 do s:=s+1/i;

Bài 4: Viết chương trình tính s=n! với 1
ghi nhớ)
+ Vậy tới giáo viên hướng dẫn cho học sinh chuyển sang câu lệnh tương
ứng trong pascal.
Chương trình:
Program sap_xep;
Var

A:array[1..300] of integer;
i, j, tg,n: integer;

BEGIN
Writeln(‘nhap vao so luong phan tu n=’); readln(n);
Writeln(‘nhap vao cac phan tu’);
For i:=1 to n do
Begin
Write(‘nhap phan tu thu:’,i); readln(a[i]);
End;
{đoạn chương trình sắp xếp dãy số tăng dần}
For i:=1 to n-1 do
For j:=i+1 ton n do
If a[i]>a[j] then
Begin

tg:=a[i]; a[i]:=a[j]; a[j]:=tg; end;

{đoạn chương trình in dãy số sau khi sắp xếp}
For i:=1 to n do

write(a[i]:5);


Readln(n);
F1:=1; F2:=1;
For i:=2 to n do
Begin
Fn:=F1+F2;
F1:=F2;
F2:=Fn;
End;
Wtiteln(‘gia tri so Fibonaci thu n la:’, Fn);
Readln;
END.

10


- Học sinh có thể thắc mắc tại sao trong lại sử dụng 3 câu lệnh Fn:=F1+F2;
F1:=F2; F2:=Fn; giáo viên có thể giải thích qua chương trình hoặc ví dụ minh
họa để học sinh hiểu.
Bài 8: Cho mảng A gồm n phần tử. Viết chương trình tạo mảng B gồm n
phần tử trong đó B[i] là tổng giá trị của i phần tử đầu tiên của mảng A.
- Hướng dẫn:
Chương trình này có nhiều cách để làm học sinh có thể lựa chọn cách nào
mình thấy phù hợp và dể hiểu nhất
Chương trình:(Cách 1)
Program tinh;
Uses crt;
Const nmax=250;
Type myarray=array[1..nmax] of integer;
Var i,n,j:integer;
a,b: myarray;

BEGIN
Clrscr;
Randomize;
Write(‘Nhập n=’); readln(n);
For i:=1 to n do
a[i]:=random(300)-random(300);
For i:=1 to n do
Write (a[i]:5);
Writeln ;
b[1]:=a[1];
For i:=2 to n do
b[i]:=b[i-1]+a[i];
For i:=1 to n do
Write(a[i]:7);
Writeln ;
Readln;
END.
- Nhận xét: trong hai cách trên thì ở cách 2 thời gian thực hiện chương trình
sẽ nhanh hơn cách 1. vì vậy khi viết chương trình thì học sinh cần lưu ý tới một
yếu tố là thời gian thực hiện của chương trình. Điều này đặc biệt quan trọng với
những bài toán mà dữ liệu lớn nếu với những bài toán với dữ liệu lớn mà ta
không lựa chọn cách phù hợp thì chương trình có thể thực hiện rất lâu và có thể
sảy ra tình trạng máy tình bị “treo”, “đơ” như ta đã từng gặp.

12


Bài 9: Viết chương trình nhập từ bàn phím số nguyên dương N (N ≤ 100)
và dãy A gồm N số nguyên A 1, A2, ... , AN có giá trị tuyệt đối không lớn hơn
1000. Hãy cho biết dãy A có phải là cấp số cộng hay không và thông báo kết quả

giáo viên hướng dẫn và tổng hợp lại viết chương trình lại như sau:
13


Program cap_so_cong2;
Uses Crt;
Var A:Array[1..100] of Integer;
N,i,d,dem:Integer;
F:Boolean;
BEGIN
Clrscr;
Write('Nhap so phan tu cua day A(1


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status