1. Trang chủ
  2. » Giáo án - Bài giảng

Hướng dẫn học sinh phân biệt và sử dụng tham biến và tham trị trong lập trình có cấu trúc thông qua nội dung bài 18 – chương VI – tin học 11 ví dụ về cách viết và sử dụng chương trình con

21 1,5K 0

Đ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 21
Dung lượng 242,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đề tài này được viết dựa trên kinh nghiệm thực tiễn giảng dạy của bản thân, và tôi xây dựng thành: “Hướng dẫn học sinh phân biệt và sử dụng tham biến và tham trị trong lập trình có cấu t

Trang 1

MỤC LỤC

1 MỞ ĐẦU 2

2 NỘI DUNG SÁNG KIẾN KINH NGHIỆM 3

2.1 Cơ sở lí luận của sáng kiến kinh nghiệm 3

2.3 Thực trạng vấn đề trước khi áp dụng sáng kiến kinh nghiệm 5

2.3 Các biện pháp tiến hành để giải quyết 6

2.3.1 Sự khác nhau cơ bản của tham trị và tham biến 6

2.3.2 Chương trình con có tham số sử dụng tham biến và tham trị như thế nào? 8

2.3.3 Một số bài tập đơn giản để rèn luyện kĩ năng cho học sinh trong việc sử dụng tham trị và tham biến khi lập trình có cấu trúc 10

2.3.4 Một số bài tập luyện tập thêm 15

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 16

3 KẾT LUẬN 17

TÀI LIỆU THAM KHẢO 19

Trang 2

1 MỞ ĐẦU

- Lý do chọn đề tài:

Mỗi môn học đều có đặc thù riêng, môn Tin học cũng vậy Đối với mônTin học, các tiết bài tập và bài tập thực hành chiếm thời lượng giảng dạy khánhiều Kết quả học lý thuyết thể hiện ở năng lực giải quyết bài tập và bài tậpthực hành của các em Tuy nhiên, đối với học sinh khối 11, việc làm quen vớilập trình dù chỉ là các bài toán đơn giản cũng còn nhiều lạ lẫm và khó khăn Đó

là những kiến thức mới, cách tiếp cận cũng như thực hành không như nhữngmôn học các em đã được làm quen lâu nay Để làm được bài tập phải vận dụngnhiều kỹ năng như: Tư duy toán học, tư duy logic Mà không phải tất cả họcsinh đều có tư chất và say mê đối với môn học để tìm tòi và đáp ứng được

Đặc biệt khi giảng dạy nội dung bài 18 - chương VI: “Ví dụ về cách viết

và sử dụng chương trình con” – Tin học 11 tôi nhận thấy đa số học sinh đều gặp

khó khăn khi tìm hiểu các khái niệm trừu tượng như: Danh sách tham số, tham

số giá trị(tham trị), tham số biến(tham biến) Thông qua các ví dụ minh họa

trong sách giáo khoa hầu hết các em chưa nắm bắt được các khái niệm một cách

hiệu quả nhất, và dễ bị nhầm lẫn các khái niệm: Tham biến, tham trị.

Đề tài này được viết dựa trên kinh nghiệm thực tiễn giảng dạy của bản

thân, và tôi xây dựng thành: “Hướng dẫn học sinh phân biệt và sử dụng tham

biến và tham trị trong lập trình có cấu trúc thông qua nội dung bài 18 – chương VI – Tin học 11: Ví dụ về cách viết và sử dụng chương trình con”.

- Mục đích nghiên cứu

Giúp học sinh phân biệt và sử dụng tham trị, tham biến trong quá trình lậptrình Từ đó, các em có thể hiểu vận dụng vào viết các chương trình con hỗ trợphục vụ cho quá trình lập trình giải quyết các bài toán từ đơn giản đến phức tạp

- Đối tượng nghiên cứu

Học sinh khối 11 trường THPT Triệu Sơn 1

- Phương pháp nghiên cứu

Trong phạm vi đề tài này tôi lựa chọn phương pháp nghiên cứu xây dựng

cơ sở lí thuyết

Trang 3

2 NỘI DUNG SÁNG KIẾN KINH NGHIỆM

2.1 Cơ sở lí luận của sáng kiến kinh nghiệm

