Sáng kiến kinh nghiệm Phương pháp giải từ một bài toán đến một chương trình máy tính - Môn Tin học 8

Ngày này, công nghệ thông tin(CNTT) đã thâm nhập vào mọi lĩnh vực trong cuộc sống. Nó là một trong các phương tiện quan trọng nhất của sự phát triển, đang làm biến đổi sâu sắc đời sống kinh tế, văn hóa, xã hội, giáo dục của thế giới trong đó có Việt Nam. Chúng ta đang ở trong thời đại thông tin kỹ thuật số, thời đại internet.

Ngày nay, kiến thức và kĩ năng CNTT đã trở thành nhu cầu thiết yếu với mọi công dân trên toàn cầu, đối với mọi lứa tuổi và mọi lĩnh vực. Không những thế thông qua Tin học một cách gián tiếp học sinh có thêm nhiều cơ hội tiếp thu kiến thức mới.

Chính vì vậy, chương trình giáo dục phổ thông mới, Tin học sẽ là một môn học chính khóa, những năm gần đây ở cấp THCS Tin học là môn học tự chọn ở tất cả các lớp của bậc học.

Môn Tin học ở bậc THCS không những bước đầu giúp học sinh làm quen với một số kiến thức cơ bản về CNTT như: Một số bộ phận của máy tính, soạn thảo văn bản, rèn luyện những kỹ năng sử dụng máy tính,...mà còn hình thành cho học sinh một số phẩm chất và năng lực cần thiết cho người lao động hiện đại như:

- Bước đầu hình thành năng lực :

+ Tổ chức và xử lí thông tin.

+ Phát triển tư duy giải thuật.

- Có thái độ đúng khi sử dụng máy tính và các chương trình Tin học.

- Bước đầu hiểu khả năng ứng dụng Tin học trong học tập cũng như ngoài xã hội.

- Có khả năng phân tích, tổng hợp, trừu tượng hóa, khái quát hóa vấn đề đặc biệt là phát triển tư duy sáng tạo.

Từ những lý do trên, Bộ GD & ĐT đã nghiên cứu và biên soạn chương trình sách giáo khoa Tin học cho học sinh lớp 8 với nội dung chính là “Lập trình đơn giản”.

Là một giáo viên giảng dạy bộ môn Tin học, tôi rất hiểu học sinh lớp 8 sẽ gặp rất nhiều khó khăn trong quá trình học môn Tin học. Quả thật như vậy, vì lập trình các em những kiến thức này hoàn toàn xa lạ từ trước đến nay. Bên cạnh đó, trong những năm qua môn Tin học ở bậc THCS chưa có sách giáo viên cụ thể hướng dẫn cho học sinh về cách phân tích lập trình nên việc học của học sinh phần lớn phụ thuộc vào mỗi giáo viên đứng lớp. Chính vì vậy, đã thôi thúc tôi nghiên cứu và viết nên sáng kiến với đề tài “PHƯƠNG PHÁP GIẢI TỪ MỘT BÀI TOÁN ĐẾN MỘT CHƯƠNG TRÌNH MÁY TÍNH

doc 22 trang Thanh Ngân 06/08/2025 390
Bạn đang xem 20 trang mẫu của tài liệu "Sáng kiến kinh nghiệm Phương pháp giải từ một bài toán đến một chương trình máy tính - Môn Tin học 8", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

Tóm tắt nội dung tài liệu: Sáng kiến kinh nghiệm Phương pháp giải từ một bài toán đến một chương trình máy tính - Môn Tin học 8

Sáng kiến kinh nghiệm Phương pháp giải từ một bài toán đến một chương trình máy tính - Môn Tin học 8
 Phương pháp giải từ một bài toán đến một chương trình trong máy tính
 - Có khả năng phân tích, tổng hợp, trừu tượng hóa, khái quát hóa vấn đề 
đặc biệt là phát triển tư duy sáng tạo.
 Từ những lý do trên, Bộ GD & ĐT đã nghiên cứu và biên soạn chương 
trình sách giáo khoa Tin học cho học sinh lớp 8 với nội dung chính là “Lập trình 
đơn giản”.
 Là một giáo viên giảng dạy bộ môn Tin học, tôi rất hiểu học sinh lớp 8 sẽ 
