Tải bản đầy đủ (.pdf) (18 trang)

Skkn đổi mới phương pháp dạy học bài ví dụ làm việc với tệp tin học lớp 11 nhằm nâng cao hiệu quả tiết dạy

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (193.99 KB, 18 trang )

SỞ GIÁO DỤC VÀ ĐÀO TẠO THANH HOÁ
SỞ GIÁO DỤC VÀ ĐÀO TẠO THANH HOÁ

TRƯỜNG THPT THPT HẬU LỘC IV
TRƯỜNG THPT THPT HẬU LỘC IV

SÁNG KIẾN KINH NGHIỆM
SÁNG KIẾN KINH NGHIỆM

TÊN ĐỀ TÀI
ĐỔI MỚI PHƯƠNG PHÁP DẠY HỌC BÀI “VÍ DỤ LÀM
VIỆC VỚI TỆP” – TIN HỌC LỚP 11 NHẰM NÂNG CAO
HIỆU QUẢ TIẾT DẠY

Người thực hiện: Lê Thị Hoa
Chức vụ: Giáo viên
SKKN
TinHoa
học
Ngườithuộc
thực lĩnh
hiện:vực
Lê: Thị
Chức vụ: Giáo viên
SKKN thuộc lĩnh vực : Tin học

THANH HOÁ NĂM 2020

skkn



2

skkn


MỤC LỤC
1. Mở đầu......................................................................................................2
1.1. Lí do chọn đề tài....................................................................................2
1.2. Mục đích nghiên cứu.............................................................................2
1.3. Đối tượng nghiên cứu............................................................................2
1.4. Phương pháp nghiên cứu.......................................................................2
1.5. Những điểm mới của SKKN..................................................................2
2. Nội dung sáng kiến kinh nghiệm..............................................................4
2.1. Cơ sở lí luận của sáng kiến kinh nghiệm...............................................4
2.2. Thực trạng vấn đề trước khi áp dụng sáng kiến kinh nghiệm...............4
2.3. Các sáng kiến kinh nghiệm đã sử dụng để giải quyết vấn đề................4
2.4. Hiệu quả của sáng kiến kinh nghiệm đối với hoạt động giáo dục,
với bản thân, đồng nghiệp và nhà trường...................................................13
3. Kết luận, kiến nghị..................................................................................14
3.1. Kết luận................................................................................................14
3.2. Kiến nghị.............................................................................................14
TÀI LIỆU THAM KHẢO..........................................................................16

3

skkn


1. MỞ ĐẦU
1.1. Lý do chọn đề tài

Thực tế chúng ta thấy rằng kiểu dữ liệu của ngôn ngữ lập trình nói chung và ngơn
ngữ Pascal nói riêng là khơng thể thiếu trong các đề thi học sinh giỏi các cấp. Vì vậy,
quá trình tham gia giảng dạy Tin học khối 11 tôi rất ấn tượng với “Kiểu dữ liệu tệp”.
Để HS hiểu sâu hơn về bản chất làm việc của Kiểu dữ liệu tệp trong máy tính và gây
hứng thú cho HS khi học về phần này cũng như là bước đầu cho việc lập trình các bài
tốn liên quan đến kiểu dữ liệu này; đặc biệt là đối tượng ôn thi HSG cấp tỉnh môn
Tin học lớp 11. Tôi nhận thấy việc cho HS khối 11 thực hành về kiểu dữ liệu tệp
trong nhà trường là rất cần thiết, tuy nhiên Phân phối chương trình cũ của Bộ GD –
ĐT khơng hề có tiết thực hành cho phần này. Việc học sinh tìm hiểu về tất cả các
thao tác với tệp chỉ vẻn vẹn trong 1 tiết và 1 tiết bài tập, sau đó chuyển sang chương
mới khơng hề gặp lại kiểu dữ liệu tệp. Chính vì vậy, HS còn khá nhiều lúng túng bởi
thời gian học phần này của lớp 11 q ít mà cịn nhiều vấn đề khi thực hành nên các
em nắm kiến thức chưa vững và chưa sâu. Đặc biệt là 100% các đề thi HSG cấp tỉnh
môn Tin học liên quan đến kiểu dữ liệu này và sử dụng kiểu dữ liệu này một cách
thuần thục nên GV dạy đội tuyển phải mất một khoảng thời gian nhất định ôn tập lại
cho HS về phần này.
1.2. Mục đích nghiên cứu
Với mong muốn phần nào giúp học sinh trong việc làm tốt các bài tập cũng như
thực hành thành thạo các bài toán liên quan tới kiểu dữ liệu tệp; nhất là giúp cho các
em học sinh có thể u thích nhiều hơn nữa môn Tin học và các em tham gia vào đội
tuyển thi HSG tỉnh mơn Tin học có thêm một chút kiến thức về phần này. Tôi xin
giới thiệu chuyên đề “Đổi mới phương pháp dạy học bài Ví dụ làm việc với tệp Tin học lớp 11 nhằm nâng cao hiệu quả tiết dạy ” mà tôi đã áp dụng có hiệu quả
trong q trình giảng dạy. Chun đề được trình bày dựa trên kinh nghiệm giảng dạy
của bản thân và tham khảo một số tài liệu liên quan.
1.3. Đối tượng nghiên cứu
- Đối tượng khảo sát: Học sinh khối 11 của lớp: 11A4, 11A5, 11A6 và học sinh
đội tuyển tỉnh.
1.4. Phương pháp nghiên cứu
- Hình thành được kỹ năng vận dụng lí thuyết chính xác, linh hoạt về Kiểu dữ liệu
tệp trong Tin học lớp 11 để giải các bài tập cho học sinh và kết hợp thực hành luôn