Cũng như những môn học khác, việc dạy Tin học cần được thực hiệntrong hoạt động và bằng hoạt động tự giác, tích cực, chủ động và sáng tạocủa người học Khi cần dạy một nội dung Tin học cho học sinh, người giáoviên phải biết phân tích nội dung đó xem nó liên quan đến những hoạt độngnào và một số hoạt động trong đó lại được phân tích thành những hoạt độngthành phần, rồi căn cứ vào mục tiêu tiết học, trình độ học sinh, trang thiết bịhiện có mà lựa chọn cho học sinh tập luyện và thực hiện một số trong nhữnghoạt động tiềm tàng trong nội dung cần dạy Để học sinh có ý thức về ý nghĩacủa những hoạt động, cần tạo động cơ học tập cho học sinh, để học sinh họcbằng sự hứng thú thực sự được nảy sinh từ việc ý thức sâu sắc ý nghĩa củanội dung bài học

Bên cạnh đó cần phải tập luyện cho học sinh những hoạt động ăn khớpvới những tri thức phương pháp Phải phân bậc hoạt động để tuần tự nêu caoyêu cầu khi tình huống dạy học cho phép hoặc hạ thấp yêu cầu khi học sinhgặp khó khăn Hệ thống bài tập được phân bậc để học sinh luyện tập tại lớphoặc làm ở nhà

Quan điểm hoạt động trong phương pháp dạy học có thể được thể hiện ởcác tư tưởng chủ đạo sau:

* Cho học sinh thực hiện và tập luyện những hoạt động và hoạt độngthành phần tương thích với nội dung và mục tiêu dạy học;

* Gợi động cơ cho các hoạt động học tập;

* Dẫn dắt học sinh kiến tạo tri thức, đặc biệt là tri thức phương pháp nhưphương tiện và kết quả của hoạt động;

* Phân bậc hoạt động làm căn cứ điều khiển quá trình dạy học

Trong các tư tưởng chủ đạo đó, tôi lựa chọn tư tưởng: " Cho học sinh thực hiện và tập luyện những hoạt động và hoạt động thành phần tương thích với nội dung và mục tiêu dạy học" làm cơ sở lý luận cho SKKN này Có thể

cụ thể hóa tư tưởng như sau:

*Phát hiện những hoạt động tương thích với nội dung:

Việc phát hiện những hoạt động tương thích với nội dung căn cứ mộtphần quan trọng vào sự hiểu biết về những hoạt động nhằm lĩnh hội những

Trang 4

Ví dụ: Khi giới thiệu về danh sách tham số sử dụng trong phần đầu của

chương trình con ta có thể giải quyết như sau:

Nếu một chương trình con có danh sách tham số thì các tham số phải

được khai báo ở phần đầu chương trình con, cụ thể đối với thủ tục và hàm cócấu trúc để khai báo:

Thủ tục: Procedure <Tên thủ tục>[(<Danh sách tham số>)];

Hàm: Function <Tên hàm>[(<Danh sách tham số>)]: <Kiểu dữ liệu>;

Trong đó: [(<Danh sách tham số>)] là tên của một hoặc nhiều biến đơn,

và phải khai báo kiểu dữ liệu của các biến đơn trong danh sách tham số Thành

phần danh sách tham số có thể có hoặc không trong khai báo

Ví dụ: 1.Procedure Ve_HCN;

2.Procedure Ve_HCN(chdai,chrong:integer);

Dựa vào khái niệm đưa ra và các ví dụ điển hình trong SGK học sinh dễ

dàng chỉ ra được thành phần danh sách tham số Trong ví dụ 1 là một trường

hợp của bài toán đơn giản không cần sử dụng danh sách tham số còn ví dụ 2 làmột trường hợp có sử dụng danh sách tham số và cách khai báo các tham số sử

dụng trong chương trình đó là chdai, chrong có kiểu dữ liệu là integer

*Phân tách hoạt động thành các hoạt động thành phần

Trong quá trình hoạt động, nhiều khi một hoạt động này có thể xuất hiệnnhư một thành phần của một hoạt động khác Phân tách được một hoạt độngthành những hoạt động thành phần là biết được cách tiến hành hoạt động toàn

bộ, nhờ đó có thể vừa quan tâm rèn luyện cho học sinh hoạt động toàn bộ vừachú ý cho học sinh luyện tập tách riêng những hoạt động thành phần khó hoặcquan trọng khi cần thiết

Ví dụ: Khi giới thiệu về khái niệm tham trị và tham biến ta có thể giải

quyết như sau:

Theo SGK Tin học 11, tham biến và tham trị được định nghĩa như sau:

* Tham trị: Trong lệnh gọi chương trình con, các tham số hình thức được

