BÁO CÁO SÁNG KIẾNĐề tài : Một số phương pháp tạo hứng thú cho học sinh học ngôn ngữ lập trình C++ và một số kinh nghiệm dạy sử dụng hàm trong ngôn ngữ C++ Lĩnh vựcmã/cấp học: Tin học 14/
Trang 1BÁO CÁO SÁNG KIẾN
Đề tài : Một số phương pháp tạo hứng thú cho học sinh học ngôn ngữ lập trình C++ và một số kinh nghiệm dạy sử dụng hàm trong ngôn ngữ C++
Lĩnh vực(mã)/cấp học: Tin học (14)/THPT
Tác giả: Nguyễn Thị Út
Trình độ chuyên môn: Cử nhân sư phạm tin học
Chức vụ: Giáo viên tin học
Nơi công tác: Tổ vật lý- công nghệ - tin học
Trường THPT C Nghĩa Hưng
Nam Định, ngày 28 tháng 10 năm 2020
Trang 2THÔNG TIN CHUNG VỀ SÁNG KIẾN
1 Tên sáng kiến: Một số phương pháp tạo hứng thú cho học sinh học ngôn
ngữ lập trình C++ và một số kinh nghiệm dạy sử dụng hàm trong ngôn ngữ C++
2 Lĩnh vực (mã)/ cấp học: Tin học (14)/THPT
3 Thời gian áp dụng sáng kiến:
Từ ngày 23 tháng 8 năm 2019 đến ngày 10 tháng 5 năm 2020
Chức vụ công tác: Giáo viên
Nơi làm việc:Trường THPT C Nghĩa Hưng
Điện thoại: 0367977402
Tỷ lệ đóng góp tạo ra sáng kiến: 100%
5 Đồng tác giả: không
6 Đơn vị áp dụng sáng kiến:
Tên đơn vị: Trường THPT C Nghĩa Hưng
Địa chỉ: Thị trấn Rạng Đông – Nghĩa Hưng – Nam Định
Điện thoại 03503873162
Trang 3BÁO CÁO SÁNG KIẾN
I ĐIỀU KIỆN HOÀN CẢNH TẠO RA SÁNG KIẾN
1 Lý do chọn đề tài:
Trong dạy học nói chung, trong dạy học Tin học nói riêng, vấn đề đặt ra làcần phải đổi mới chiến lược đào tạo con người Đặc biệt cần đổi mới phươngpháp dạy học theo hướng phát triển thế hệ mới năng động, sáng tạo nhằm tạo
ra nguồn lực nội sinh cho mỗi con người đồng thời tạo nên động lực cho sựphát triển kinh tế - xã hội
Luật giáo dục điều 24.2 đã ghi rõ: “Phương pháp dạy họ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 từng đặ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”.
Mục đích, nội dung và phương pháp luôn có mối quan hệ biện chứng vớinhau Song song với việc nâng cao chất lượng nội dung sách giáo khoa thìviệc đổi mới phương pháp dạy học là điều bức thiết
Môn Tin học cũng giống như nhiều môn học khác ở trường THPT, nó cómột vị trí đặc biệt không thể thiếu được trong thời đại hiện nay Tin học 11 là
cơ sở để hình thành kiến thức, kỹ năng lập trình của bộ môn Tin học ở cấpTHPT Ngôn ngữ lập trình pascal được dạy trong chương trình Tin học 11 làmột trong những ngôn ngữ quen thuộc đối với nhiều thế hệ học sinh, sinhviên và các nhà lập trình viên Đó là ngôn ngữ có tính sư phạm khá cao,chính vì vậy ngôn ngữ này được lựa chọn để đưa vào giảng dạy cho học sinh
và sinh viên
Tuy nhiên, ngôn ngữ lập trình Pascal có nhiều hạn chế như: Tính ứngdụng thực tiễn để tạo ra các sản phẩm thương mại thấp, hơn nữa đã nhiềunăm qua các nhà phát triển phần mềm đã không nâng cấp và phát triển ngônngữ pascal Ngày nay, có rất nhiều ngôn ngữ lập trình mới hơn pascal ra đờinhư ngôn ngữ C, C++, Java, các ngôn ngữ này cung cấp các công cụ chophép người lập trình tạo ra các sản phẩm có tính ứng dụng thực tiễn rất lớn.Trong đó nổi lên là ngôn ngữ lập trình C++
Ngôn ngữ lập trình C++ ra đời vào giai đoạn đầu những năm 80 của thế
kỷ 20, và không ngừng được phát triển cho đến tận ngày nay Đó là ngôn ngữlập trình được dùng nhiều nhất hiện nay, đa số phần mềm thương mại đượcviết bằng C++, nó đã giải quyết được vô số những thách thức trong cácngành công nghiệp C++ là ngôn ngữ chính quyết định trải nghiệm trên các
Trang 4thiết bị di động hiện nay Ngày nay trên thế giới có hàng chục triệu lập trìnhviên chuyên nghiệp biết và sử dụng C++ thường xuyên, họ đã tạo ra vô sốsản phẩm ứng dụng giúp người dùng khai thác thông tin, điều khiển các thiết
bị máy móc một các hiệu quả
Đối với nước ta hiện nay, theo tinh thần chỉ đạo của Đảng và Bộ giáo dụcđào tạo, chúng ta cần đào tạo ra những thế hệ học sinh, sinh viên sau khi họcxong có thể áp dụng tri thức học được để làm ra các sản phẩm có ích cho xãhội Đặc biệt đội ngũ công nghệ thông tin cần phải có năng lực tốt để tạo racác sản phẩm công nghệ hỗ trợ các ngành kinh tế khác cùng phát triển
Do vậy, cần định hướng và tạo điều kiện cho học sinh học những ngônngữ lập trình có thế mạnh như C++, và đó cũng là một xu hướng tất yếu củathời đại
Trong kì thi học sinh giỏi cấp tỉnh môn tin học cũng khuyến khích họcsinh sử dụng ngôn ngữ lập trình C++ đế làm bài nên tôi đã mạnh dạn áp dụng
đề tài vào công tác giảng dạy lớp 11 A1 năm học 2019-2020 trong đó có các
em trong đội tuyển tin học của nhà trường
Hơn nữa nội dung kiến thức về hàm trong lập trình rất quan trọng, việc sửdụng chức năng của hàm giúp người lập trình giải quyết các bài toán phứctạp trở lên đơn giản hơn, sau quá trình giảng dạy tôi xin đưa ra một số kinhnghiệm sử dụng hàm trong lập trình C++ trong sáng kiến
Qua quá trình tìm hiểu, tôi thấy hiện tại chưa có tài liệu nào nghiên cứu
sâu vào vấn đề này Chính vì vậy tôi đã chọn đề tài: " Một số phương pháp tạo hứng thú cho học sinh học ngôn ngữ lập trình C++ và một số kinh nghiệm dạy sử dụng hàm trong ngôn ngữ C++" làm sáng kiến kinh nghiệm
trong năm học 2020-2021 với mục đích được trao đổi cùng các bạn đồngnghiệp các phương pháp mà tôi đã và đang áp dụng rất có hiệu quả tại ngôitrường tôi đang công tác và cũng hy vọng cách làm này sẽ được bổ sung,hoàn thiện và nhân rộng trong Trường THPT C Nghĩa Hưng nói riêng và cáctrường trên địa bàn của tỉnh Nam Định nói chung
Trang 5Để nâng cao chất lượng giáo dục của nhà trường, thì phải nâng cao đượcchất lượng từ các bộ môn, trong đó có môn tin học Làm thế nào để học sinhlĩnh hội được kiến thức từ nhiều hướng, nhiều khía cạnh khác nhau từ lýthuyết và từ thực tế thực hành học sinh hiểu được kiến thức, có những tư duy,sáng tạo dẫn tới ham học hỏi, yêu thích môn học mà học sinh trường THPT CNghĩa Hưng đang cần
3 Đối tượng nghiên cứu:
Nghiên cứu các giải pháp để tạo hứng thú cho học sinh khi học lập trìnhC++ tại trường THPT C Nghĩa Hưng, nhằm mục đích nâng cao chất lượnggiáo dục môn Tin học tại trường
4 Phương pháp nghiên cứu
-Phương pháp nghiên cứu xây dựng cơ sở lý thuyết: Tìm đọc, nghiên cứu,phân tích các tài liệu liên quan Rút kinh nghiệm trong thực tiễn giảngdạy Từ đó xây dựng cơ sở lý luận của đề tài
-Phương pháp điều tra khảo sát thực tế, thu thập thông tin: Sử dụng phiếuđiều tra về hứng thú học tập môn Tin học của học sinh trước và sau khitác động Từ đó đề ra những giải pháp phù hợp để nâng cao hứng thú họcmôn Tin học cho học sinh
-Phương pháp thống kê, xử lý số liệu: Sử dụng phương pháp thống kê để xử
lý số liệu, so sánh kết quả thu thập được ở lớp thực nghiệm và lớp đốichứng
II MÔ TẢ GIẢI PHÁP.
1 Mô tả giải pháp trước khi tạo ra sáng kiến
Trường THPT C Nghĩa Hưng có 30 lớp trong đó có 10 lớp khối 11(gần
400 học sinh).Các em lớp 11A1 có tư duy tốt đối với các môn khoa học tựnhiên, và đa số các em đều có xu hướng học các ngành nghề liên quan đếncông nghệ thông tin trong tương lai Chính vì vậy, việc học sinh tiếp cậnngôn ngữ lập trình cũ như pascal sẽ làm cho các em cảm thấy nhàm chánthiếu hứng thú bởi thực tế hiện này ngôn ngữ lập trình pascal rất ít được sửdụng như các báo điện tử đã đề cập:
con-day
https://thanhnien.vn/giao-duc/viet-nam-van-dang-day-cai-the-gioi-khong-PGS-TS Phạm Thế Bảo, giảng viên khoa Công nghệ thông tin Trường ĐHSài Gòn, chia sẻ nhiều tâm tư về việc dạy học tin học trong trường phổ thông
hiện nay Ông Bảo nói: "Môt số giáo viên dạy tin học trường phổ thông cho tôi biết họ đang dạy môn ngôn ngữ lập trình Pascal, trong khi trên thế giới không còn nơi nào dạy chương trình này”
Trang 6https://techtalk.vn/pascal-cho-chuong-trinh-hoc-cap-3-hieu-qua-hay-loi-
https://thanhnien.vn/giao-duc/hoc-nhung-dieu-khong-ai-su-dung-510144.html
Theo điều tra đầu năm lớp 11, thì 80% học sinh lớp 11A1 đã tiếp cận vớingôn ngữ pascal ở cấp 2 trong chương trình Tin học 8 Do vậy, khi đọc
chương trình tin học 11 nói về lập trình pascal rất nhiều em đã hỏi tôi: “Thưa
cô học lập trình pascal để làm gì nữa ạ? ” Bên cạnh đó các em coi môn
Tin học là môn phụ, nội dung kiến thức lại khá mới mẻ, khó tiếp thu dẫn đếncác em thấy nhàm chán và lơ là với môn học Vì vậy việc tạo hứng thú trongcác giờ học môn Tin học để các em thấy yêu thích môn học và thấy được vaitrò của môn học trong ứng dụng thực tiễn là việc làm rất cần thiết
Theo kết quả học năm học 2018 -2019, điểm tổng kết môn Tin học ở một
số lớp11a1 nh sau:ư sau:
Theo kết quả khảo sát đầu năm 2019 -2020, khi mới học môn Tin học 11
về tư duy thuật toán của lớp 11a1 nh sau:ư sau:
Do đó đối với môn Tin học nói chung và môn Tin học 11 nói riêng, đặcbiệt các lớp 11a1chọn Ban khoa học tự nhiên này các em đều có định hướnghọc đại học và học các ngành liên quan đến công nghệ thông tin trong tươnglai Để các em có niềm đam mê, hứng thú và học tốt môn học là một nhiệm
vụ tương đối khó khăn và thách thức đối với các thầy cô giáo được trực tiếpphân công giảng dạy ở lớp đó Đặc biệt các em trong đội tuyển học sinh giỏituy có đam mê và tố chất nhưng do chưa có phương pháp phù hợp giúp các
em phát huy tối đa khả năng của mình, tôi thấy rất đáng tiếc
Vì vậy, yêu cầu được đặt ra là bên cạnh việc đổi mới phương pháp dạyhọc, trong mỗi bài dạy, mỗi tiết học, mỗi phần học giáo viên cần tìm ra cácgiải pháp tạo hứng thú cho học sinh, để học sinh dễ hiểu và yêu thích môn
Trang 7học, say mê môn học tránh học đối phó, học vẹt, từ đó các em sẽ học hiệuquả hơn và các em học sinh trong đội tuyển luôn yêu thích môn học, đam mê
và theo đuổi ước mơ của mình và có thành tích cao trong kì thi giỏi cấp tỉnh
2 Mô tả giải pháp sau khi có sáng kiến kinh nghiệm
2.1 Giải pháp thứ nhất: Tạo hứng thú bằng các tác động tâm lý thông qua các câu chuyện về lập trình và các diễn đàn dạy và học lập trình C+ +
Để học sinh học tốt môn học, thì ngay từ ban đầu giáo viên cần lôi cuốnhọc sinh, tạo hứng thú cho học sinh qua các bài giảng, thông qua các câuchuyện và tình huống có vấn đề kích thích khả năng tìm tòi sáng tạo của họcsinh
Ngay ban đầu khi giảng dạy về lập trình, để các em hứng thú hơn tronghọc tập thì ngoài những kiến thức và bài giảng sinh động, tôi thường lồngtrong các tiết dạy những câu chuyện liên quan đến lập trình Thông qua cáccâu chuyện về các tấm gương tin học trẻ nhen nhóm hứng thú và tình yêudành cho công nghệ thông tin, đam mê lập trình và góp phần định hướngnghề nghiệp tương lai cho các em
Ví dụ 1: Tấm gương cậu bé lớp 6 tự học ngôn ngữ lập trình và giành nhiều
giải thưởng ngon-ngu-lap-trinh-va-gianh-nhieu-giai-thuong.html)
(http://juniorstartup.edu.vn/tam-guong-cau-be-lop-6-tu-hoc-Từ năm lớp 2, Võ Nguyễn Minh Triết (Trường THCS Trần Hưng Đạo, TP.Quảng Ngãi) bắt đầu làm quen với các ngôn ngữ lập trình và mày mò làmchương trình "Đường lên đỉnh Olympia" Bước sang năm lớp 6, Triết vượtqua nhiều đàn anh để giành giải Nhì trong Hội thi Tin học trẻ tỉnh QuảngNgãi
Ví dụ 2: Không có bằng cấp 3 lẫn đại học, tôi đã trở thành kỹ sư phần mềm ở
Facebook như thế nào? PRIESTLEY-FACEBOOK )
(HTTPS://EHKOO.COM/BAI-VIET/EVAN-Đây là câu chuyện của Evan Priestley, một lập trình viên thậm chí không có
cả bằng tốt nghiệp phổ thông lẫn đại học, đã đảm nhiệm vị trí kĩ sư phầnmềm tại Facebook từ 2007 đến 2011
Ví dụ 3: Đến từ vùng quê Quảng Ngãi đầy nắng gió, chàng trai sinh năm 96
- Lê Minh Hoàng hiện đang là sinh viên tại Học viện Kỹ thuật mật mã, đồngthời cũng là nhà đồng sáng lập hai doanh nghiệp về Truyền thông – Digital
Marketing uy tín hàng đầu hiện nay là công ty DigiPublic và Brand4U.(https:// tuoitre.vn/le-minh-hoang-chang-sinh-vien-tre-lam-chu-hai-doanh nghiep.htm )
Trang 8Thời đại CNTT bùng nổ, các em tiếp cận mạng máy tính rất sớm, giáoviên nên lôi cuốn các em vào các diễn đàn tin học, tham gia là thành viên củacác diễn đàn, trao đổi giao lưu, học hỏi giúp các em yêu thích môn học vàhọc tập hiệu quả hơn.
Ví dụ 4: Lồng ghép trong các bài học các diễn đàn tin học hay như:
http://congdongcviet.com: Diễn đàn về lập trình hay được nhiều học sinh,sinh viên học lập trình tham gia Trên diễn đàn có nhiều tài liệu về C++ hay
và cơ bản có thể giúp các em tự học
http://vforum.vn/diendan/forumdisplay.php?167-C-C-: Diễn đàn học lập trìnhC++ cơ bản được đông đảo các bạn tham gia với các bài tập lập trình C++ từ
cơ bản đến nâng cao Trên diễn đàn các em có thể cùng trao đổi các kiến thức
bổ ích
Trang 92.2 Giải pháp thứ 2 Tạo hứng thú cho học sinh thông qua việc sử dụng phần mềm Crocodile ICT để mô tả thuật toán giúp học sinh hiểu rõ bản chất của thuật toán trước khi áp dụng ngôn ngữ C++ để lập trình.
Bởi rõ ràng chúng ta đã biết, khi lập trình cho một bài toán thì việc các
em tiếp cận đầu tiên đó là thuật toán của bài toán đó Và tôi chọn phần mềmCrocodile ICT để minh họa lại các bước thực hiện thuật toán giúp các emhiểu rõ về hoạt động của thuật toán Khi đã hiểu rõ thuật toán của bài toán rồithì việc thể hiện lại thuật toán bằng ngôn ngữ lập trình trở nên dễ dàng hơn.Trong quá trình dạy Tin học 11 đặc biệt cho các lớp ban khoa học tựnhiên, tôi chú trọng rất nhiều trong việc hình thành tư duy giải thuật cho họcsinh, giúp các em tự tin hơn khi gặp những bài toán tương tự và tìm ra giảithuật phù hợp Đây chính là nền tảng giúp các em tự tin khi tiếp cận nhữngchương trình lập trình khó hơn trong tương lai
Ví dụ 1: Khi dạy phần cấu trúc rẽ nhánh và lặp Tôi lựa chọn các bài tập để
mô phỏng thuật toán trên phần mềm giúp các em hiểu rõ bản chất của rẽnhánh và lặp trong thuật toán Một số bài tập đơn giản như sau:
Bài tập 1: Giải phương trình bậc nhất ax + b = 0
Sơ đồ thuật toán trên phần mềm Crocodile ICT:
Bài tập 2: Giải phương trình bậc 2
Trang 10Sơ đồ thuật toán trên phần mềm Crocodile ICT:
Để kiểm chứng tính đúng đắn của thuật toán giải phương trình bậc hai ax2+ bx + c = 0, ta có thể sử dụng các bộ Input như sau:
- Với a = 1, b = -5, c = 6 có biệt số Delta > 0, Phương trình có hainghiệm phân biệt là x1 = 3, x2 =2
- Với a = 1, b = -4, c = 4 có biệt số Delta = 0, Phương trình có nghiệmkép
- Với a = 1, b = 4, c = 8 có biệt số Delta < 0, Phương trình vô nghiệm
Bài tập 3: Với a là số nguyên và a>2, viết thuật toán tính tổng sau:
- Khởi tạo giá trị ban đầu cho s=1/a
- Tiếp theo cộng vào tổng S một giá trị 1/(a+N) (với N nhận giá trị từ1,2….,100)
c Thuật toán
Trang 11- Bước 1: S←1/a; N←0;
- Bước 2: N←N+1;
- Bước 3: Nếu N>100 thì chuyển sang bước 5
- Bước 4: S←S+1/(a+N) rồi chuyển sang bước 2
- Bước 5: Đưa tổng S ra màn hình, kết thúc
Mô phỏng thuật toán bằng phần mềm Crocodile ICT:
Bài tập 4 : Với a là số nguyên và a>2, viết thuật toán tính tổng sau:
S= 1/a+1/(a+1) +… +1/(a+N)+… cho đến khi 1/(a+N) < 0.0001
a Xác định bài toán
- Input: Nhập vào số nguyên a với a >2
- Output: Tổng S
b Ý tưởng
Khởi tạo giá trị ban đầu cho s = 1/a
Tiếp theo cộng vào tổng S một giá trị 1/(a+N) (với N nhận giá trị từ 1,2….)đến khi thỏa mãn điều kiện 1/(a+N) < 0.0001
Trang 12Khi sử dụng phần mềm này để thiết kế thuật toán, tôi nhận thấy học sinhhiểu rõ hơn bản chất của các thuật toán và quá trình giải các bài toán trênmáy tính Từ đó phát triển tư duy lập trình của học sinh và các em có thể viếtđược các chương trình thực hiện trên máy tính mà ít bị lỗi về thuật toán.Giải pháp 1 và giải pháp 2 tôi đã áp dụng trước đây trong khi dạy học sinhgiỏi năm học 216-2017 và sử dụng ngôn ngữ lập trình Pascal để lập trình đãmang lại nhưng hiệu quả nhất định đội tuyển học sinh giỏi đã xếp thứ 15 toàntỉnh đứng đầu trong các trường THPT trong huyện
2.3 Giải pháp 3: Tạo hứng thú cho học sinh học lập trình C++ qua sự liên hệ so sánh với học lập trình pascal.
Với những học sinh học ban khoa học tự nhiên, các em đều có xu hướngchọn ngành nghề liên quan đến công nghệ thông tin trong tương lai, do vậycác em rất mong muốn tiếp cận được những ngôn ngữ lập trình mà các em sẽgặp trong những năm tháng học chuyên nghiệp Chính vì vậy, trong quá trìnhdạy chương trình tin học 11, tôi đã liên hệ so sánh ngôn ngữ lập trình pascalvới ngôn ngữ lập trình C++ để giúp các em hình thành kiến thức một cách dễdàng hơn Qua các bài học và các ví dụ, tôi nhận thấy các em khá hứng thúkhám phá cái mới và tiếp cận khá nhanh với ngôn ngữ lập trình mới này Sau khi thực hiện giải pháp 2, tôi kết hợp hướng dẫn học sinh thể hiệnthuật toán qua ngôn ngữ lập trình C++ trên phần mềm Dev-C++ Đã hiểu rõbản chất của thuật toán, do vậy khi cài đặt bằng ngôn ngữ các em tỏ ra kháhứng thú và hăng say thực hiện Sau đây là một số ví dụ:
Trang 13Ví dụ 1: Khi d y ph n Câu l nh r nhánh d ng thi u tôi l p b ng so sánhạy phần Câu lệnh rẽ nhánh dạng thiếu tôi lập bảng so sánh ần Câu lệnh rẽ nhánh dạng thiếu tôi lập bảng so sánh ệnh rẽ nhánh dạng thiếu tôi lập bảng so sánh ẽ nhánh dạng thiếu tôi lập bảng so sánh ạy phần Câu lệnh rẽ nhánh dạng thiếu tôi lập bảng so sánh ếu tôi lập bảng so sánh ập bảng so sánh ảng so sánh
h c sinh d liên h gi a ngôn ng pascal m các em ã l m quen v
đ ễ liên hệ giữa ngôn ngữ pascal mà các em đã làm quen và ệnh rẽ nhánh dạng thiếu tôi lập bảng so sánh ữa ngôn ngữ pascal mà các em đã làm quen và ữa ngôn ngữ pascal mà các em đã làm quen và à các em đã làm quen và đ à các em đã làm quen và à các em đã làm quen vàngôn ng l p trình C++ nh sau:ữa ngôn ngữ pascal mà các em đã làm quen và ập bảng so sánh ư sau:
If<biểu thức điều kiện> then
Bài tập 1: Cho s nguyên N Hãy tính giá tr tuy t ố nguyên N Hãy tính giá trị tuyệt đối của N ị tuyệt đối của N ệnh rẽ nhánh dạng thiếu tôi lập bảng so sánh đố nguyên N Hãy tính giá trị tuyệt đối của N ủa N.i c a N
cout<<"Nhap gia tri n:"<<endl; cin>>n;
If <biểu thức điều kiện> then
+ Nếu biểu thức điều kiện đúng thì
câu lệnh 1 sẽ được thực hiện ngược
If<biểu thức điều kiện>
Else{max := b;}
Trang 14lại câu lệnh 2 sẽ được thực hiện
+ Câu lệnh 1, câu lệnh 2 nêu ở trên
là một câu lệnh của pascal; Nếu là
một khối lệnh thì phải đặt trong cặp
từ khóa Begin và end để tạo thành
câu lệnh ghép
- Hoạt động:
Điều kiện được tính và kiểm tra Nếu
điều kiện đúng thì câu lệnh 1 sẽ
được thực hiện, ngược lại thì câu
Lưu ý: Như vậy, với cặp dấu {} trong câu lệnh rẽ nhánh ở ngôn ngữ C++
tương đương với cặp Begin - end; (câu lệnh ghép) trong pascal
}
Trang 15Hình ảnh minh họa khi viết và chạy chương trình trên Dev-C++
Bài tập 3: Chương trình tìm nghiệm thực của phương trình bậc 2: ax2+bx+c=0
Chương trình viết bằng ngôn ngữ
cout<<"Hay nhap cac he soa,b,c"<<endl;
Trang 16Chú ý: Qua ví dụ trên ta thấy dòng lệnh khai báo các biến: float a, b, c, x1,
x2, d; được viết trong hàm main (phần thân của chương trình) Điều này chochúng ta biết trong ngôn ngữ lập trình C++ cho phép khai báo các biếnkhông chỉ ở phần khai báo của chương trình mà còn ngay trong phần thânchương trình miễn là khai báo trước khi gọi thực hiện các biến đó là được.Còn Pascal chỉ khai báo phần khai báo biến mà thôi
Ví dụ 2 Cũng tương tự như phần cấu trúc rẽ nhánh, khi dạy các phần như
cấu trúc lặp; phần kiểu dữ liệu có cấu trúc; tệp và thao tác với tệp tôi đều liên
hệ so sánh ngôn ngữ lập trình pascal với ngôn ngữ lập trình C++ để các em
dễ tiếp cận hơn Nhưng do giới hạn số lượng trang của sáng kiến, nên tôi chỉxin trình bày một vài ví dụ tiêu biểu như sau:
Bài tập 4: Với a là số nguyên và a>2, viết thuật toán tính tổng sau:
S= 1/a+1/(a+1) +… +1/(a+100) +1/(a+100)
cout<<"Nhap gia tri a: "<<endl; cin>>a;
s = 1/a;
for (n=1;n<=100;n++) {s = s +(1/(a+n));}
cout<<"Tong s la: "<<s;
}