ngay sau khi làm bài tập.
- Phạm vi thực hiện trên các bài toán về kiểu dữ liệu tệp của Tin học lớp 11.
1.5. Những điểm mới của đề tài
- HS sau khi được giới thiệu một cách hệ thống lí thuyết cũng như các dạng bài
tập về Kiểu dữ liệu tệp và quy trình giải quyết từng dạng đã có thể nhận biết u cầu
của bài tốn, cách thức giải quyết chúng và thực hành một cách thành thục, hiệu quả.

4

skkn


- Hình thành ở HS kỹ năng phân tích, xử lý các vấn đề liên quan đến bài tập về
Kiểu dữ liệu tệp, bước đầu làm quen với 1 số chương trình thuận lợi cho việc tiếp thu
kiến thức về cách viết chương trình và bồi dưỡng HS giỏi tỉnh..

5

skkn


2. NỘI DUNG
2.1. Cơ sở lí luận :
Ngày nay, trên thế giới đang diễn ra q trình tin học hố trên nhiều lĩnh vực
hoạt động của xã hội loài người và đem lại nhiều hiệu quả to lớn. Việc sử dụng máy
tính khơng cịn chỉ bó hẹp trong viện nghiên cứu, các trường đại học, các trung tâm
máy tính mà cịn mở rộng ra mọi cơ quan, tổ chức kinh tế... và trong các gia đình.
Song song với quá trình trên, việc giảng dạy Tin học trong các trường THPT cũng
được đẩy mạnh đi đôi với việc tăng cường trang bị máy vi tính. Đảng và Nhà nước ta
đã nhận thấy được tầm quan trọng của ngành Tin học và đã đưa môn học này vào