thay bằng các tham số thực sự tương ứng là các giá trị cụ thể được gọi là các

tham số giá trị (tham trị).

* Tham biến: Trong lệnh gọi chương trình con, các tham số hình thức được

thay bằng các tham số thực sự tương ứng là tên các biến chứa dữ liệu ra được

gọi là các tham số biến (tham biến).

* Để phân biệt tham trị và tham biến, ngôn ngữ lập trình Pascal sử dụng từ

khóa Var để khai báo những tham số biến.

Trang 5

Hoạt động 1: Nhận biết tham trị và tham biến thông qua phần đầu chương

trình con:

Ví dụ 1: a Procedure Hoan_doi(a,b:integer);

b Procedure Hoan_doi(x:integer; Var y:integer);

Học sinh dễ dàng nhận biết:

Ví dụ 1.a: a,b là tham trị;

Ví dụ 1.b: x là tham trị và b là tham biến.

Hoạt động 2: Nhận biết tham trị và tham biến thông qua lệnh gọi chương

Dựa vào khái niệm tham trị và tham biến học sinh chỉ ra được:

Ví dụ 2.a: a và b đóng vai trò là tham biến;

Ví dụ 2.b: 5 và 7 đóng vai trò làm tham trị;

2.3 Thực trạng vấn đề trước khi áp dụng sáng kiến kinh nghiệm

Trong các chương học trước các em đã làm quen khá nhiều với các dạngbài tập lập trình, và các phương pháp lập trình Tuy nhiên trong chương VI này,các em được làm quen với phương pháp lập trình có cấu trúc do đó còn nhiều bỡngỡ và chưa thành thạo Mặc dù các ví dụ của sách giáo khoa là các chươngtrình cụ thể để giải quyết bài toán tuy nhiên học sinh sẽ gặp rất nhiều khó khăn.Chính vì vậy, đối với những học sinh khá và giỏi việc vận dụng lý thuyết để làmcác bài tập đã khó; đối với học sinh trung bình và yếu càng khó hơn

Thực tế giảng dạy đặt ra vấn đề: làm thế nào để học sinh hiểu bài, có khảnăng tư duy vận dụng để giải quyết các bài tập, từ đó khơi dậy tính tích cực, chủđộng, sáng tạo và say mê tìm tòi dẫn đến yêu thích môn học là điều quan trọngđối với mỗi giáo viên

Bên cạnh đó, nếu sau một thời gian học sinh không biết cách vận dụng lýthuyết vào để làm các bài tập và cảm thấy khó khăn khi giải quyết vấn đề sẽ dẫnđến tình trạng các em thụ động trong việc tiếp thu bài giảng, không còn hứngthú với môn học Để giải quyết vấn đề này là không phải là đơn giản

Trang 6

Do đó khi giảng dạy nội dung bài 18 chương VI- Tin học 11 tôi đã ápdụng SKKN của mình với hi vọng có thể giúp học sinh vận dụng để giải quyếtđược các bài tập lập trình có sử dụng chương trình con.

 Thuận lợi:

- Có nhiều tài liệu viết về chương trình con

- Thời lượng cho các tiết bài tập và thực hành Tin học khối 11 nhiềuthuận lợi cho việc áp dụng các bài tập trong sáng kiến vào bài dạy

- Các phòng học đều có máy chiếu, có phòng máy đáp ứng được cácyêu cầu giảng dạy của bộ môn

- Sự quan tâm và chỉ đạo kịp thời của Ban giám hiệu nhà trường

 Khó khăn:

- Chương trình con là một phần mới và khó đối với học sinh

- Môn tin là môn học không không được học sinh đầu tư nhiều thờigian như các môn học khác

- Để học tốt chương trình tin học 11 học sinh phải có nền tảng tư duytoán học

2.3 Các biện pháp tiến hành để giải quyết

Sự khác nhau cơ bản của tham trị và tham biến

Ngoài sự khác nhau trong cách khai báo, trong lệnh gọi chương trình con

mà học sinh dễ dàng nhận biết thì sự khác nhau về bản chất của tham trị và thambiến lại thực sự là một vấn đề khá phức tạp và dễ nhầm lẫn trong quá trình viếtchương trình giải quyết các bài toán Vậy làm thế nào để học sinh nhận biếtđược sự khác nhau cơ bản giữa tham trị và tham biến?

Giá trị của tham biến thay đổi còn giá trị của tham trị không thay đổi sau khi thực hiện lời gọi chương trình con.

