1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Phát huy tính tích cực, yêu thích lập trình của học sinh thông qua một số bài tập có nội dung thực tiễn trong chương trình tin học 11

24 100 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 24
Dung lượng 1,08 MB

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

Nội dung

Trong các sách giáo khoa môn Tin và cáctài liệu tham khảo về Tin học thường chỉ tập trung chú ý những vấn đề, nhữngbài toán trong toán học; số lượng ví dụ, bài tập có nội dung liên môn v

Trang 1

MỤC LỤC

MỤC LỤC……….……… 1

1 Mở đầu ……….……2

1.1 Lí do chọn đề tài……… 2

1.2 Mục đích nghiên cứu………3

1.3 Đối tượng nghiên cứu……… ….3

1.4 Phương pháp nghiên cứu……… 3

2 Nội dung……….……4

2.1 Cơ sở lí luận …… … ……….….4

2.2 Những quan điểm cá nhân về vấn đề xây dựng hệ thống bài tập có nội dung thực tiễn …… …… ……… 5

2.3 Các giải pháp giải quyết vấn đề…… ………… 5

2.3.1 Hệ thống bài tập có nội dung thực tiễn ………… 5

Bài tập 1….……….5

Bài tập 2….……….7

Bài tập 3….……….7

Bài tập 4….……….9

Bài tập 5….……… 10

Bài tập 6….……… 11

Bài tập 7….……… 13

Bài tập 8….……… 15

2.3.2 Một số gợi ý về phương pháp dạy học sử dụng hệ thống bài tập đã được xây dựng ……….16

2.4 Hiệu quả của sáng kiến kinh nghiệm … 17

3 Kết luận và kiến nghị… ….……… 21

3.1 Kết luận…….……….21

3.2 Kiến nghị… …… ……….……… …… 21

TÀI LIỆU THAM KHẢO ……….23

DANH MỤC SÁNG KIẾN……… ….24

Trang 2

1 Mở đầu

1.1 Lí do chọn đề tài

Do yêu cầu đổi mới về phương pháp dạy học và chương trình Tin họcphổ thông Định hướng đổi mới phương pháp dạy học đã được cụ thể hóatrong chỉ thị của Bộ giáo dục và đào tạo đã nêu: “ 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 trưng của môn học,đặc điểm đối tượng học sinh, điều kiện của từng lớp học; bồi dưỡng cho họcsinh phương pháp tự học, khả năng hợp tác; rèn luyện kĩ năng vận dụng kiếnthức vào thực tiễn, tác động đến tình cảm, đem lại niềm vui, hứng thú và tráchnhiệm học tập cho học sinh

Môn Tin học phổ thông hiện nay trong trường phổ thông thì yêu cầukiến thức, kỹ năng trong phần lập trình là rất ít Bản thân môn Tin học phổthông không được coi trọng và không có trong danh sách các môn thi tốtnghiệp hay thi vào các trường đại học, cao đẳng

Những ứng dụng của Tin học vào thực tiễn trong chương trình và sáchgiáo khoa, cũng như trong thực tế dạy học Tin học chưa được quan tâm mộtcách đúng mức và thường xuyên Trong các sách giáo khoa môn Tin và cáctài liệu tham khảo về Tin học thường chỉ tập trung chú ý những vấn đề, nhữngbài toán trong toán học; số lượng ví dụ, bài tập có nội dung liên môn và thực

tế trong các sách giáo khoa để học sinh học và rèn luyện còn rất ít

Hiện nay Bộ giáo dục vào đào tạo đã thiết kế lại Chương trình đổi mớigiáo dục phổ thông (bắt đầu áp dụng trong năm học 2019 – 2020) Trong đó

có môn Tin học sẽ là môn học bắt buộc trong nhà trường từ lớp 3 đến lớp 12.Trong đó mảng kiến thức khoa học máy tính (Computer Science – CS) sẽđóng vai trò trung tâm, vì vậy kỹ năng lập trình sẽ đóng vai trò rất lớn trongChương trình Tin học phổ thông mới

Tổng thống Mỹ Barack Obama từng nói: “Đừng chỉ chơi game trên điệnthoại, hãy học lập trình ở đó” Mang đến cho trẻ em cơ hội học lập trình trongchương trình Tin học phổ thông không chỉ giúp chúng thành công trong tươnglai nhờ được học những thứ cần thiết mà còn khiến trẻ có kỹ năng tất cả vấn

đề tốt hơn

Trang 3

