A . ĐẶT VẤN ĐỀ
I. Lí do chọn sáng kiến kinh nghiệm .
- 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 đề cập khá nhiều phương pháp và kĩ thuật dạy học: phương pháp thảo
luận, phương pháp đặt câu hỏi, phương pháp chia nhóm … và có một nội dung
được đề cập rất nhiều trong các tài liệu đó là: dạy học tích hợp.
- 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ự 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 người thầy 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ể. Thầy 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 TỐNG DUY TÂN 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.
- Xuất phát từ cơ sở trên, tôi đã chọn đề tài “Giúp học sinh hoc tốt Kiểu mảng”,
giúp các em nắm được kiểu dữ liệu mảng đó là cấu trúc dữ liệu quan trọng
1
thường hay được ứng dụng trong lập trình bài tập và thực tế
II. Mục đích của sáng kiến kinh nghiệm.
Sử dụng phương pháp giảng dậy thích hợp giúp học sinh tưởng tượng được cấu
trúc của kiểu mảng. Và thông qua các ví dụ hướng dẫn học sinh nắm vững cách
truy xuất dữ liệu từ mảng.
III. Nhiệm vụ của sáng kiến kinh nghiệm .
Xây dựng giáo án chi tiết thực sự gần gũi với học sinh phù hợp với đa số học
sinh trong một lớp.
Đưa ra vấn đề, thực hiện ví dụ minh họa đễ học sinh quan sát qua đó nắm vững
kiểu mảng. Và hình thành ở học sinh kỹ năng phân tích, sử lý các vấn đề thường
gặp trong khi làm việc với kiểu mảng.
IV. Đối tượng nghiên cứu.
Học sinh khối 11 tại trường THPT TỐNG DUY TÂN trong hai năm liên tiếp.
NĂM HỌC
LỚP
11B
SĨ SỐ
44
2011 - 2012
11E
45
11I
11B
43
48
11D
44
2012 - 2013
V. Phương pháp nghiên cứu .
- Đọc kỹ tài liệu sách giáo khoa, sách giáo viên Tin Học 11 và một số tài liệu
tham khảo khác.
- Dạy học trên các đối tượng: Giỏi , Khá , Trung bình, yếu, kém trong đó nội
dung dạy học, phương pháp thực hiện và kết quả thu được đánh giá chủ yếu đối
với đối tượng học sinh khá, trung bình, yếu, kém.
- Đưa ra bàn luận trước tổ, nhóm chuyên môn để tham khảo ý kiến và cùng thực
hiện.
2
- Tham khảo ý kiến các trường bạn, ý kiến đóng góp của các thầy cô dạy lâu
năm đã có nhiều kinh nghiệm.
- Dự giờ, kiểm tra, đánh giá chất lượng của học sinh.
- Dạy thực nghiệm trên 2 lớp 11 của trường là: 11B, 11D.
B. GIẢI QUYẾT VẤN ĐỀ
I .Cơ sở lí luận .
Khi học sinh học bài “Bài 11. kiểu mảng” Học sinh đã có rất nhiều khó khăn,
nhầm lẫn trong việc thực hiện viết các đoạn chương trình để nhập xuất dữ liệu
mà nguyên nhân là do chưa thực sự hiểu được cấu trúc của kiểu mảng.
II. Nội dung và giải pháp thực hiện .
1. Nội dung
Giáo án tiết một bài Kiểu mảng
Tiết 1:
A. Mục đích, yêu cầu
Học sinh cần hiểu rõ:
Kiểu mảng là một kiểu dữ liệu có cấu trúc, rất cần thiết và hữu ích trong
nhiều chương trình.
Mảng một chiều là một dãy hữu hạn các phần tử cùng kiểu.
Các ngôn ngữ lập trình thông dụng cho phép người lập trình xây dựng
kiểu dữ liệu mảng một chiều.
Để mô tả mảng một chiều cần khai báo kiểu của các phần tử và cách đánh
số các phần tử của nó (mỗi phần tử của nó có một chỉ số).
Có thể tham chiếu phần tử của mảng bằng tên của mảng và chỉ số tương
ứng của phần tử này.
Phần minh hoạ với pascal, học sinh cần nắm được:
Có hai cách để khai báo (hay định nghĩa) kiểu
dữ liệu mảng một chiều:
- Trực tiếp trong phần khai báo biến (với từ khoá Var).
- Đặt tên và định nghĩa cho kiểu dữ liệu mới này (với từ khoá là TYPE), rồi
sau đó khai báo các biến thuộc kiểu mới (đã có tên).
Để khai báo một kiểu dữ liệu mảng một chiều, người lập trình cần phải
xác định những yếu tố sau:
- Kiểu phần tử: Kiểu của các phần tử tạo nên mảng.
- Kiểu chỉ số: Người ta thường dùng một đoạn số nguyên liên tục làm chỉ
số của mảng, đoạn này được xác định khi số nguyên đầu tiên và số
3
nguyên cuối cùng của đoạn là xác định được. Số nguyên đầu tiên trong
đoạn này là chỉ số của phần tử đầu tiên trong mảng, số nguyên tiếp theo là
chỉ số của phần tử thứ hai trong mảng, cứ như vậy,… Giá trị cuối cùng là
chỉ số của phần tử cuối cùng trong mảng. Do vậy, khi xác định kiểu chỉ số
của một mảng (một chiều) người lập trình đã xác định cả kích thước của
mảng (tức số phần tử của mảng).
Học sinh cần có các kỹ năng:
Nhận biết được các thành phần trong khai báo kiểu mảng một chiều.
Nhận biết được định danh của một phần tử kiểu mảng một chiều xuất hiện
trong một chương trình.
Biết cách viết khai báo mảng đơn giản với chỉ số kiểu miền con của kiểu
nguyên.
B. Đồ dùng dạy học
Chuẩn bị của giáo viên:
Sách giáo khoa, sách giáo viên, giáo án, bảng phụ, thước, phấn viết.
Chuẩn bị của học sinh:
Sách giáo khoa, vở, bút.
C. Hoạt động dạy - học:
HOẠT ĐỘNG CỦA GIÁO VIÊN
HOẠT ĐỘNG CỦA HỌC SINH
Bài cũ:
Lắng nghe câu hỏi và trả lời:
Em hãy nêu những kiểu dữ liệu chuẩn đã Chúng ta đã học 4 kiểu dữ liệu
học?
chuẩn đó là:
- Kiểu nguyên.
- Kiểu thực.
- Kiểu ký tự.
- Kiểu logic.
Giáo viên đánh giá, cho điểm và ghi vào sổ
đầu bài.
Bài mới:
Học sinh chăm chú nghe giảng
Hôm nay chúng ta sẽ tìm hiểu về một kiểu và ghi chép vào vở.
dữ liệu mới được xây dựng trên những kiễu
dữ liệu chuẩn mà chúng ta đã học.
Ghi lên bảng:
CHƯƠNG 4: KIỂU DỮ LIỆU CÓ CẤU
TRÚC.
BÀI 11: KIỂU MẢNG
Và tiết hôm nay chúng ta sẽ tìm hiểu về kiểu
mảng một chiều.
1.
Kiểu mảng một
4
chiều.
Treo bảng phụ trong đó có đề bài và chương
INPUT: Nhiệt độ 7 ngày trong
trình ví dụ trang 53 góc phải bảng.
tuần.
Yêu cầu học sinh xác định INPUT và
OUTPUT: Nhiệt độ tb của tuần
OUTPUT của bài toán trên?
và số lượng ngày trong tuần có
nhiệt độ > nhiệt độ tb của tuần.
Trả lời: Chương trình trên đã sử
dụng 7 biến để khai báo cho
Hỏi: Em hãy quan sát chương trình trên bảng nhiệt độ các ngày trong tuần.
và cho biết chúng ta đã sử dụng bao nhiêu
Chương trình trên dùng 7 câu
biến để khai báo cho nhiệt độ các ngày trong lệnh If.. then..
tuần? Và chương trình trên đã dùng bao
nhiêu câu lệnh? Đó là câu lệnh gì?
Trả lời: Chương trình trên đã sử
dụng 365 biến để khai báo cho
Hỏi: Với bài toán như vậy ta áp dụng cho nhiệt độ các ngày trong tuần.
365 ngày thì chúng ta phải sử dụng bao Chương trình trên dùng 365 câu
nhiêu biến để khai báo nhiệt độ 365 ngày và lệnh If.. then...
chương trình phải dùng bao nhiêu câu lệnh Trả lời: Khai báo nhiều biến và
If.. then..?
chương trình rất dài dòng.
Hỏi: Với số ngày lớn như vật thì chương
trình sẽ gặp những hạn chế nào?
Dẫn dắt: Để khắc phục những hạn chế trên,
người ta thường ghép chung 7 biến hay 365
biến trên thành một dãy, đặt cho nó chung
một tên và đánh cho một phần tử một chỉ số.
* Khái niệm mảng một chiều:
Chăm chú nghe giảng và ghi
chép bài.
- Mảng một chiều là dãy hữu hạn các phần tử
cùng kiểu. Mảng được đặt tên và mỗi phần
tử của nó có một chỉ số.
- Để mô tả mảng một chiều ta cần xác định
kiểu của các phần tử và cách đánh số các
phần tử của nó.
Ví dụ 1:
Nhietdo: 35 34 36 35.5 36 34.5 37
1
2
3
4
5
6
Chăm chú nghe giảng và ghi
chép bài.
5
7
Ví dụ 2: Xem mỗi bàn học sinh của chúng ta
là một mảng một chiều. Các bạn trong bàn
đó sẽ được đặt tên chung là tên của bàn đó.
Mỗi bạn được phân biệt nhau bởi một chỉ số
khác nhau.
Bàn1: Hương Hải Hà Hiền
1
2 3
4
Dẫn dắt: Chúng ta đã hiểu thế nào là mảng
một chiều. Vậy để máy tính của chúng ta
hiểu về mảng một chiều thì chúng ta phải
làm gi? Để hiểu rõ vấn đề này chúng ta sẽ
Chăm chú nghe giảng và ghi
tìm hiểu về một phần mới đó là phần khai
chép bài.
báo
Ghi lên bảng
a)
Khai báo:
Trong NNLT Pascal có 2 cách khai báo cho
mảng 1 chiều đó là khai báo trực tiếp và khai
báo gián tiếp.
- Cách 1: Khai báo trực tiếp biến mảng một
chiều:
Var : array[Kiểu chỉ số] of
;
- Cách 2: Khai báo gián tiếp biến mảng qua
kiểu mảng một chiều:
Type =array[Kiểu chỉ số]
of;
Var : ;
Trong đó:
Type là từ khoá khai báo kiểu mảng.
Var là từ khoá khai báo biến mảng.
Array…of… là từ khoá dùng khai báo mảng
và kiểu phần tử.
Tên kiểu mảng, tên biến mảng do người lập
trình đặt nhưng tuân theo quy tắc NNLT
Pascal đó là bắt đầu bằng chữ cái.
Kiểu chỉ số thường là một đoạn số nguyên
liên tục có dạng n1..n2 với n1,n2 là các hằng
hoặc biểu thức nguyên xác định chỉ số đầu
Chăm chú nghe giảng và ghi
và chỉ số cuối (n1<=n2).
6
Kiểu phần tử là kiểu của các phần tử mảng.
chép bài.
Ví dụ:
- Khai báo gián tiếp:
Type nd=array[1..366] of real;
Var nhietdo : nd;
- Khai báo trực tiếp
Var nhietdo: array[1..366] of real;
Ý nghĩa của khai báo trên là: Khai báo mảng
một chiều có tên nhietdo gồm 366 phần tử
Lắng nghe câu hỏi và trả lời:
cùng kiểu thực.
- Khai báo gián tiếp:
Type sn=array[1..100] of
Hỏi: Em hãy khai báo mảng một chiều có
tên là songuyen gồm 100 phần tử cùng kiểu integer;
Var songuyen:sn;
nguyên theo 2 cách.
- Khai báo trực tiếp
Var songuyen: array[1..100]
of integer;
Dẫn dắt: Tuỳ từng trường hợp mà chúng ta
sử dụng khai báo trực tiếp hay gián tiếp. Ta
dùng khai báo gián tiếp khi trong chương
trình có nhiều mảng cùng kiểu chỉ số và kiểu
phần tử. Còn lúc nào chỉ khai báo một mảng
hay nhiều mảng không cùng kiểu chỉ số hay
kiểu phần tử thì dùng khai báo trực tiếp.
Quan sát trên bảng và trả lời:
- Đưa lên bảng một số khai báo yêu cầu học Var A: array[-10..10] of real;
C: array[-20..10] of boolean;
sinh xác định khai báo đúng.
E: array[1..115 div 2] of
Var A: array[-10..10] of real;
real;
B: array[10..5] of integer;
C: array[-20..10] of boolean;
D: array[10…100] of char;
E: array[1..115 div 2] of real;
Và để hiểu rõ về mảng một chiều chúng ta
tìm hiều về một phần là phần tham chiếu.
Ghi lên bảng .
* Tham chiếu:
7
Dẫn dắt:
Tham chiếu tới phần tử của mảng một chiều
được xác định bởi tên mảng cùng với chỉ số
và được viết trong cặp ngoặc [ và ].
Ví dụ: Tham chiếu tới nhiệt độ của ngày thứ
nhất trong chương trình trên viết là:
Nhietdo[1].
Nhietdo: 35 34 36 35.5 36 34.5 37
2
3
4
5
6
7
Nhietdo[3];
Nhietdo[7];
Nhietdo[1]=35
- Yêu cầu học sinh tham chiếu nhiệt độ ngày
Quan sát chương trình trên bảng
thứ 3 và 7.
- Đưa chương trình giải bài toán nhiệt độ với và chăm chú nghe giảng.
N ngày bằng mảng một chiều lên bảng.
Chú ý: Thuật toán trong sách giáo khoa khai
báo biến dem, i, N kiểu byte là chưa đúng.
Phải khai báo là kiểu integer vì kiểu byte có
phạm vi 0 -> 255 mà các biến dem, i, N có
thể nhận giá trị lớn hơn 255.
Trả lời: Trong chương trình
- Chương trình đã khai báo hằng Max=366 chúng ta khai báo mảng theo
nên trong khai báo mảng Max là một hằng cách gián tiếp.
chứ không phải là một biến.
Quan sát chương trình trên bảng
Hỏi: Trong chương trình chúng ta khai báo và chăm chú nghe giảng.
mảng theo cách nào?
- Trước khi nhập nhiệt độ cho từng ngày thì
chúng ta cần phải nhập số ngày. Và ta sử
dụng câu lệnh for i:=1 to N do để nhập nhiệt
độ cho từng ngày.
Lắng nghe và ghi nhớ .
- Khi nhập ta cần phải tham chiếu đến các
ngày bằng cách: Readln(Nhietdo[i]);
Củng cố lại bài học:
- Hiểu thế nào là mảng 1 chiều.
8
- Các cách khai báo mảng 1 chiều và
các thành phần của khai báo.
- Cách tham chiếu đến từng phần tử của
mảng.
Bài tập về nhà:
1. Viết chương trình nhập vào mảng một
chiều gồm 100 phần tử kiểu nguyên,
tính tổng của các phần tử đó.
2. Đọc trước nội dung phần b) Một số ví
dụ.
2. Kết quả thu được.
Trong quá trình học tập 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 khi làm bài tập. Đồng thời tiết kiểm tra
các bài tập liên quan đến kiểu mảng đều đạt kết quả cao. Tỉ lệ điểm khá trên tiết
kiểm tra bài tập liên quan đến kiểu mảng ở lớp 11B là 60% và lớp 11D là 52%
không có học sinh đạt mức điểm dưới 5
9
C. KẾT LUẬN VÀ ĐỀ XUẤT
Tin học 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 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, tin học phổ biến trên thế giới, được 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 đề nho nhỏ trong
tin học đời sống…để 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à 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 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ấu trúc kiểu mảng để giải các
vấn bài toán do giáo viên đặt ra.
10
D. TÀI LIỆU THAM KHẢO
1.Sách giáo khoa tin học 11
Hồ Sĩ Đàm
chủ biên
2. Sách giáo viên tin học 11
Hồ Sĩ Đàm
chủ biên
3. Một số ý kiến đóng góp vào sáng kiến kinh nghiệm của đồng nghiệp .
11
MỤC LỤC
A. ĐẶT VẤN ĐỀ...................................................................................... 1
I. Lý do chon sáng kiến kinh nghiệm........................................................ 1
II. Mục đích của sáng kiến kinh nghiệm................................................... 2
III. Nhiệm vụ của sáng kiến kinh nghiệm................................................. 2
IV. Đối tượng nghiên cứu.......................................................................... 2
V. Phương pháp nghiên cứu...................................................................... 2
B. GIẢI QUYẾT VẤN ĐỀ........................................................................ 3
I .Cơ sở lí luận .......................................................................................... 3
II. Nội dung và giải pháp thực hiện .
1. Nội dung................................................................................................ 3
2. Kết quả thu được................................................................................... 9
C. KẾT LUẬN VÀ ĐỀ XUẤT................................................................. 10
D. TÀI LIỆU THAM KHẢO ................................................................... 11
XÁC NHẬN CỦA THỦ TRƯỞNG ĐƠN VỊ
Thanh Hóa, ngày 05 tháng 06 năm 2013
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.
Hoàng Lê Phong
12
- Xem thêm -