Bài toán 1: Quan sát kết quả thực hiện chương trình và cho biết:

a Tham biến và tham trị sử dụng trong chương trình?

b Đưa ra nhận xét về sự thay đổi giá trị của tham biến và tham trị sau khi lệnh gọi thủ tục được thực hiện?

Program ThamSo;

Var x,y:integer;

Procedure Gia_tri(Var a:integer; b:integer);

Begin

Trang 7

Hoạt động 1: Phát hiện nội dung tương thích

Bài toán 1a học sinh nhận biết tham trị và tham biến thông qua phần đầu

chương trình con có sử dụng từ khóa Var trong danh sách tham số hay không?

Do đó học sinh chỉ ra trong danh sách tham số a là tham biến còn b là tham trị

Và trong lệnh gọi thủ tục tương ứng thì x là tham biến, y là tham trị

Hoạt động 2: Phân tách hoạt động thành các hoạt động thành phần Bài toán 1b, đầu tiên x và y được truyền giá trị là x:=10; y:=10;

Khi lệnh gọi thủ tục Thamso(x,y) được thực hiện, do tham biến là biếnchứa dữ liệu ra nên giá trị của tham biến x sẽ bị tác động bởi câu lệnh trong thủtục a:=5 (Tương ứng là x:=5)

Bên cạnh đó, khi lệnh gọi thủ tục Thamso(x,y) được thực hiện, do tham trị

là các giá trị cụ thể nên lệnh gọi lúc này có thể hiểu là Thamso(x,10) Chính vì

Trang 8

vậy giá trị của y không bị thay đổi bởi lệnh b:=5 trong thủ tục và giá trị của yvẫn là 10

Kết luận: Sau khi thực hiện lệnh gọi chương trình con, giá trị của tham biến thay đổi còn giá trị của tham trị không thay đổi.

3 Chương trình con có tham số sử dụng tham biến và tham trị như thế nào?

Bài toán 2: Quan sát chương trình và cho biết kết quả của chương trình sau khi thực hiện? Và cho biết để nhận được kết quả phù hợp cần sử dụng tham biến hoặc tham trị như thế nào?

Hoạt động 1: Phát hiện nội dung tương thích:

Thuật toán sử dụng trong chương trình con là thuật toán tráo đổi giá trị củahai số x,y cho thông qua biến trung gian tg mà các em đã được học trong bàitoán sắp xếp mảng một chiều Do đó học sinh sẽ phát hiện được chương trìnhcon là thủ tục thực hiện công việc tráo đổi giá trị của hai số nguyên x,y

Hoạt động 2: Phân tách hoạt động thành các hoạt động thành phần

Hoạt động 2.1: Danh sách tham số sử dụng trong chương trình là tham

biến hay tham trị?

Trang 9

Thông qua việc khai báo danh sách tham số các em nhận biết được x và y

là tham trị; còn trong lệnh gọi thủ tục Hoandoi(a,b) hai tham số a,b là tương ứngvới x,y nên a và b là tham trị

Hoạt động 2.2: Tìm hiểu hoạt động của chương trình thông qua hoạt động

của các câu lệnh và đưa ra kết quả sau khi thực hiện chương trình.

Thủ tục Hoandoi(x,y) trong ví dụ này dùng để đổi giá trị giữa 2 biếnnguyên x và y Tuy nhiên khi chạy chương trình, điều này không xảy ra Giá trịcủa 2 biến nguyên a và b trước khi gọi thủ tục a có giá trị bằng 5, b có giá trịbằng 10 và sau khi gọi thủ tục Hoandoi(a,b) giá trị của a, b có giá trị vẫn khôngđổi: a=5, b=10 Việc phát hiện giá trị của a,b không thay đổi sau khi thực hiện

lệnh gọi thủ tục là do “Giá trị của tham trị không thay đổi” (Kết luận của Bài

toán 1) và kết quả trên màn hình là:

Hoạt động 2.3: Chỉnh sửa lại chương trình cho phù hợp.

Rõ ràng lỗi xảy ra do thủ tục Hoandoi(x,y) sử dụng tham trị nên các giá trịcủa các biến a và b không bị ảnh hưởng bởi các lệnh tráo đổi giá trị trong thủtục Nếu muốn nhận được giá trị của a=10 và b=5 thì trong danh sách tham sốcủa chương trình con cần phải khai báo các tham số x, y là tham biến:

Procedure Hoandoi(Var x,y:integer);