Vì những lí do trên tôi chọn đề tài nghiên cứu của sáng kiến là: 'Phát huy tính tích cực, yêu thích lập trình của học sinh thông qua một số bài tập

có nội dung thực tiễn trong chương trình Tin học 11"

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

Nghiên cứu cơ sở lý luận và thực tiễn của vấn đề rèn luyện cho họcsinh năng lực vận dụng kiến thức Tin học để giải quyết một số bài toán có nộidung thực tiễn; xây dựng hệ thống bài tập có nội dung thực tiễn trong dạyhọc Tin học 11 ở trường THPT, đồng thời đưa ra những gợi ý, lưu ý vềphương pháp dạy học hệ thống bài tập đó

1.3 Nhiệm vụ nghiên cứu

Sáng kiến có nhiệm vụ giải đáp những câu hỏi khoa học sau đây:

- Vai trò và ý nghĩa của việc rèn luyện cho học sinh năng lực vận dụng

kiến thức Tin học để giải quyết các bài toán có nội dung thực tiễn như thếnào

- Nghiên cứu việc xây dựng một hệ thống bài tập có nội dung thực tiễn,

nhằm đáp ứng yêu cầu rèn luyện cho học sinh năng lực vận dụng kiến thứcTin học để giải quyết một số bài toán có nội dung thực tiễn

- Thực nghiệm sư phạm để minh họa tính khả thi và hiệu quả của việclựa chọn Hệ thống bài tập có nội dung thực tiễn

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

- Nghiên cứu lý luận;

- Điều tra thực tế;

- Thực nghiệm sư phạm

Trang 4

2.1.2 Tại sao nên áp dụng kỹ năng lập trình để giải quyết các bài toán thực tế?

Giáo sư Niklaus Wirth- Cha đẻ của Pascal đã nói rằng:

‘‘ Có người cho rằng Pascal được thiết kế như một ngôn ngữ để giảng dạy Mặc dù điều này là đúng, nhưng việc sử dụng nó để giảng dạy không phải là mục đích duy nhất Thực tế, tôi không tin vào sự thành công của việc

áp dụng trong khi học các công cụ và phương pháp mà không thể sử dụng để giải quyết các bài toán thực tế” [1]

2.1.3 Vai trò của việc rèn luyện cho học sinh năng lực vận dụng kiến thức Tin học vào thực tiễn

- Lập trình là một kỹ năng quan trọng trong thế kỷ 21 Rèn luyện cho họcsinh năng lực vận dụng kiến thức Tin học vào thực tiễn là phù hợp với xuhướng phát triển chung của thế giới và thực tiễn Việt Nam ; là một yêu cầu cótính nguyên tắc góp phần phản ánh được tinh thần và sự phát triển theo hướngứng dụng cao của Tin học

Để thực hiện nguyên tắc kết hợp lí luận với thực tiễn trong việc dạy học Tin học,cần:

+ Đảm bảo cho học sinh nắm vững kiến thức Tin học để có thể vận dụng chúngvào thực tiễn;

+ Chú trọng nêu các ứng dụng của Tin học vào thực tiễn, rèn luyện cho học sinh

có những kỹ năng lập trình vững chắc;

+ Chú trọng công tác thực hành tin học trong nội khóa cũng như ngoại khóa

- Rèn luyện năng lực vận dụng kiến thức Tin học vào thực tiễn, giúp học

sinh có kỹ năng thực hành và làm quen dần các tình huống thực tiễn

Trang 5

2.2 Những quan điểm cá nhân về vấn đề xây dựng hệ thống bài tập

có nội dung thực tiễn

Hệ thống bài tập có nội dung thực tiễn trong giảng dạy Tin học 11 vớichủ ý làm đậm nét hơn nữa các ứng dụng của Tin học vào thực tiễn Sáng

kiến đưa ra sẽ nhằm vào tính mục đích, tính khả thi, tính hiệu quả của việc

xây dựng hệ thống bài tập có nội dung thực tiễn

- Mục đích của hệ thống bài tập có nội dung thực tiễn được xác định dựa trên cơ sở những mục đích chung của giáo dục đó là hệ thống bài tập có nội

dung thực tiễn với ý nghĩa ứng dụng rõ rệt, thông qua quá trình rèn luyện chohọc sinh khả năng và ý thức sẵn sàng ứng dụng Tin học vào thực tiễn

- Tính khả thi của Hệ thống bài tập có nội dung thực tiễn được hiểu là

khả năng thực hiện được (xây dựng được, sử dụng được) hệ thống bài tập nàytrong thực tế dạy học ở trường THPT hiện nay