trường phổ thông như những môn học khác bắt đầu từ năm học 2006-2007.
Trong bối cảnh toàn ngành GD - ĐT đang nỗ lực đổi mới phương pháp dạy
học theo hướng phát huy tính tích cực chủ động của học sinh trong hoạt động học
tập. Điều 24.2 của Luật giáo dục đã nêu rõ: “Phương pháp giáo dục phổ thơng phải
phát huy tính tích cực, tự giác, chủ động, sáng tạo của học sinh, phù hợp với đặc
điểm của từng lớp học, môn học; bồi dưỡng phương pháp tự học, rèn luyện kỹ năng
vận dụng kiến thức vào thực tiễn, tác động đến tình cảm, đem lại niềm vui, hứng thú
học tập cho học sinh ”. Như vậy, chúng ta có thể thấy định hướng đổi mới phương
pháp dạy học đã được khẳng định, khơng cịn là vấn đề tranh luận. Cốt lõi của việc
đổi mới phương pháp dạy học ở trường phổ thông là giúp học sinh hướng tới việc
học tập chủ động, chống lại thói quen học tập thụ động. Với một số nội dung trong đề
tài này, HS có thể tự học, tự rèn luyện thông qua một số bài tập, dạng bài tập cụ thể.
2.2. Thực trạng của vấn đề trước khi áp dụng sáng kiến kinh nghiệm
- Qua thực tế giảng dạy ở trường THPT Hậu Lộc 4 nhiều năm, tôi nhận thấy
khi học đến chương trình Tin học lớp 11 đa số học sinh đều cho rằng đây là môn học
khó nhất trong các mơn học. Nhiều em học tốt các môn tự nhiên nhưng vẫn sợ môn
học này và còn khá nhiều bỡ ngỡ khi tiếp cận với kiểu dữ liệu mới như Kiểu dữ liệu
tệp trong Tin học lớp 11. Chính vì vậy, học sinh thường gặp nhiều khó khăn khi thực
hiện viết chương trình và đặc biệt là thực hành ở phần này. Từ đó dẫn đến các em
khơng biết xử lí thế nào và bắt đầu từ đâu khi gặp các bài toán phức tạp liên quan đến
Kiểu dữ liệu tệp. Đặc biệt hơn nữa là những lớp 11 học ban cơ bản và ban xã hội của
trường THPT Hậu Lộc 4 chúng tôi – một trường thuộc khu vực bãi ngang ven biển
học sinh không được chịu khó lắm khi gặp các bộ mơn khó và cần tư duy logic nhiều
như môn Tin học lớp 11 của Bộ GD – ĐT.
2.3. Các sáng kiến kinh nghiệm đã sử dụng để giải quyết vấn đề
- Với Kiểu dữ liệu tệp ở pascal lớp 11 giáo viên có thể tạo sự hứng thú cho học
sinh bằng các bài tập cụ thể, kèm theo là chương trình có sẵn trên máy tính của GV
chiếu cho các em xem cách thực hiện 1 chương trình. Qua đó các em có thể giải các
bài tốn trong thực tế, bước đầu viết được một số chương trình và biết cách tự thực
hành về Kiểu dữ liệu tệp này.

- Do đặc trưng của bộ môn nên học sinh muốn học được tốt mơn Tin học cần có
được tư duy khái qt xác định được hết các khả năng của một vấn đề.
6

skkn


- Phát triển nhân cách học sinh khi tham gia làm các bài tập về Kiểu dữ liệu tệp có
thể rèn luyện tính tích cực, chủ động, sáng tạo trong việc chọn hướng giải quyết một
vấn đề cụ thể thông qua việc liệt kê các khả năng của nó.
Cụ thể tôi xin đưa ra một số vấn đề mà giáo viên cần truyền đạt kỹ cho học sinh
lớp 11 trong tiết dạy “Bài 16. Ví dụ làm việc với tệp” để các em xâu chuỗi vấn đề
một cách tốt nhất, hỗ trợ cho việc viết chương trình được hồn thiện hơn như sau:
I.
Kiểm tra bài cũ:
Câu hỏi: Em hãy nêu trình tự các thao tác làm việc với tệp?
HS trả lời:
- Gắn tên tệp:
Assign(<biến tệp>,<tên tệp>);
- Mở tệp:
+ Mở tệp để đọc: Reset(<biến tệp>);
+ Mở tệp để ghi: Rewrite(<biến tệp>);
- Đọc/ghi dữ liệu:
+ Đọc dữ liệu: Read(biến tệp>,<danh sách biến>);
Hoặc
Readln(biến tệp>,<danh sách biến>);
+ Ghi dữ liệu: write(<biến tệp>,<danh sách kết quả>);
Hoặc
writeln(<biến tệp>,<danh sách kết quả>);
- Đóng tệp:

Close(<biến tệp>);
GV nhận xét và cho điểm.
II.
Giáo viên nhắc lại một số vấn đề về Kiểu dữ liệu tệp :
(Nói ngắn gọn để HS nhớ lại tồn bộ lí thuyết tiết trước)
1. Khái niệm Kiểu dữ liệu tệp
- Khái niệm: Kiểu dữ liệu tệp là một tập hợp các dữ liệu có liên quan với nhau
và có cùng kiểu được nhóm lại tạo thành một dãy dùng để trao đổi dữ liệu với bộ
nhớ ngoài.
2. Vai trò của Kiểu dữ liệu tệp:
Tất cả các dữ liệu thuộc các kiểu dữ liệu đã xét đều được lưu trữ ở bộ nhớ trong
(RAM) và do đó dữ liệu sẽ bị mất khi tắt máy. Với một số bài tốn có khối lượng dữ
liệu lớn, có u cầu lưu trữ để xử lý nhiều lần, cần có kiểu dữ liệu tệp (file).
Kiểu dữ liệu tệp có những đặc điểm sau:
- Dữ liệu kiểu tệp được lưu trữ lâu dài ở bộ nhớ ngồi (đĩa từ, CD,…) và khơng
bị mất khi tắt nguồn điện.
- Lượng dữ liệu lưu trữ trên tệp có thể rất lớn và chỉ phụ thuộc vào dung lượng
của đĩa.
3. Phân loại tệp:
- Xét theo cách tổ chức dữ liệu, có thể phân tệp thành 2 loại:
+ Tệp văn bản: là tệp mà dữ liệu được ghi dưới dang các kí tự theo mã ASCCI.
Trong tệp văn bản, dãy kí tự kết thúc bởi kí tự xuống dịng hay kí tự kết thúc tệp tạo
thành một dòng. Các dữ liệu dạng văn bản như sách, tài liệu, bài học, giáo án, các
7

skkn


chương trình nguồn viết bằng ngơn ngữ bậc cao,… thường được lưu trữ dưới dạng
tệp văn bản

+ Tệp có cấu trúc: là tệp mà các thành phần của nó được tổ chức theo một cấu
trúc nhất định. Tệp nhị phân là một trường hợp riêng của tệp có cấu trúc. Dữ liệu
ảnh, âm thanh,… thường được lưu trữ dưới dạng tệp có cấu trúc.
- Xét theo cách truy cập, có thể phân tệp thành 2 loại:
+ Tệp truy cập tuần tự: cho phép truy cập đến một dữ liệu nào đó trong tệp chỉ
bằng cách bắt đầu từ đầu tệp và đi qua lần lượt tất cả các dữ liệu trước nó.
+ Tệp truy cập trực tiếp: cho phép tham chiếu đến dữ liệu cần truy cập bằng cách
xác định trực tiếp vị trí (thường là số hiệu) của dữ liệu đó.
Hiện nay chương trình Tin học lớp 11 chỉ nghiên cứu về loại tệp văn bản
* Các thao tác với tệp
1. Khai báo biến tệp:
Để làm việc với dữ liệu kiểu tệp ta phải sử dụng biến tệp. Khai báo biến
tệp văn bản có dạng:
Var <Tên biến tệp>: text;
Ví dụ:
Var f1,f2: text;
2. Thao tác với tệp:
a, Gắn tên tệp:
Mỗi tệp dữ liệu đều có một tên tệp để tham chiếu. tên tệp là biến xâu
hoặc hằng xâu, ví dụ ‘DULIEU.DAT’.
Trong lập trình ta khơng thao tác trực tiếp với tệp dữ liệu trên đĩa mà
thông qua biến tệp, tức là biến tệp đại diện cho tên tệp. Vì vậy phải gắn tên tệp với
đại diện của nó là biến tệp bằng thủ tục:
Assign(<biến tệp>,<tên tệp>);
Trong đó, tên tệp là biến xâu hoặc hằng xâu.
Ví dụ: Assign(f1,’BAITAP.INT’);
Assign(f2,’D:\\BAITAP.OUT’);
b, Mở tệp:
Tệp có thể dùng để chứa kết quả ra hoặc dữ liệu vào.
Câu lệnh dùng thủ tục mở tệp để ghi dữ liệu có dạng:

Rewrite(<biến tệp>);
Ví dụ: rewrite(f2);
Khi thực hiện thủ tục rewrite(f2), nếu trên thư mục gốc của đĩa D chưa có tệp
BAITAP.OUT thì tệp sẽ được tạo với nội dung rỗng. Nếu đã có, thì nội dung cũ sẽ bị
xóa để chuẩn bị ghi dữ liệu mới.

8

skkn