Khi đó chương trình sẽ cho kết quả như mong muốn: a=10, b=5 Và trênmàn hình kết quả sẽ là:

Trang 10

Đây là một ví dụ điển hình để chỉ ra cho học sinh thấy khi nào cần sử dụngtham trị và tham biến trong chương trình con.

Kết luận: Việc sử dụng tham trị hay tham biến cho một tham số là không thể tuỳ tiện vì nó có thể dẫn đến những kết quả sai với yêu cầu của bài toán Bài toán trên đã minh hoạ các tình huống có thể xảy ra Chương trình cho kết quả sai khi sử dụng tham trị, nếu sửa lại việc khai báo các tham số trong thủ tục Hoandoi là tham biến thì chương trình sẽ cho kết quả đúng với yêu cầu của bài toán.

4 Một số bài tập đơn giản để rèn luyện kĩ năng cho học sinh trong việc sử dụng tham trị và tham biến khi lập trình có cấu trúc

Bài toán 3: Sử dụng chương trình con để lập trình tính chu vi và diện tích hình chữ nhật có độ dài các cạnh là a, b Với a, b nguyên dương nhập vào từ bàn phím.

Hướng dẫn:

Hoạt động 1: Phát hiện nội dung tương thích:

* Câu lệnh gán để tính chu vi và diện tích hình chữ nhật;

* Lựa chọn chương trình con phù hợp;

* Danh sách tham số cần sử dụng;

Hoạt động 2: Phân tách hoạt động thành các hoạt động thành phần:

Hoạt động 2.1: Xây dựng các câu lệnh gán để tính chu vi và diện tích hình

chữ nhật có kích thước a,b:

CV:=(a+b)*2;

DT:=a*b;

Trang 11

Hoạt động 2.2: Khi lựa chọn chương trình con cần sử dụng trong chương

trình thì học sinh xác định cần phải dùng thủ tục vì trong trường hợp này nếu dùng Hàm thì cần phải viết 2 Hàm: một hàm tính chu vi và một hàm tính diện

tích vì vậy chương trình sẽ dài hơn và mất thời gian

Hoạt động 2.3: Viết chương trình con dạng thủ tục tính chu vi và diện tích

hình chữ nhật có kích thước a,b

Để viết chương trình con, học sinh cần xác định xem danh sách tham sốcần sử dụng là những tham số nào? Và trong đó những tham số nào khai báo làtham trị và tham biến?

Trong bài toán này, các cạnh của hình chữ nhật sẽ có giá trị không thay đổinên cần khai báo là tham trị; còn chu vi và diện tích cần phải tính trong thủ tụcnên khai báo là tham biến Do đó danh sách tham số gồm bốn tham số, trong đó

x, y là tham trị với mục đích lưu trữ độ dài các cạnh của hình chữ nhật và CV,

DT là tham biến với mục đích lưu trữ giá trị CV, DT sau khi tính

Thủ tục được học sinh viết như sau:

Procedure Tinh(x,y:word; Var CV,DT:word);

Begin

CV:=(x+y)*2;

DT:=x*y;

end;

Hoạt động 2.4: Hoàn thiện chương trình

Dựa vào các hoạt động trên, học sinh sẽ tiến hành viết chương trình hoànchỉnh để giải quyết bài toán ban đầu:

Ngày đăng: 17/10/2017, 09:29

HÌNH ẢNH LIÊN QUAN

Đây là một ví dụ điển hình để chỉ ra cho học sinh thấy khi nào cần sử dụng tham trị và tham biến trong chương trình con. - Hướng dẫn học sinh phân biệt và sử dụng tham biến và tham trị trong lập trình có cấu trúc thông qua nội dung bài 18 – chương VI – tin học 11 ví dụ về cách viết và sử dụng chương trình con
y là một ví dụ điển hình để chỉ ra cho học sinh thấy khi nào cần sử dụng tham trị và tham biến trong chương trình con (Trang 10)
Kết quả SKKN được thể hiện qua các bảng thống kê tỷ lệ bài kiểm tra nội dung kiến thức chương VI qua các năm: - Hướng dẫn học sinh phân biệt và sử dụng tham biến và tham trị trong lập trình có cấu trúc thông qua nội dung bài 18 – chương VI – tin học 11 ví dụ về cách viết và sử dụng chương trình con
t quả SKKN được thể hiện qua các bảng thống kê tỷ lệ bài kiểm tra nội dung kiến thức chương VI qua các năm: (Trang 16)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w