- Tính hiệu quả của việc xây dựng hệ thống bài tập có nội dung thực tiễn

trong dạy học Tin học được hiểu là sự tiến bộ vững chắc, mức độ thành thạotrong việc giải các bài tập có nội dung thực tiễn của học sinh, hình thành vàphát triển ở học sinh thói quen và hứng thú vận dụng kiến thức Tin học vàocác tình huống trong học tập, lao động sản xuất và trong đời sống

2.3 Các giải pháp giải quyết vấn đề

2.3.1 Hệ thống bài tập có nội dung thực tiễn

Bài tập 1 Trả tiền điện

Cho bảng giá tiền điện sinh hoạt được tính theo giá bán lẻ theo các bậc sau:

Trang 6

một tháng Biết rằng thuế VAT là 10%.

Dữ liệu: Nhập từ bàn phím số nguyên dương là số kW điện

mà một hộ gia đình dùng trong một tháng

Kết quả: In ra màn hình ba giá trị tương ứng trên ba dòng, mỗi số gồm hai

chữ số thập phân

Dòng 1: Số tiền tương ứng với giá bán điện của công ty.

Dòng 2: Số tiền tương ứng với thuế VAT

Dòng 3:Tổng số điện mà hộ gia đình đó phải trả trong tháng đó.

Nhận xét: Đây là một bài toán rất thực tế, gắn liền với thực tiễn, liên quan

đến quyền lợi, ý thức, trách nhiệm, nghĩa vụ của mối gia đình Hiện nay, giá

tiền điện sinh hoạt mà mỗi hộ gia đình hải trả hàng tháng được tính giá điện bậc thang, lũy tiến, dùng nhiều trả nhiều.

Thông qua bài này giáo viên cũng giáo dục cho học sinh rằng: chức năngchính của biểu giá điện bậc thang ta thấy chi phí trả tiền điện là rất lớn, quađây giáo dục cho học sinh ý thức tiết kiệm điện trong tiêu dùng để dành điệncho sản xuất vì điện năng là nguồn năng lượng quý và luôn luôn bị thiếu hụt

Do phải trả tiền nhiều hơn gấp bội khi dùng nhiều thì buộc lòng phải tiết kiệmlại, chứ nếu chỉ có tuyên truyền thì không hiệu có quả

else G:=50*1678+50*1734+100*2014+200*2536+ 300*2834+ 400)*2927;

Trang 7

Nhập vào ngày, tháng, năm sinh dương lịch của em rồi cho biết em được sinhvào ngày thứ mấy trong tuần.

Nhận xét: Tôi nghĩ đây là bài toán rất tạo hứng thú lập trình cho học sinh Ai

cũng muốn biết mình hoặc người bạn của mình được sinh khi nào, vào thứmấy

Tôi cung cấp cho học sinh cách tính thứ trong tuần như sau:

thu:=abs(ngay+2*thang+3*(thang+1) div 5+nam+nam div 4) mod 7;

if thu=0 then writeln('chu nhat') else writeln( thu+1);

readln

end

Bài tập 3 Đọc số

Cho trước một số nguyên dương N( N<1000) Hãy đưa ra cách đọc số đó

Dữ liệu vào: File văn bản DOCSO.INT chứa một số nguyên dương N.

Dữ liệu ra: File văn bản DOCSO.OUT chứa xâu đọc tương ứng.

Ví dụ: 145 đọc là : mot tram bon muoi lam

Nhận xét: Bài toán này xuất phát từ thực tế các em đã được học trong toán rất

cơ bản, và ai cũng biết cách đọc và quy luật đọc Tạo hứng thú các em vận dụng kiến thức môn tin học vào lập trình để giải quyết bài toán

Chương trình

program bai3;

Trang 8

if x mod 10 =5 then s:= s+'lam '

else s:= s+' '+ a[x mod 10] end

else

begin

s:= s+' '+a[ x div 10] +' muoi';

if x mod 10= 4 then s:= s+' tu' else

if x mod 10 = 5 then s:= s+' lam' else

Trang 9

Theo dương lịch năm được biểu diễn bằng một số nguyên Theo âm lịch năm

được gọi theo can và chi Ví dụ năm dương lịch 2019 được gọi là năm Kỉ Hợi Trong đó Kỉ là can và Hợi là chi.

Có tất cả 10 can: Giáp, Ất, Bính, Đinh, Mậu, Kỉ, Canh, Tân, Nhâm, Quý

Có tất cả 12 chi: Tí, Sửu, Dần, Mão, Thìn, Tỵ, Ngọ, Mùi, Thân, Dậu, Tuất,Hợi