Trước khi đọc dữ liệu từ tệp đã gắn với một biến tệp, ta mở tệp bằng thủ tục:
Reset(<biến tệp>);
Ví dụ: Reset(f1);
c. Đọc/ghi tệp văn bản:
Việc đọc tệp văn bản được thực hiện giống như nhập từ bàn phím. Việc
ghi dữ liệu ra tệp giống như ghi ra màn hình.
Câu lệnh dùng thủ tục đọc có dạng:
Read(<biến tệp>,<danh sách biến>);
Hoặc
Readln(<biến tệp>,<danh sách biến>);
Trong đó, danh sách biến là một hoặc nhiều tên biến đơn. Nếu trường hợp nhiều
biến thì các biến phân cách nhau bởi dấu phẩy.
Ví dụ:
Read(tep1,x,y);
Hoặc
Readln(tep1,x,y);
Câu lệnh dùng thủ tục ghi có dạng:
Write(<biến tệp>,<danh sách kết quả>);
Hoặc Writeln(<biến tệp>,<danh sách kết quả>);

Trong đó, danh sách kết quả gồm một hoặc nhiều phần tử. Phần tử có thể là biến
đơn hoặc biểu thức (số học, quan hệ hoặc lôgic) hoặc hằng xâu. Nếu trường hợp có
nhiều phần tử thì các phần tử được phân cách bởi dấu phẩy
Ví dụ:
write(tep2,x*x+y*y);
Writeln(tep2,x,y);
d, Đóng tệp:
Sau khi làm việc xong với tệp cần phải đóng tệp. Câu lệnh dùng thủ tục
đóng tệp có dạng:
Close(<biến tệp>) ;
Ví dụ: Close(tep1);
Close(tep2);
Chú ý: Sau khi đóng, một tệp vẫn có thể được mở lại. Khi mở lại tệp, nếu vẫn
dùng biến tệp cũ thì khơng cần phải dùng thủ tục Assign gắn lại tên tệp.
3. Các hàm thường dùng trong khi đọc/ghi tệp văn bản:
- Hàm eof(biến tệp) trả về giá trị True nếu con trỏ đang chỉ tới cuối tệp
- Hàm eoln(biến tệp) trả về giá trị True nếu con trỏ đang chỉ tới cuối dòng
III. NỘI DUNG BÀI TẬP:
1.
Một số bài tập củng cố kiến thức, tạo hứng thú cho HS:
Bài 1:
Một trường THPT tổ chức cho GV và HS của trường đi cắm trại, sinh hoạt ngoài
trời ở vườn quốc gia Cúc Phương. Để lên lịch đến thăm khu trại các lớp, thầy hiệu
trưởng cần biết khoảng cách từ trại của mình(ở vị trí có tọa độ (0,0) đến trại của các
9

skkn


GVCN có tọa độ nguyên (x,y) được ghi trong tệp văn bản TRAI.TXT (như vậy, tệp

TRAI.TXT chứa liên tiếp các cặp số nguyên, các số cách nhau bởi dấu cách và khơng
kết thúc bằng kí tự xuống dịng )).
Viết chương trình đọc các cặp tọa độ từ tệp TRAI.TXT, tính rồi đưa ra màn hình
khoảng cách (với độ chính xác bốn chữ số sau dấu chấm thập phân) giữa trại của mỗi
GVCN và trại của thầy hiệu trưởng.
Yêu cầu với bài này:
- HS: Đọc và nghiên cứu bài trong SGK (HS có thể đọc trước ở nhà)
- GV chuẩn bị sẵn chương trình và chạy trên máy chiếu cho HS xem quá
trình thực hành với kiểu dữ liệu tệp mới này.
Cụ thể GV hướng dẫn kỹ: bài này có 2 tệp:
+ Một tệp chương trình:
program vd1;
uses crt;
var d:real; f:text; x,y:integer;
BEGIN
Clrscr;
assign(f,'TRAI.TXT');
reset(f);
while not(eof(f))do
Begin
read(f,x,y);
d:=sqrt(x*x+y*y);
writeLN('k/c d=',d:10:4);
End;
Readln;
close(f);
END.
+ Một tệp TRAI.TXT lưu các cặp số nguyên là tọa độ trại của các
GVCN các lớp, ví dụ:
24