gặp rất nhiều khó khăn trong quá trình học môn Tin học. Quả thật như vậy, vì 
lập trìnhcác em những kiến thức này hoàn toàn xa lạ từ trước đến nay. Bên cạnh 
đó, trong những năm qua môn Tin học ở bậc THCS chưa có sách giáo viên cụ 
thể hướng dẫn cho học sinh về cách phân tích lập trình nên việc học của học 
sinh phần lớn phụ thuộc vào mỗi giáo viên đứng lớp. Chính vì vậy, đã thôi thúc 
tôi nghiên cứu và viết nên sáng kiến với đề tài “PHƯƠNG PHÁP GIẢI TỪ 
MỘT BÀI TOÁN ĐẾN MỘT CHƯƠNG TRÌNH MÁY TÍNH” 
2.Ý nghĩa và tác dụng của đề tài
 - Nhằm giúp học sinh nắm vững các kỹ năng và kiến thức cơ bản để từ đó 
tạo nên tiền đề cho việc học lập trình.
 - Tìm ra các bước giải bài toán trên máy tính trong chương trình môn Tin 
học 8 với phương pháp gần gũi cho học sinh dễ hiểu, dể tiếp thu và dễ nhớ.
 - Tạo cho học sinh rất hứng thú học môn Tin học nhất là tiết thực hành và 
rèn luyện cho học sinh tính tư duy, tính sáng tạo trong quá trình lập trình.
3. Phạm vi và thời gian nghiên cứu của đề tài
 - Trong quá trình giảng dạy môn tin học trung học cơ sở quyển 3 dành 
cho học sinh khối lớp 8. Học kì Inăm học 2018 – 2019.
4. Đối tượng nghiên cứu:
 - Học sinh lớp 8 trường THCS Trần Phú – Nam Bình Đăk Song - Đăk 
Nông.
II. GIẢI QUYẾT VẤN ĐỀ:
1. Cơ sở lý luận:
Người thực hiện: Bùi Thị Hiệu - 2 - Phương pháp giải từ một bài toán đến một chương trình trong máy tính
a) Thuận lợi:
 - Nhà trường tạo điều kiện để học sinh có thể học Tin học từ khối lớp 6, 
giờ học lý thuyết thì các em được học phòng riêng có trang bị máy tính và máy 
chiếu.
 - Hằng năm,nhà trường kết hợp với Hội phụ huynh tu sửa máy tính củ, 
mua sắm máy tính mới trong phòng thực hành.
 - Vì là môn học trực quan, sinh động môn học khám phá những lĩnh vực 
mới nên học sinh rất hứng thú học.
b) Khó khăn:
 - Tuy được sự quan tâm sát sao của nhà trường cũng như Hội phụ huynh 
nhưng số máy trong phòng thực hành cũng chưa đủ cho cả lớp vào thực hành 
một lúc mà giáo viên phải chia thành 2 ca để học sinh thực hành.
 - Đời sống kinh tế của gia đình học sinh còn khó khăn nên đa số học sinh 
không có máy tính để học ở nhà đa phần là học trên lớp.
 - Một số em còn ham chơi khi học nên dẫn tới các em không chắc kiến 
thức.
 - Trong quá trình giảng dạy chương trình tin học lớp 8, tôi nhận thấy các 
em tiếp cận với môn học rấ khó khăn, phải làm rất nhiều lần và thực hành rất 
nhiều tiết thì các em mới hình dung được việc nhập và xuất dữ liệu.
 - Khi giải bài toán trên máy học sinh chỉ quan tâm đến công thức để tính 
toán ra kết quả bài toán mà quên các bước xác định thông tin vào, thông tin ra 
và xây dựng thuật toán. Khi chạy chương trình thì học sinh chưa nhận biết được 
kết quả chương trình đúng hay sai. 
 Ngôn ngữ lập trình Pascal là một phần mềm có cấu trúc và được nhiều 
độc giải quan tâm và chính ở đó có nhiều cuốn sách hay ra đời do nhiều tác giả 
viết. Song với bản thân khi lựa chọn viết đề tài “PHƯƠNG PHÁP GIẢI TỪ 
MỘT BÀI TOÁN ĐẾN MỘT CHƯƠNG TRÌNH MÁY TÍNH” nhằm phát 
huy hết năng lực của học sinh, tạo cho các em sự đam mê tìm tòi những kiến 
thức mới. 
Người thực hiện: Bùi Thị Hiệu - 4 - Phương pháp giải từ một bài toán đến một chương trình trong máy tính
 B. PHẦN NỘI DUNG