Yêu cầu: Hãy nhập vào một năm dương lịch và đưa ra màn hình tên gọi năm

âm lịch tương ứng ( dưới dạng tiếng Việt không dấu)

Nhận xét: Đây là một bài toán xem ra vô cùng đơn giản Tuy nhiên, nó chỉ dễ

với một số người, đặc biệt là người lớn Các bạn trẻ hiện nay hầu như chỉ biết

đến 12 con giáp, tương ứng với 12 Chi, chứ để tính Can thì hầu như các bạn

không để ý tới Để gợi ý cho học sinh biết làm bài này thì tôi gợi ý để các emhọc sinh tìm ra quy luật gán mảng hằng tương ứng với các chỉ số

Ví dụ: Năm 2019 là năm Kỉ Hợi

Can=2019 mod 10 -> 9 -> Kỉ Nên ta sẽ đánh dấu mảng Can vớiCan[0]= ‘Canh’;

Chi=2019 mod 12 -> 3 -> Hợi Nên ta sẽ đánh dấu mảng Chi vớiChi[0]= ‘Than’;

Chương trình

Trang 10

Bài tập 5 Chuẩn hóa xâu họ tên

Nhập từ bàn phím xâu hoten họ và tên đầy đủ của một người dưới dạng chữ

in thường Thực hiện chuẩn hóa xâu trên và in kết quả ra màn hình

Nhận xét: Giáo viên nhắc lại cho học sinh xâu họ tên được chuẩn hóa theo

Tiếng Việt là xâu: mỗi từ được phân cách nhau bởi một khoảng trắng và các

kí tự đầu từ của tên người hải được viết hoa Như vậy việc đầu tiên là ta thựchiện xóa các khoảng trắng không hợp lệ ở đầu xâu, cuối xâu, giữa xâu rốithực hiện chuyển các kí tự đầu từ sang in hoa

Chương trình:

Program chuan_hoa_xau;

Var hoten:string; i,n:byte;

begin

Writeln(' nhap xau ho ten'); readln(hoten);

while hoten[1]=' ' do delete(hoten,1,1);

while hoten[length(hoten)]=' ' do delete(hoten,length(hoten),1);

while pos(' ',hoten)<>0 do delete(hoten,pos(' ',hoten),1);

hoten[1]:=upcase(hoten[1]);

for i:=2 to length(hoten)-1 do

if hoten[i]=' ' then hoten[i+1]:=upcase(hoten[i+1]);

writeln( ' xau chuan hoa la: ', hoten);

Trang 11

readln

end

Bài tập 6 Bán hàng qua mạng[6]

Trang là một học sinh THPT trường X Là một học sinh nhưng em có

sở thích và niềm đam mê trong lĩnh vực kinh doanh qua mạng Mặt hàng embán là bút bi Qua một thời gian kinh doanh, đơn hàng ngày càng tăng, sốlượng bút bi nhập về ngày càng nhiều Để có thể nhanh chóng giao hàng chokhách, Trang muốn sắp xếp những chiếc bút theo màu sắc Trang có dãy bút

bi gồm các màu Xanh, Tím, Hồng Vì số lượng bút là rất lớn và không cónhiều thời gian nên Trang muốn nhờ các bạn học sinh giỏi bộ môn Tin thamgia kỳ thi chọn Học sinh giỏi cấp tỉnh năm 2018 sắp xếp giúp Em hãy giúpTrang sắp xếp lại dãy bút bi theo quy luật Xanh - Hồng - Tím

Dữ liệu vào: cho bởi file SORT.INP gồm 2 dòng:

Dòng 1: Ghi số N là số lượng bút bi (1 ≤ N ≤ 106)

Dòng 2: Gồm N kí tự mô tả dãy bút bi ( X – Xanh, T – Tím, H –

Hồng), các màu được phân cách nhau bởi một dấu cách

Dữ liệu ra: Ghi ra file SORT.OUT kết quả của dãy sau khi đã được sắp xếp đúng thứ tự, các kí tự được phân cách bởi một dấu cách.

10

X H X X X H X X X X

X X X X X X X X H H

Nhận xét: Ớ bài tập này học sinh bắt đầu làm quen với dạng bài tập khó hơn,

kết hợp thuật toán sắp xếp và dữ liệu kiểu tệp Mỗi loại màu bút bi nhập vào

sẽ được lưu vào một giá trị của mảng B Sắp xếp mảng B rồi in ra theo thứ tự

Trang 12

if B[i]=1 then write(f2,'X ')