-7 5
-10 -4
Cịn kết quả sẽ ghi ra màn hình như những bài lập trình của các chương trước:
k/c d= 4.4721
k/c d= 8.6023
k/c d= 10.7703
Như vậy, sau khi tắt nguồn điện hoặc thốt ra khỏi Pascal rồi khởi động lại
máy tính thì dữ liệu trong 2 tệp trên vẫn cịn và đương nhiên kết quả lại được
hiện trên màn hình mà không bị mất đi như các kiểu dữ liệu trước đây.
10

skkn


GV nhấn mạnh đây chính là vai trị và ưu điểm của “Kiểu dữ liệu tệp”
Bài 2: Tính điện trở tương đương
Cho 3 điện trở R1, R2, R3. Sử dụng cả 3 điện trở để tạo ra 5 mạch điện
có điện trở tương đương khác nhau bằng cách mắc theo các sơ đồ sau:
R1

R1
R3

R2

R2

R3
Sơ đồ II


Sơ đồ I

R2

R1

R1

R2
R3

R3
Sơ đồ III

R1

Sơ đồ IV

R2

R3

Sơ đồ V

Mỗi cách mắc sẽ cho một điện trở tương đương khác nhau.
Cho tệp văn bản RESIST.DAT gồm nhiều dòng, mỗi dòng chứa 3 số thực R1, R2,
R3, các số cách nhau một dấu cách, 0Viết chương trình đọc dữ liệu từ tệp RESIST.DAT, tính điện trở tương đương và
ghi kết quả ra tệp văn bản RESIST.EQU , mỗi dòng ghi năm điện trở tương đương
của ba điện trở ở dòng dữ liệu vào tương ứng.

Yêu cầu với bài này:
- HS: đọc và nghiên cứu nội dung bài trong SGK.
- GV: chuẩn bị sẵn chương trình và chạy trên máy chiếu cho HS xem quá
trình thực hành với kiểu dữ liệu tệp mới này.
Cụ thể GV hướng dẫn kỹ: bài này có điểm khác bài 1 đó là gồm 3 tệp:
+ Một tệp chương trình:
program dientro;
var a:array[1..5]of real; i:byte;
11

skkn


f1,f2 :text; R1,R2,R3:real;
BEGIN
assign(f1,'RESIST.DAT');reset(f1);
assign(f2,'RESIST.EQU');Rewrite(f2);
While not eof(f1) do
Begin
read(f1,R1,R2,R3);
a[1]:=R1*R2*R3/(R1*R2+R2*R3+R3*R1);
a[2]:=R1*R2/(R1+R2)+R3;
a[3]:=R1*R3/(R1+R3)+R2;
a[4]:=R3*R2/(R3+R2)+R1;
a[5]:= R1+R2+R3;
For i:=1 to 5 do Write(f2,a[i]:8:2,' ');
writeln(f2);
end;
Close(f1);Close(f2);
END.

+ Một tệp RESIST.DAT gồm nhiều dòng, mỗi dòng chứa 3 số thực R1, R2,
R3 dùng để đọc số liệu từ nó ra để tính các điện trở tương đương
4 1 10
15 -6 54
-6 47 268
123
+ Một tệp RESIST.EQU dùng để ghi kết quả các điện trở tương đương
0.74
10.80
3.86
4.91
15.00
-12.27
44.00
5.74
8.25
63.00
-7.06
261.12
40.86
33.99
309.00
0.55
3.67
2.75
2.20
6.00
y
Bài 3: Lập trình nhập từ bàn phím 2 số ngun x, y. Tính x rồi ghi 2 số đó cùng
với giá trị xy tính được vào tệp ‘BAI3.TXT’.

Yêu cầu với bài này:
- HS: Nghiên cứu và làm tại lớp trên máy tính đồng thời trình chiếu cho
cả lớp cùng xem để HS có kỹ năng tự thực hành phần Kiểu dữ liệu tệp mới này.
- GV: Hướng dẫn và theo dõi HS làm trên máy tính.
- GV hỏi: + Bài này gồm mấy tệp
+ Có gì đặc biệt?
- HS trả lời:
+ Bài gồm 2 tệp:
12

skkn