I. Mục tiêu: 
 - Giúp học sinh định hướng được các bước giải từ bài toán đến chương trình 
trên máy vi tính trong chương trình môn Tin học 8 phù hợp nhất với học sinh.
 - Trên cơ sở nghiên cứu tính tích cực của học sinh trong giờ học môn Tin học 
8, đề xuất một số ý kiến nhằm nâng cao chất lượng dạy và học.
II. Mô tả giải pháp: 
 1. Các biện pháp tiến hành :
 Sau đây là phương pháp tổng quát để giải một bài toán bằng máy tính dựa 
trên ngôn ngữ pascal gồm các bước :
 1. Xác định bài toán: Là từ phát biểu của bài toán, ta xác định đâu là 
 thông tin cho trước (INPUT) và đâu là trông tin cần tìm 
 (OUTPUT)
 2. Xây dựng thuật toán: Tìm lời giải bài toán diễn tả bằng các lệnh 
 cần phải thực hiện.
 3. Viết chương trình: Dựa vào mô tả thuật toán ở trên, ta viết chương 
 trình bằng ngôn ngữ lập trình.
 Vì phương pháp cơ bản giải các bài toán trong tin học không chỉ dùng 
đểgiải một bài toán cụ thể mà còn giải một lớp các bài toán cụ thể thuộc cùng 
một loại nên ngoài việc nắm vững phương pháp lập trình tổng quát các em cần 
phải nhận biết dạng bài toán. Trong đề tài này, tôi hướng dẫn học giải quyết 2 
dạng bài toán sau: 
 Dạng 1:Bài toán đơn giản:tính diện tích, chu vi của các hình, tính trung bình 
cộng, tính kết quả từ công thức cho trước trong các bộ môn Toán, Vật lý, Hóa 
học, giải phương trình bậc nhất...
 Dạng 2: Bài toán có cấu trúc: Các bài toán này sử dụng các cấu trúc cấu như: 
If....then, If ....then....else, For ...to...do, While ...do, ...
Sau đây là các ví dụ minh họa quá trình giải từ bài toán đến chương trình máy 
tính:
Người thực hiện: Bùi Thị Hiệu - 6 - Phương pháp giải từ một bài toán đến một chương trình trong máy tính
 B2: TBC (a+b)/2
 B3: In ra màn hình TBC
 3.Viết chương trình:
 Program trungbinhcong;
 Uses crt;
 Var a,b:integer;TBC:Real;
 Begin
 Clrscrt;
 Write(‘Nhap so a:’);Readln(a);
 Write(‘Nhap so b:’);Readln(b);
 TBC:=(a+b)/2;
 Writeln(‘Trung binh congla:’TBC:10:2);
 Readln;
 End.
Bài 3: Viết chương trình tính chỉ số khối cơ thể theo BMI (Body Mass 
Index)theo công thứcBMI= w , trong đó w là cân nặng của một người (tính 
 H 2
bằng kilogam), h là chiều cao của một người(tính bằng mét)
 Giải
 1. Xác định bài toán:
 - Input: chỉ số cân nặng (w), chiều cao (h)
 - Out put: Chỉ số BMI
 2. Xây dựng thuật toán:
 B1: Nhập chiều cao w, cân nặng h
 B2: BMI  w/(h*h)
 B3: In ra màn hình chỉ số BMI
 3. Viết chương trình:
 Program chiso;
 Uses crt;
Người thực hiện: Bùi Thị Hiệu - 8 - Phương pháp giải từ một bài toán đến một chương trình trong máy tính
 S2:= ( * a*a)/2;
 SA := S1 + S2;
 Write(‘Dien tich hinh A la:’SA :10 :2) ;
 Readln ;
 End.
2)Dạng 2: Bài toán có cấu trúc.
* Sử dụng 2 câu lệnh điều kiện If then và If thenelse
Bài 1: Tìm số lớn nhất trong 3 số.
 Giải