else if B[i]=2 then write(f2,'H ')

else if B[i]=3 then write(f2,'T ');

Trang 13

một dãy gồm 4 chữ số Do phần lớn dùng vân tay nên mật mã bằng số Namgần như không sử dụng đến Để không bị quên mật mã này Nam phải mã hóadãy số đó và ghi vào sổ cất giữ.

Cách thức mã hóa của Nam như sau Nam lấy lần lượt 4 chữ cái bất kỳ

từ A Z trong bảng chữ cái tiếng Anh đại diện lần lượt cho 4 chữ số trongmật mã Chữ cái nhỏ nhất đại diện cho chữ số đầu tiên, chữ cái lớn tiếp theođại điện cho chữ số thứ 2, cứ như thế chữ cái lớn nhất sẽ đại diện cho chữ sốcuối cùng Số lượng các chữ cái này đúng bằng độ lớn của số mà nó đại diện

Để gây nhiểu và tăng bảo mật Nam còn dùng thêm nhiều chữ cái khác nhau,các chữ cái gây nhiểu luôn luôn có số lượng lớn hơn 9

Sau đó Nam ghi ngẫu nhiên các chữ cái trên vào sổ và cất giữ chúng

Yêu cầu: Hãy xây dựng chương trình giúp Nam giải ra mật mã của Iphone mà

Nam đã lưu trong sổ Biết rằng các chữ số trong mật mã luôn lớn hơn 0, tổng

số lượng các chữ cái gây nhiễu luôn nhỏ hơn hoặc bằng 104

Dữ liệu: Vào từ file văn bản MATMA.INP có nhiều dòng chứa các chữ cái từ

ZZCZPAPPAMMAQCQPPPPZAZZQMMQQMZZ

PYZCZZAYYDCDQPACFFG

2431

Nhận xét: Trong bài tập này khi mới nhìn vào học sinh sẽ cảm thấy khó hiểu.

Giáo viên gợi ý dùng đếm phân phối đếm từng kí tự nhập vào Rồi in ra sốlượng 4 kí tự xuất hiện ít nhất theo yêu cầu của đề bài

Chương trình

Trang 14

if (dem[j]>= 1) and (dem[j]<=9)then begin write(f2,dem[j]);

inc(d);end; if d=4 then break;

vị trí trên con đường này Đầu con đường được đánh tọa độ bắt đầu từ 0 Tại

vị trí có tọa độ X (đơn vị chiều dài) có số lượng người sẽ sử dụng dịch vụ là

Y Trước mắt, nhà cung cấp dịch vụ cần đặt một trạm phát sóng có bán kính

Trang 15

phủ sóng là K đơn vị chiều dài để phủ sóng cho một số người sử dụng dịch vụtrên con đường này.

Yêu cầu: Bạn hãy xác định vị trí đặt trạm phát sóng sao cho trạm có thể phục

vụ được số lượng người sử dụng nhiều nhất có thể

Dữ liệu: cho trong file văn bản MOBI.INP có cấu trúc như sau:

 Dòng đầu tiên ghi hai số nguyên N và K (0<N ≤106, 0<K≤2*106), trong

đó N là số điểm dân cư đã được đánh dấu, K là bán kính phủ sóng củatrạm

 Trong N dòng tiếp theo, dòng thứ i (i=1 N) ghi hai số nguyên X[i] vàY[i] cho biết tại vị trí X[i] có số lượng người dùng là Y[i] (0≤ X[i]

≤106, 0≤Y[i] ≤104) Các số trên cùng dòng viết cách nhau ít nhất mộtdấu cách

Kết quả: Ghi ra file văn bản MOBI.OUT một số nguyên cho biết số người

Nhận xét: Đọc file vào mảng Y, với Y[i] là số lượng người dùng tại tọa độ i.

tạo biến S, là tổng của Y[1]->Y[2*k] Cập nhập kết quả Dần dần tịnh tiến sang bên phảỉ Tại vị trí nào tổng số người phục vụ là nhiều nhất thì ta lấy tổng đó

Chương trình:

Const fi='MOBI.INP'; fo='MOBI.OUT'; nmax=1000000;

Var f:text; Y:array[0 4*nmax+2] of longint; x,n,k,S,res,i:longint;begin

assign(f,fi); reset(f); readln(f,n,k); fillchar(y,sizeof(y),0);

for i:=1 to n do readln(f,x,y[x]); s:=0;

for i:=0 to 2*k d s:=s+y[i];

res:=s;

Ngày đăng: 21/10/2019, 20:27

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