+ 1 tệp chương trình:
program b3;
uses crt;
var f:text; x,y,i:integer; tich:longint;
BEGIN
clrscr;
write('Nhap x,y:');readln(x,y);
tich:=1;
for i:=1 to y do tich:=tich*x;
assign(f,'BAI3.TXT');rewrite(f);
writeln(f,'x=',x);
writeln(f,'y=',y);
writeln(f,'tich=',tich);
close(f);
END.
+ 1 tệp BAI3.TXT dùng để ghi dữ liệu, ví dụ:
x=3

y=3
tich=27
- Với bài này mỗi lần chạy chương trình ta phải nhập số liệu mới từ bàn
phím, chỉ kết quả đã ghi vào tệp BAI3.TXT là còn nguyên.
Bài 4: Cho 2 tệp văn bản B1.TXT và B2.TXT, mỗi dòng của hai tệp chứa một số
nguyên. Hãy lập trình tạo tệp văn bản B12.TXT, những dịng đầu tiên là các dòng
của tệp B1.TXT, những dòng còn lại là các dòng của tệp B2.TXT
Yêu cầu với bài này:
- HS: Nghiên cứu và làm tại lớp trên máy tính đồng thời trình chiếu cho
cả lớp cùng xem để HS có kỹ năng tự thực hành phần Kiểu dữ liệu tệp mới này.
- GV: Hướng dẫn và theo dõi HS làm trên máy tính.
- GV hỏi:
+ Bài này có mấy tệp?
+ Chức năng của mỗi tệp là gì?
- HS trả lời:
+ Bài này có 4 tệp
+ 1 tệp chương trình:
var f1,f2,f3:text; n:longint;
BEGIN
assign(f1,'B1.TXT');reset(f1);
assign(f2,'B2.TXT');reset(f2);
assign(f3,'B12.TXT');rewrite(f3);
while not eof(f1) do
13

skkn


begin
read(f1,n);

writeln(f3,n);
end;
writeln(f3) ;
close(f1);
while not eof(f2) do
begin
read(f2,n);
writeln(f3,n);
end;
close(f2);close(f3);
END.
+ 2 tệp dùng để đọc: B1.TXT
và B2.TXT
7
1
3
2
27
3
91
3479
+ 1 tệp dùng để ghi: B12.TXT
7
3
27
91
3479
1
2
3

GV chốt lại: Đối với kiểu dữ liệu tệp chúng ta phải hiểu bản chất làm việc
của nó là làm việc với biến tệp nên phải gắn tên tệp bằng biến tệp; hơn nữa dù
đọc hay ghi cũng phải mở tệp. Có bài yêu cầu chỉ mở tệp để đọc, có bài yêu cầu
chỉ mở tệp để ghi, có bài lại yêu cầu cả mở tệp để đọc và mở tệp để ghi, cũng có
bài đọc số liệu từ 2 tệp và ghi kết quả ra 1 tệp. Sau khi đọc/ ghi dữ liệu xong cuối
cùng phải đóng tệp.
2. Bài tập về nhà: GV in sẵn phát cho HS về nhà làm để tiết sau thực hành trên
phòng máy (tiết thực hành này trong PPCT của Bộ GD – ĐT khơng có mà do GV
nhóm Tin học trường THPT Hậu Lộc 4 xây dựng để dạy cho phù hợp)
Bài 1: Hãy cho biết chương trình sau thực hiện việc gì?
program vd;
14

skkn


uses crt ;
var f:text; n,mx,k:longint;
BEGIN
clrscr;
assign(f,'input.dat'); reset(f);
mx:=-2147483647;
while not eof(f) do
begin
read(f,n);
if n>mx then begin mx:=n;k:=1; end
else if n=mx then inc(k);
end;
close(f);writeln(mx,' ',k);readln;
END.