1) Xác định bài toán:
 - Input: Nhập 3 số a, b, c
 - Output: In ra màn hình số lớn nhất
2) Xây dựng thuật toán:
 Bước 1: Nhập 2 số a, b
 Bước 2: Gán Max  a
 Bước 3: Nếu a<bthì gán max  b
 Bước 4: Thông báo kết quả max và kết thúc thuật toán.
3) Viếtchương trình 
 Program GTLN;
 Uses crt;
 Var a, b, Max : Integer;
 Begin
 Clrscr;
 Write (‘a=’) ; Readln(a);
 Write (‘b=’) ; Readln(b); Max: =a;
 If a < b thenMax : = b;
 Writeln (‘ gia tri lon nhat cua hai so a, b la :’, Max);
 Readln;
 End.
Người thực hiện: Bùi Thị Hiệu - 10 - Phương pháp giải từ một bài toán đến một chương trình trong máy tính
 Bước 1: Nhập số thực a, b
 Bước 2: Nếu a 0 phương trình có nghiệm duy nhất: x:= -b/a và chuyển 
 đến bước 4.
 Bước 3:ngược lại (tức a = 0): Nếu b= 0 phương trình vô định; Nếu b0 
 phương trình vô nghiệm
 Bước 4: Kết thúc.
3. Viết chương trình.
 Program GPTBN;
 var a, b: Real;
Begin
 Write (‘ Nhap he so a,b cua phuong trinh:’); Readln (a,b);
 if a0 then
 Writeln (‘phuong trinh co nghiem duy nhat x=’, -b/a:0:4) else
 if b=0 then writeln (‘Phuongtrinh vo dinh’) else 
 writeln (‘ phuong trinh vo nghiem’);
 Readln;
End.
*Sử dụng cấu trúcvòng lặp:for  to do và while do
Bài 1: Chương trình tính tổng N số tự nhiên đầu tiên, với n là số tự nhiên được 
nhập từ bàn phím.
 1) Xác định bài toán:
 Input: Nhập n.
 Output: S = 1+2+3+  + n
 2) Mô tả thuật toán:
 Bước 1: S ← 0; i ← 0.
 Bước 2: i← i + 1
 Bước 3: nếu i ≤ n, thì S ← S + i và quay lại bước 2; ngược lại kết 
 thúc.
3) Viết chương trình:
Người thực hiện: Bùi Thị Hiệu - 12 - Phương pháp giải từ một bài toán đến một chương trình trong máy tính
 readln(n);
 P:= 1;
 for i:= 1 to n do
 P:= P*i;
 writeln( n, ‘! =‘, P);
 readln;
 end.
Bài 3: Viết chương trình để tính trung bình cộng n số nguyên nhập từ bàn phím. 
 Giải
 1. Xác định bài toán:
 INPUT: Nhập n, nhập n số nguyên.
 OUTPUT: Kết quả TBC của n số nguyên
 2. Xây dựng thuật toán:
 B1: Nhập giá trị của n( tính TBC bao nhiêu số);
 dem0; S0;
 B2:Trong khi dem <= n thì làm
 Nhập số thứ (1,2,3.n) (cho x)
 SS+x; demdem +1;
 B3: Tính TB S/n;
 B4: In kết quả TB, kết thúc chương trình.
 3. Viết chương trình.
 Program tinhTB;
 Uses Crt;
 Var n,dem: integer;
 x, S, TB: real;
 Begin
 ClrScr;
 Write(‘Muon tinh TB bao nhieu so n=’); Readln(n);
Người thực hiện: Bùi Thị Hiệu - 14 - Phương pháp giải từ một bài toán đến một chương trình trong máy tính
 uses crt;
 var n,i,Max,A: integer;
 begin
 clrscr;
 write('Nhap N='); readln(n);
 Max:=-32768;
 for i:=1 to n do
 begin write('Nhap so thu ',i,':'); readln(A);
 if Max<A then Max:=A end;
 writeln('So lon nhat: ',Max);
 end.
Tóm lại: 
 Quá trình xây dựng chương trình máy tính được thực hiện theo 3 bước. Ở 