Bài 2: Cho tệp LINE.TXT, mỗi dịng chứa một xâu khơng q 255 kí tự. Hãy
lập trình tạo tệp LINE.DAT chứa các xâu ở tệp LINE.TXT, nhưng mỗi xâu đã được
chuẩn hóa theo các quy tắc sau:
- Xóa tất cả các dấu cách đầu và cuối xâu;
- Nhiều dấu cách liên tiếp (nếu có) được thay bằng một dấu cách duy nhất.
Bài 3: Cho tệp BAI3.INT gồm một mảng 20 số nguyên. Lập trình tính tổng
dãy số đó rồi ghi dãy số đó cùng tổng tính được vào tệp BAI3.OUT.
2.4. Hiệu quả của sáng kiến kinh nghiệm đối với hoạt động giáo dục, với bản
thân, đồng nghiệp và nhà trường.
- Bảng số liệu kết quả đạt được của học sinh lớp 11 năm học 2017-2018 khi chưa
thực hiện đề tài:
STT

Lớp

Sĩ số

Đạt yêu cầu

Không đạt yêu cầu

1
2

11A1
11A2

42
43


70%
65%

30%
35%

- Bảng số liệu kết quả đạt được của học sinh lớp 11 năm học 2018-2019 sau khi thực
hiện đề tài:

STT

Lớp

Sĩ số

Đạt yêu cầu

Không đạt yêu cầu

1
2
3

11A6
11A4
11A5

43
44
42


90%
88%
91%

10%
12%
9%
15

skkn


Trong quá trình trao đổi, thảo luận, trình bày, các em HS thể hiện được 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à GV 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 đề.
Đối với bản thân tôi sau thời gian nghiên cứu đề tài đã giúp tơi có những tiết
giảng bài thực sự hưng phấn và rút được nhiều kinh nghiệm trong quá trình giảng dạy
để đạt kết quả tốt nhất. Không những đối với tơi mà đồng nghiệp trong nhà trường
cũng có thêm kinh nghiệm sau khi tham khảo đề tài của tôi, bước đầu đã có những
vận dụng vào giảng dạy. Nhà trường có thêm những học sinh giỏi tồn diện và giáo
viên tâm huyết với nghề.
3. KẾT LUẬN
3.1. 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 chun 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 HS u thích mơn học, ham học hỏi và
tìm tịi 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 lỗi mà các em học
sinh mắc phải, giúp cho các em hiểu rõ và vận dụng tốt hơn các kiến thức đã học vào
giải các bài toán do giáo viên đặt ra.
Trên đây là tồn bộ kinh nghiệm của tơi qua nhiều năm liền dạy Tin học ở khối
11 cũng như tham khảo qua nhiều nguồn thông tin, tư liệu khác nhau, rất mong được
sự đóng góp của các đồng nghiệp nhằm giúp đề tài của tơi được hồn thiện thêm.
Tơi xin chân thành cảm ơn!
3.2. Kiến nghị
Sau khi thực hiện đề tài SKKN “Đổi mới phương pháp dạy học bài Ví dụ làm
việc với tệp – Tin học lớp 11 nhằm nâng cao hiệu quả tiết dạy” tơi có một số ý kiến
như sau:
- Thêm một số tiết bài tập và thực hành cho Tin học lớp 11.
- Tăng cường cơ sở vật chất cho phòng thực hành: bổ sung máy tính, máy chiếu.
- Bổ sung thêm phịng thực hành.

16

skkn


XÁC NHẬN CỦA THỦ
TRƯỞNG ĐƠN VỊ


Thanh Hóa, ngày 24 tháng 6 năm 2020
Tôi xin cam đoan đây là SKKN của mình viết,
khơng sao chép nội dung của người khác.
Người viết SKKN

Trần Thị Huệ

Lê Thị Hoa

17

skkn


TÀI LIỆU THAM KHẢO
1.
2.
3.
4.
5.
6.

Sách giáo khoa tin học 11
Hồ Sĩ Đàm chủ biên
Sách giáo viên tin học 11
Hồ Sĩ Đàm chủ biên
Lý thuyết và Bài tập lập trình Pascal 5.5-6.0 Nguyễn Thị Kiều Dun
Ngơn ngữ lập trình Pascal 7
Qch Tuấn Ngọc
Turbo Pascal 7.0 PGS-TS Bùi Thế Tâm – Võ Văn Tuấn Dũng.

101 thuật tốn và chương trình
Lê Văn Dũng – Trần khắc Tuấn (NXB
Khoa Học Và Kĩ Thuật)
7. Một số sáng kiến kinh nghiệm và ý kiến của đồng nghiệp.
8. Một số bài tập tham khảo trên Internet.
--------------------------------------

18

skkn



×