mỗi bước được phân ra nhiều công việc khác nhau đó là: Đầu tiên các em đọc 
kỹ những chi tiết cụ thể đề bài để xác định đâu là điều kiện cho trước(INPUT) 
và kết quả thu được của bài toán là gì(OUTPUT), sau đó các em suy nghĩ tìm ra 
lời giải bài toán và trình bày lời giải bằng cách liệt kê các bước(thuật toán) và 
cuối cùng dùng ngôn ngữ lập trình(ngôn ngữ Pascal) tạo nên một chương trình 
trên máy tính.
 Từ những bài toán mà tôi đã nêu rất cụ thể các bước giải, các em có thể 
hiểu và khi gặp các bài toán khác thì các các em đã biết nơi bắt đầu và nơi kết 
thúc của việc tạo ra một chương trong máy tính mặc khác sau khi tôi đưa ra 
sáng kiến này vào áp dụngthì các em đã biết ngaydạng bài toán để tìm lời giải 
bài với thời gian rất nhanh. 
2. Hiệu quả của sáng kiến kinh nghiệm:
 - Đề tài này có thể vận dụng cho tất cả học sinh mới bắt đầu học lập trình 
bằng ngôn ngữ lập trình Pascal.
 - Trong quá trình giảng dạy tôi đã áp dụng sáng kiến nêu trên, qua khảo 
sát thực tế của học sinh, tôi đã thấy chất lượng bộ môn đạt kết quả cao.
Người thực hiện: Bùi Thị Hiệu - 16 - Phương pháp giải từ một bài toán đến một chương trình trong máy tính
 C. KẾT LUẬN
 - Để đưa ra một phương pháp tối ưu cho một bài toán không đơn giản. 
Bởi một bài toán chúng ta có thể đưa ra nhiều phương pháp giải khác nhau. 
Song trong lập trình người giải không sử dụng đúng cách giải thì một bài toán 
lại đi ngược lại vàcho các kết quả khác nhau. Điều đó chứng tỏ cho thấy người 
lập trình cần phải nắm được các bước giải bài toán trong lập trình.
 - Vậy để giải quyết được bài toán trên máy tính điện tử sử dụng ngôn ngữ 
lập trình pascal nói chung và của lớp 8 nói riêng. Để nâng cao chất lượng dạy 
học tin ở các trường thcs và là một giáo viên tin học tôi muốn nói rằng chúng ta 
không chỉ dạy lý thuyết suông mà cần phải biết kết hợp thực hành . Để từ đó 
học sinh mới nhận thấy được ưu điểm của việc học chương trình này có lợi hơn 
ở điểm nào.
 - Tóm lại đây là chương trình học khá mới mẻ, các bài toán đưa ra để xây 
dựng một chương trình chưa có gì lạ phức tạp. Bởi có nhiều bài hay thì học sinh 
lớp 8 chưa học đến. Cho nên giáo viên cần phải nắm chắc các phương pháp để 
truyền đạt. Đồng thời cũng phối hợp chương trình toán đã học đến những phần 
nào để từ đó đưa ra các ví dụ, bài tập để học sinh có thể nắm chắc lý thuyết 
cũng như thực hành trên máy tính dễ tiếp thu. Và để từ đó các em rút ra được ưu 
điểm của các chương trình này so với cách tính tay ở chỗ nào.
 Đề xuất:
 - Tôi mong ước rằng trong tương lai, phòng máy vi tính sẽ được mở rộng, 
đảm bảo số lượng máy tính tạo điều kiện cho các em học sinh được thực hành 
nhiều hơn. Vì có như vậy chất lượng dạy và học của giáo viên và học sinh mỗi 
ngày đạt chất lượng cao hơn.
 - Trên đây là một số biện pháp mà tôi đã áp dụng vào dạy tin học khối 8. 
Tuy đã được đúc rút từ kinh nghiệm giảng dạy thực tế và đã cho kết quả khả 
quan. Nhưng trong quá trình thực hiện bài viết này sẽ không tránh khỏi những 
thiếu sót. Rất mong nhận được sự góp ý bổ ích của các thầy cô giáo và các bạn 
đồng nghiệp để bài viết được hoàn thiện hơn./.
Người thực hiện: Bùi Thị Hiệu - 18 -

File đính kèm:

  • docsang_kien_kinh_nghiem_phuong_phap_giai_tu_mot_bai_toan_den_m.doc