Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (325.29 KB, 20 trang )
<span class='text_page_counter'>(1)</span>TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN Chương 1: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH §1: KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH I. MỤC ĐÍCH YÊU CẦU - Biết có 3 lớp ngôn ngữ lập trình và các mức của ngôn ngữ lập trình: ngôn ngữ máy, hợp ngữ và ngôn ngữ bậc cao. - Biết vai trò của chương trình dịch - Biết khái niệm thông dịch và biên dịch - Biết một trong những nhiệm vụ quan trọng của chương trình dịch là phát hiện lỗi cú pháp của chương trình nguồn. II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC: - Phương pháp: Thuyết trình, vấn đáp. - Phương tiện: Máy chiếu, máy tính, phòng chiếu hoặc bảng. III. LƯU Ý SƯ PHẠM: - Trong chương trình lớp 10 các em đã được biết đến một số khái niệm: ngôn ngữ lập trình, chương trình dịch; nên trong bài này chúng ta nên trình bày rõ cho học sinh hiểu về biên dịch và thông dịch. IV.NỘI DUNG BÀI GIẢNG: Hoạt động của Giáo viên và Học sinh Nội dung GV: Đặt câu hỏi 1: Em hãy cho biết các bước giải một bài toán trên máy tính? HS: Suy nghĩ và trả lời câu hỏi. GV: Phân tích câu trả lời của học sinh. Nhắc lại các bước giải bài toán trên máy Khái niệm lập trình: Lập trình là sử dụng tính đã học ở lớp 10. một cấu trúc dữ liệu và các câu lệnh của GV: Đặt câu hỏi 2: Em hãy cho biết có một ngôn ngữ lập trình cụ thể để mô tả dữ mấy loại ngôn ngữ lập trình? liệu và diễn đạt thuật toán . HS: Trả lời câu hỏi của giáo viên. -Trả lời câu hỏi: Có 3 loại ngôn ngữ lập trình: Ngôn ngữ máy, hợp ngữ và ngôn ngữ GV: Phân tích câu trả lời của học sinh. Mỗi loại máy có một ngôn ngữ riêng, bậc cao. thường thì chương trình viết bằng ngôn ngữ của máy nào chỉ chạy được trên máy đó. Khi viết chương trình bằng ngôn ngữ bậc Chương trình viết bằng ngôn ngữ máy có cao muốn thi hành được trên loại máy nào thể nạp trực tiếp vào bộ nhớ thi hành ngay. thì cần chuyển chương trình sang ngôn ngữ máy của máy đó. Chương trình viết bằng ngôn ngữ bậc cao GV: Đặt câu hỏi 3 : Làm thế nào để nói chung không phụ thuộc loại máy, muốn chuyển chương trình viết bằng ngôn ngữ thi hành được thì nó phải được chuyển sang ngôn ngữ máy. bậc cao sang ngôn ngữ máy? Đưa ra ví dụ : Bạn là người không biết =>Cần phải có chương trình dịch để chuyển tiếng Anh vậy làm sao để bạn có thể nói chương trình viết bằng ngôn ngữ lập trình chuyện với người Anh hay đọc một cuốn bậc cao sang ngôn ngữ máy để máy có thể. GIÁO ÁN TIN HỌC 11. Trang 1 Lop11.com.
<span class='text_page_counter'>(2)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN sách tiếng Anh?. thi hành được.. + Khi một người làm phiên dịch người đó phải dịch như thế nào? (Dịch ngay từng câu khi 2 người nói chuyện) + Khi một người muốn dịch 1 cuốn sách sang tiếng Việt thì làm thế nào? (Dịch toàn bộ cuốn sách đó sang tiếng Việt để Chương trình dịch có 2 loại: Biên dịch và người đó có thể đọc được) thông dịch GV: Lấy ví dụ về biên dịch và thông dịch cho học sinh có thể hình dung được mỗi + Biên dịch (Compiler): Thực hiện các bước sau: công việc. Biên dịch: Sử dụng ngôn ngữ lập trình Duyệt, kiểm tra, phát hiện lỗi và kiểm Pascal để dịch một chương trình viết sẵn ra tra tính đúng đắn của các câu lệnh trong đĩa và thi hành chương trình đã dịch để học chương trình nguồn . sinh quan sát. Dịch toàn bộ chương trình nguồn thành Thông dịch: Sử dụng các lệnh trong một chương trình đích (ngôn ngữ máy) để Command promt để thực hiện một số lệnh có thể thực hiện trên máy và có thể lưu trữ của DOS hoặc dùng ngôn ngữ Foxpro để để sử dụng lại khi cần. thực hiện một số lệnh quản trị dữ liệu, học + Thông dịch (Interpreter): Dịch lần lượt sinh dễ dàng nhận ra việc thông dịch. từng câu lệnh và thực hiện ngay câu lệnh Đi kèm với các chương trình dịch thường ấy. có các công cụ như soạn thảo chương trình nguồn, lưu trữ, tìm kiếm, phát hiện lỗi, Thông dịch được thực hiện bằng cách lặp thông báo lỗi,… ngôn ngữ lập trình thường lại dãy các bước sau: chứa tất cả các dịch vụ trên. Kiểm tra tính đúng đắn của câu lệnh tiếp theo trong chương trình nguồn Chuyển đổi các câu lệnh đó thành một hay nhiều câu lệnh trong ngôn ngữ máy. Thực hiện các câu lệnh vừa chuyển đổi được . V. CỦNG CỐ , DẶN DÒ: Nhắc lại một số khái niệm mới.. GIÁO ÁN TIN HỌC 11. Trang 2 Lop11.com.
<span class='text_page_counter'>(3)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN §2: CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH I. MỤC ĐÍCH YÊU CẦU Biết ngôn ngữ lập trình có 3 thành phần cơ bản là: bảng chữ cái, cú pháp và ngữ nghĩa. Hiểu và phân biệt được 3 thành phần này. Biết các thành phần cơ bản của Pascal: Bảng chữ cái, tên, tên chuẩn, tên riêng (từ khóa), hằng và biến. Phân biệt được tên, hằng và biến Biết đặt tên đúng. II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC: Phương pháp: Thuyết trình, vấn đáp. Phương tiện: Máy chiếu, máy tính, phòng chiếu hoặc bảng III. LƯU Ý SƯ PHẠM: Phần này bắt đầu một kiến thức mới, ngoài giới thiệu cho các em biết các khái niệm mới, cần giải thích sự khác nhau giữa cú pháp và ngữ nghĩa. Riêng các thành phần cơ sở của Pascal, với mỗi khái niệm cần nên lấy ví dụ minh họa đúng-sai, và ví dụ sự khác biệt giữa chúng, nên minh họa bằng một đoạn chương trình đơn giản. IV.NỘI DUNG BÀI GIẢNG: Hoạt động của Giáo viên và Học sinh Nội dung GV: Các ngôn ngữ lập trình nói chung thường có chung một số thành phần như: Dùng những ký hiệu nào để viết chương trình, viết theo quy tắc nào, viết như vậy có ý nghĩa là gì? Mỗi ngôn ngữ lập trình có một quy định riêng về những thành phần 1.Các thành phần cơ bản: này. Ví dụ: Bảng chữ cái của các ngôn ngữ lập - Mỗi ngôn ngữ lập trình thường có 3 trình khác nhau có sự khác nhau. Chẳng hạn thành phần cơ bản là : bảng chữ cái, cú ngôn ngữ Pascal không sử dụng dấu ! pháp và ngữ nghĩa. nhưng ngôn ngữ C++ lại sử dụng ngôn ngữ này. a.Bảng chữ cái: Là tập các ký hiệu dùng - Cú pháp các ngôn ngữ lập trình khác nhau để viết chương trình. cũng khác nhau, ngôn ngữ Pascal dùng cặp -Trong ngôn ngữ Pascal bảng chữ cái gồm: từ Begin – End để gộp nhiều lệnh thành 1 Các chữ cái trong bảng chữ cái tiếng Anh, lệnh nhưng C++ lại dùng cặp kí hiệu {}. các chữ số 0 9 và một số ký tự đặc biệt (xem trong SGK) Ví dụ: Xét 2 biểu thức: b.Cú pháp: Là bộ quy tắc dùng để viết A + B (1) A, B là các số thực. chương trình. I + J (2) I, j là các số nguyên. Khi đó dấu + trong (1) sẽ là cộng hai số thực, trong (2) là cộng hai số nguyên. - Mỗi ngôn ngữ khác nhau cũng có cách xác. GIÁO ÁN TIN HỌC 11. Trang 3 Lop11.com.
<span class='text_page_counter'>(4)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN định ngữ nghĩa khác nhau. HS: Lắng nghe, ghi chép. GV: Đưa ra ví dụ ngôn ngữ tự nhiên cũng có bảng chữ cái, ngữ pháp (cú pháp) và c. Ngữ nghĩa: Xác định ý nghĩa thao tác nghĩa của câu, từ. cần thực hiện ứng với tổ hợp ký tự dựa vào ngữ cảnh của nó. GV: Trong các ngôn ngữ lập trình nói chung, các đối tượng sử dụng trong chương trình đều phải đặt tên để tiện cho việc sử dụng. Việc đặt tên trong các ngôn ngữ khác nhau là khác nhau, có ngôn ngữ phân biệt chữ hoa, chữ thường, có ngôn ngữ không phân biệt chữ hoa, chữ thường.. - Cú pháp cho biết cách viết chương trình hợp lệ, ngữ nghĩa xác định ý nghĩa của các tổ hợp ký tự trong chương trình. - Lỗi cú pháp được chương trình dịch phát hiện và thông báo cho người lập trình. Chương trình không còn lỗi cú pháp thì mới có thể dịch sang ngôn ngữ máy. - Lỗi ngữ nghĩa được phát hiện khi chạy chương trình.. GV: Giới thiệu cách đặt tên trong ngôn ngữ cụ thể Pascal. Ví dụ : Tên đúng: a, b, c, x1, x2, _ten … 2. Một số khái niệm Tên sai: a bc,2x, a&b … a. Tên - Mọi đối tượng trong chương trình đều phải được đặt tên. Mỗi ngôn ngữ lập trình có một quy tắc đặt tên riêng . GV: Ngôn ngữ nào cũng có 3 loại tên cơ - Trong ngôn gnữ Turbo Pascal tên là bản này nhưng tùy theo ngôn ngữ mà các một dãy liên tiếp không qúa 127 ký tự tên có ý nghĩ khác nhau trong các ngôn ngữ bao gồm các chữ cái, chữ số và dấu khác nhau. gạch dưới nhưng phải bắt đầu bằng o Trong khi soạn thảo chương trình, các chữ cái hoặc dấu gạch dưới. ngôn ngữ lập trình thường hiển thị các - Trong Free Pascal, tên có thể có tối đa tên dành riêng với một màu chữ khác 255 ký tự. hẳn với các tên còn lại giúp người lập - Ngôn ngữ lập trình Pascal không phân trình nhận biết được tên nào là tên dành biệt chữ hoa, chữ thường nhưng một riêng (từ khóa). Trong ngôn ngữ số ngôn ngữ lập trình khác lại phân Pascal, từ khóa thường hiển thị bằng biệt chữ hoa và chữ thường. màu trắng. - Ngôn ngữ lập trình thường có 3 loại tên cơ bản: Tên dành riêng, tên chuẩn GV: Mở một chương trình viết bằng và tên do người lập trình tự đặt. Pascal để học sinh quan sát cách hiển thị của một số từ khóa trong chương trình. Tên dành riêng: - Các ngôn ngữ lập trình thường cung - Là những tên được ngôn ngữ lập trình cấp một số đơn vị chương trình có sẵn quy định với ý nghĩa xác định mà trong các thư viện chương trình giúp người lập trình không thể dùng với ý người lập trình có thể thực hiện được. GIÁO ÁN TIN HỌC 11. Trang 4 Lop11.com.
<span class='text_page_counter'>(5)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN nhanh một số thao tác thường dùng. -. Giáo viên chỉ cho học sinh một số tên chuẩn trong ngôn ngữ Pascal. GV: Đưa ra ví dụ: Để viết chương trình giải phương trình bậc hai ta cần khai báo những tên sau: + a,b,c là ba tên để lưu ba hệ số của chương trình. + X1,X2 là 2 tên dùng để lưu nghiệm nếu có. + Delta là tên để lưu giá trị của Delta. -. -. -. -. nghĩa khác. - Tên dành riêng còn được gọi là từ khóa Ví dụ: Một số từ khóa Trong ngôn ngữ Pascal: Program, Var, Uses, Begin, End, … Trong ngôn ngữ C++: main, include, while, void,…. Tên chuẩn: - Là những tên được ngôn ngữ lập trình (NNLT) dùng với ý nghĩa nào đó trong các thư viện của NNLT, tuy Hằng thường có 2 loại, hằng được đặt nhiên người lập trình có thể sử dụng tên và hằng không được đặt tên. Hằng với ý nghĩa khác. không được đặt tên là những giá trị viết trực tiếp khi viết chương trình. Mỗi ngôn ngữ lập trình có một quy định về cách viết hằng riêng.Hằng được đặt tên Ví dụ: Một số tên chuẩn cũng có cách đặt tên cho hằng khác Trong ngôn ngữ Pascal: Real, Integer, Sin, Cos, Char, … nhau. Trong ngôn ngữ C==: cin,cout. Getchar… Biến là đối tượng được sử dụng nhiều nhất trong khi viết chương trình. Biến Tên do người lập trình tự đặt là đại lượng có thể thay đổi được nên - Được xác định bằng cách khai báo thường được dùng để lưu trữ kết qủa, trước khi sử dụng và không được trùng làm trung gian cho các tính toán,…Mỗi với tên dành riêng. loại ngôn ngữ có những loại biến khác - Các tên trong chương trình không nhau và cách khai báo cũng khác nhau. được trùng nhau Khi viết chương trình, người lập trình thường có nhu cầu giải thích cho những câu lệnh mình viết, để khi đọc lại được thuận tiện hoặc người khác đọc có thể hiểu được chương trình mình viết, do vậy các ngôn ngữ lập trình thường cung cấp cho ta cách để đưa các chú thích vào trong chương trình. Ngôn ngữ khác nhau thì cách viết chú thích cũng khác nhau.. b. Hằng và biến Hằng: Là các đại lượng có giá trị không đổi trong quá trình thực hiện chương trình. - Các ngôn ngữ lập trình thường có: + Hằng số học : số nguyên hoặc số thực. + Hằng xâu : là chuỗi ký tự đặt trong d6áu nháy “ hoặc ”” + Hằng Logic : là các giá trị đúng hoặc sai. GV: Mở một chương trình Pascal đơn giản Biến: có chứa các thành phần là các khái niệm - Là đại lượng được đặt tên, giá trị có của bài học, nếu không có máy để giới thể thay đổi được trong chương trình.. GIÁO ÁN TIN HỌC 11. Trang 5 Lop11.com.
<span class='text_page_counter'>(6)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN thiệu thì có thể sử dụng bản in sẵn khổ lớn. chỉ cho học sinh từng khái niệm được thể hiện trong chương trình .. - Các NNLT có nhiều loại biến khác nhau. - Biến phải khai báo trước khi sử dụng. c. Chú thích - Trong khi viết chương trình có thể viết các chú thích cho chương trình. Chú thích không làm ảnh hưởng đến chương trình. Trong Pascal chú thích được đặt trong { và } hoặc (* và *) Trong C++ Chú thích đặt trong /* và */. IV.CỦNG CỐ , DẶN DÒ : Nhắc lại một số khái niệm mới Cho bài tập về nhà. CHƯƠNG II: CHƯƠNG TRÌNH ĐƠN GIẢN §3: CẤU TRÚC CHƯƠNG TRÌNH I. MỤC ĐÍCH YÊU CẦU Hiểu chương trình là sự mô tả của thuật toán bằng một ngôn ngữ lập trình. Biết cấu trúc của một chương trình Pascal: cấu trúc chung và các thành phần. Nhận biết được các thành phần của một chương trình đơn giản. II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC: Phương pháp: Thuyết trình, vấn đáp. Phương tiện: Máy chiếu, máy tính, phòng chiếu hoặc bảng III. LƯU Ý SƯ PHẠM: Cách dạy hiệu qủa nhất là có một chương trình mẫu với đầy đủ các thành phần của một chương trình, chỉ cho học sinh từng thành phần trong chương trình đó và thành phần nào có thể có, thành phần nào bắt buộc phải có … IV.NỘI DUNG BÀI GIẢNG: Hoạt động của Giáo viên và Học sinh Nội dung GV : Thuyết trình đưa ra cấu trúc chung của chương trình : 1. Cấu trúc chung HS: Lắng nghe, ghi chép - Mỗi chương trình nói chung gồm 2 phần: phần khai báo và phần thân chương trình. GV : Thuyết trình đưa ra kiến thức HS : Lắng nghe, ghi chép .. [<Phần khai báo>] <Phần thân>. GV : Phần khai báo sẽ báo cho máy biết 2. Các thành phần của chương trình chương trỉnh sẽ sử dụng những tài nguyên a.Phần khai báo nào của máy. - Có thể khai báo tên chương trình, hằng. GIÁO ÁN TIN HỌC 11. Trang 6 Lop11.com.
<span class='text_page_counter'>(7)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN GV : Mỗi ngôn ngữ lập trình có cách khai được đặt tên, biến, thư viện, chương trình báo khác nhau và tùy thuộc vào ngôn ngữ con,… mà ta cần tìm hiểu xem trong chương trình ta cần khai báo những gì . Khai báo tên chương trình GV : Thư viện chương trình thường chứa - Trong Turbo pascal những đoạn chương trình lập sẵn giúp Program <tên chương trình>; người lập trình thực hiện một số công việc - Tên chương trình do người lập trình tự thường dùng, các đoạn chương trìnhnày đặt theo đúng quy tắc đặt tên. cực kỳ hữu ích cho gnười lập trình, nhất là Ví dụ : Program Bai_1; trong những ngôn ngữ lập trình tiên tiến Program Tong; hiện nay. Khai báo thư viện: GV : Lấy một ngôn ngữ lập trình mới nhất - Trong ngôn gnữ Pascal : hiện nay, chẳng hạn Visual Basic.NET, lấy Uses <tên thư viện>; một số lệnh để học sinh thấy được sự tiện - Trong ngôn ngữ C++ : dụng khi sử dụng thư viện. #include<Tên tệp thư viện> GV : Khai báo hằng là việc đặt tên cho hằng để tiện khi sử dụng và tránh việc phải Ví dụ: Trong Turbo Pascal : Uses CRT, viết lặp lại nhiều lần cùng một hằng trong GRAPH; chương trình. Khai báo hằng còn tiện lợi Trong VISUAL STUDIO 2005 : hơn khi cần thay đổi giá trị của nó trong Imports System.Xml chương trình. GV : Lập trình bằng ngôn ngữ nào cần tìm Khai báo hằng : hiểu cách khai báo hằng của ngôn ngữ ấy. - Những hằng sử dụng nhiều lần trong chương trình thường được đặt tên cho tiện khi sử dụng. GV : Nếu có thể giáo viên giải thích để Ví dụ: học sinh có thể hiểu được rằng, khai báo Trong Pascal : biến là xin máy tính cấp cho chương trình Const N = 100; một vùng nhớ để lưu trữ và xử lý thông tin e = 2.7; trong bộ nhớ trong. Trong C++ : Const int N = 100; Const float e = 2.7 GV : Mỗi ngôn ngữ lập trình có cách tổ Khai báo biến : chức chương trình khác nhau, thường thì - Mọi biến sử dụng trong chương trình phần thân chứa các câu lệnh của chương đều phải khai báo để chưoyng trình trình. dịch biết để xử lý và lưu trữ. - Biến chỉ mang một giá trị gọi là biến GV : Đưa ra những ví dụ khác nhau về đơn cách viết thân chương trình trong các ngôn (Khai báo biến sẽ trình bày ở bài 5) ngữ lập trình khác nhau. Phần thân chương trình :. GIÁO ÁN TIN HỌC 11. Trang 7 Lop11.com.
<span class='text_page_counter'>(8)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN GV : Cho học sinh quan sát 2 chương trình trong 2 ngôn ngữ khác nhau là Pascal và C++. HS : Quan sát và nhận xét về cách viết của hai chương trình trong 2 ngôn ngữ khác nhau. Thông qua đó học sinh cần nhận ra : hai chương trình cùng thực hiện một công việc nhưng viết bằng hai ngôn ngữ khác nhau nên hệ thống các câu lệnh trong chương trình cũng khác nhau. Có thể thêm câu lệnh hiển thị một xâu vào trong chương trình Pascal để thể hiện rõ hơn là nếu muốn đưa ra câu thông báo thì ta có thể sử dụng lệnh. Writeln và xâu được để trong dấu nháy đơn .. -. Thân chương trình thường là nơi chứa toàn bộ các câu lệnh của chương trình hoặc lời gọi chương trình con. Thân chương trình thường có cặp dấu hiệu bắt đầu và kết thúc chương trình. Ví dụ: Trong ngôn gnữ Pascal Begin [<Các câu lệnh>] End. 3. Ví dụ chương trình đơn giản Xét hai chương trình đơn giản trong 2 ngôn ngữ khác nhau sau đây : Chương trình 1 : Trong ngôn ngữ Turbo Pascal Program VD; Begin Write(‘Chao cac ban’); Readline; End. Chương trình 2 : Trong ngôn ngữ C++ #include<stdio.h> Main() { Printf(“Chao cac ban”); }. V. CỦNG CỐ , DẶN DÒ: Nhắc lại một số khái niệm mới Cho một chương trình mẫu về nhà yêu cầu học sinh phân biệt và chỉ rõ từng thành phần của chương trình đó. §4 MỘT SỐ KIỂU DỮ LIỆU CHUẨN I. MỤC ĐÍCH YÊU CẦU Biết một số kiểu dữ liệu định sẵn: nguyên, thực, ký tự, logic, và miền con. Xác định được kiểu cần khai báo của dữ liệu đơn giản. II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC: Phương pháp: Thuyết trình, vấn đáp. Phương tiện: Máy chiếu, máy tính, phòng chiếu hoặc bảng III. LƯU Ý SƯ PHẠM: Trong phần này giáo viên chú ý cần lấy nhiều ví dụ đơn giản để học sinh luyện tập việc xác định kiểu dữ liệu cần khai báo. … IV. NỘI DUNG BÀI GIẢNG: Hoạt động của Giáo viên và Học sinh Nội dung GV : Vấn đáp: Khi cần viết chương trình quản lý học sinh ta cần sử lý thông tin ở những dạng nào ?. GIÁO ÁN TIN HỌC 11. Trang 8 Lop11.com.
<span class='text_page_counter'>(9)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN HS : Suy nghĩ, trả lời câu hỏi của GV GV : Phân tích câu trả lời của học sinh, NNLT Pascal có một số đưa ra một vài dạng thông tin như sau : sau : - Họ tên học sinh là những thông tin dạng văn bản hay là dạng ký tự . - Điểm của học sinh là các thông tin 1. Kiểu số nguyên các số thực . Kiểu Số - Số thứ tự của học sinh là các số Byte nguyên. BYTE 1 - Một số thông tin khác lại chỉ cần biết INTEGER 2 chúng là đúng hay sai . WORD 2 LONGINT 4 GV : Thuyết trình đưa ra một số bổ sung như sau : -. Ngôn ngữ lập trình nào cũng đưa ra một số kiểu dữ liệu chuẩn đơn giản, từ những kiểu đơn giản này ta có thể xây dựng thành những kiểu dữ liệu phức tạp hơn. - Kiểu dữ liệu nào cũng có miền giới hạn của nó, máy tính không thể lưu trữ tất cả các số trên trục số nhưng nó có thể lưu trữ với độ chính xác cực cao. - Tùy thuộc vào ngôn ngữ lập trình mà tên của các kiểu dữ liệu khác nhau và miền giá trị của các kiểu dữ liệu này cũng khác nhau. - Với mỗi kiểu dữ liệu người lập trình cần ghi nhớ tên kiểu, miền giá trị và số lượng ô nhớ để lưu một giá trị thuộc kiểu đó. - Trong lập trình nói chung thì kiểu kí tự thường là tập các kí tự trong các bảng mã kí tự, trong các bảng mã hóa kí tự người ta quy định có bao nhiêu kí tự khác nhau và mỗi kí tự có một mã thập phân tương ứng. Để lưu các giá trị là kí tự thì phải lưu mã thập phân tương ứng của nó . GV : Đặt câu hỏi: Em biết những bảng mã nào? HS : HS sẽ đưa ra một số bảng mã nhưng GV chú ý các em NNLT Pascal chỉ sử dụng bảng mã ASCII cho kiểu kí tự.. kiểu dữ liệu chuẩn. Miền giá trị 0 … 255 -215 … 215 - 1 0 … 216 - 1 -231 … 231 - 1. 2. Kiểu thực - Có nhiều kiểu cho giá trị là số thực nhưng hay dùng một số kiểu sau : Tên kiểu. Miền giá trị. Số Byte REAL 0 hoặc nằm trong 6 (10-38 1038) EXTENDED 0 hoặc nằm trong 10 (10-4932 104932) 3. Kiểu kí tự - Tên kiểu: CHAR - Miền giá trị: Là các kí tự trong bảng mã ASCII gồm 256 ký tự - Mỗi ký tự có 1 mã tương ứng từ 0 đến 255 - Các kí tự có quan hệ so sánh, việc so sánh dựa trên mã của từng kí tự. Ví dụ: Trong bảng mã ASCII, các kí tự trong bảng chữ cái tiếng Anh xếp liên tiếp vối nhau, các chữ số cũng xếp liên tiếp, cụ thể: A mã 65; a mã 97, 0 mã 48 4. Kiểu logic. GIÁO ÁN TIN HỌC 11. - Tên kiểu : Boolean - Miền giá trị : Chỉ có 2 giá trị là TRUE. Trang 9 Lop11.com.
<span class='text_page_counter'>(10)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN Kiểu logic là kiểu thường chỉ có 2 giá trị (Đúng) hoặc FALSE (Sai) đúng – sai. Mỗi ngôn ngữ khác nhau lại - Một số ngôn ngữ có cách mô tả các giá có cách mô tả kiểu logic khác nhau, trị logic bằng những cách khác nhau. Pascal dùng True – False nhưng một số - Khi viết chương trình bằng ngôn ngữ ngôn ngữ khác lại mô tả bằng 0 – 1,… Có lập trình nào thì cần tìm hiểu đặc trưng ngôn ngữ lại không có kiểu logic mà của các kiểu dữ liệu của ngôn ngữ đó. người lập trình phải tự tìm cách để thể hên những giá trị dạng này. V. CỦNG CỐ , DẶN DÒ: Nhắc lại các kiểu dữ liệu đơn giản hay dùng. Cho về nhà một số ví dụ về việc lưu trữ trong cuộc sống và yêu cầu học sinh tìm kiểu dữ liệu tương ứng. §5 KHAI BÁO BIẾN I. MỤC ĐÍCH YÊU CẦU Hiểu được cách khai báo biến. Khai báo đúng Nhận biết được khai báo sai. II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC: Phương pháp : Thuyết trình, vấn đáp. Phương tiện : Máy chiếu, máy tính, phòng chiếu hoặc bảng III. LƯU Ý SƯ PHẠM: Trong phần này giáo viên chú ý cần llấy nhiều ví dụ đơn giản để học sinh luyện tập việc xác định kiểu dữ liệu và tự khai báo biến. Chú ý cho học sinh : Cần đặt tên biến sao cho gợi nhớ đến ý nghĩa của nó. Không nên đặt tên qúa ngắn hay quá dài, dễ dẫn đến mắc lỗi hoặc hiểu nhầm. Khai báo biến cần quan tâm đến phạm vi giá trị của nó. IV. NỘI DUNG BÀI GIẢNG : Hoạt động của Giáo viên và Học sinh Nội dung GV : Khai báo biến là chương trình báo cho máy biết phải dùng những tên nào trong chương trình. - Trong ngôn ngữ Pascal, biến đơn được HS : Lắng nghe và ghi chép khai báo như sau : Ví dụ : Var <danh sách biến> : <kiểu số liệu> - Để giải phương trình bậc hai Trong đó: ax2 + bx + c = 0 + Var : là từ khóa dùng để khai báo biến cần khai báo các biến như sau: + Danh sách biến : tên các biến cách Var a, b, c, x1, x2, delta : real; nhau bởi dấu phẩy - Để tính chu vi và diện tích tam giác + Kiểu dữ liệu : là một kiểu dữ liệu nào cần khai báo các biến sau: đó của ngôn ngữ Pascal Var a, b, c, p, s, cv: Real; + Sau Var có thể khai báo nhiều danh Trong đó : sách biến có những kiểu dữ liệu khác a, b, c: dùng để lưu độ dài 2 cạnh. GIÁO ÁN TIN HỌC 11. Trang 10 Lop11.com.
<span class='text_page_counter'>(11)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN của tam giác. nhau p: nửa chu vi tam giác + Cần đặt tên biến sao cho gợi nhớ đến ý cv, s: chu vi và diện tích tam giác nghĩa của nó. GV : Đặt câu hỏi: Khi khai báo biến cần + Không nên đặt tên quá ngắn hay quá chú ý những điều gì ? dài, dễ dẫn tới mắc lỗi hoặc hiểu nhầm. HS : Suy nghĩ trả lời câu hỏi + Khai báo biến cần quan tâm đến phạm GV : Phân tích câu trả lời của học sinh vi giá trị của nó . V.. CỦNG CỐ , DẶN DÒ : Nhắc lại một số khái niệm mới. Cho bài tập về nhà. §6 PHÉP TOÁN, BIỂU THỨC, CÂU LỆNH GÁN I. MỤC ĐÍCH YÊU CẦU Giới thiệu phép toán, biểu thức số học, hàm số học chuẩn và biểu thức quan hệ. Hiểu lệnh gán, viết được lệnh gán. Phân biệt được sự khác nhau giữa lệnh gán (:=) và phép so sánh bằng. Viết được biểu thức số học và logic với các phép toán thông dụng II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC: Phương pháp: Thuyết trình, vấn đáp. Phương tiện: Máy chiếu, máy tính, phòng chiếu hoặc bảng III. LƯU Ý SƯ PHẠM: Đối với việc dạy phép toán, cần chú ý cho học sinh một số phép toán thường không dùng trong toán học, và một số phép toán có kí hiệu khác với kí hiệu trong toán học. Kết quả của phép toán quan hệ mang giá trị logic. Đối với việc dạy biểu thức số học, cần phân biệt cho học sinh cách viết biểu thức số học trong toán học và trong tin học.. Kiễu giá trị của biểu thức thường là kiểu của biến, hay hằng có độ lớn kiểu lớn nhất trong nó, nên sử dụng biến trung gian để tránh việc sử dụng biến nhiều lần. Khi dạy biểu thức quan hệ và biểu thức logic, cần lấy nhiều ví dụ từ đơn giản đến phức tạp để học sinh có thể tính toán đưa ra giá trị của biểu thức, hay nêu ví dụ cụ thể về các mối quan hệ trong cuộc sống để học sinh tự đưa ra biểu thức logic. IV. NỘI DUNG BÀI GIẢNG : Hoạt động của Giáo viên và Học sinh Nội dung GV : Dẫn dắt vào bài: Trong khi viết chương trình ta thường phải thực hiện các tính toán, thực hiện các so sánh để đưa ra quyết định xem làm việc gì? Vậy trong - Ngôn ngữ lập trình nào cũng sử dụng chương trình ta viết thế nào? Có giống với đến phép toán, biểu thức, câu lệnh gán. ngôn ngữ tự nhiên hay không? Tất cả các - Ta xét các khái niệm này trong ngôn ngôn ngữ có sử dụng chúng một cách ngữ Pascal giống nhau không ? 1. Phép toán NNLT Pascal sử dụng một số phép toán GV : Toán học có những phép toán nào ? sau: HS : Đưa ra một số phép toán thường dùng - Với số nguyên : +, -, * (nah6n), div. GIÁO ÁN TIN HỌC 11. Trang 11 Lop11.com.
<span class='text_page_counter'>(12)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN trong toán học GV : Chúng có dùng được trong các ngôn ngữ lập trình ? Chỉ một số phép dùng được, một số phép phải xây dựng từ các phép toán khác. VD : Phép lũy thừa không phải ngôn ngữ nào cũng viết được. GV : Mỗi ngôn ngữ khác nhau lại có cách kí hiệu phép toán khác nhau. GV : Trong toán học, biểu thức là gì? HS : Đưa ra khái niệm. GV : Đưa ra khái niệm biểu thức trong lập trình. GV: Cách viết các biểu thức này trong lập trình có giống cách viết trong toán học ? HS : Đưa ra ý kiến của mình GV : Phân tích ý kiến của học sinh. GV : Đưa ra cách viết biểu thức và thứ tự thực hiện phép toán trong lập trình. GV : Cách viết biểu thức phụ thuộc cú pháp từng ngôn ngữ lập trình. Đưa ra một số biểu thức toán học và yêu cầu các em viết chúng trong ngôn ngữ Pascal. HS : Gọi một vài học sinh lên bảng viết. GV : Đặt câu hỏi, muốn tính X2 ta viết thế nào? HS : Có thể đưa ra là X*X GV : Muốn tính ,sinx, cosx,… làm thế nào ? HS : Chưa biết cách tính GV : Để tính các giá trị đó một cách đơn giản, người ta xây dựng sẵn một số đơn vị chương trình trong các thư viện chương trình giúp người lập trình tính toán nhanh. GIÁO ÁN TIN HỌC 11. (chia lấy nguyên), mod (chia lấy dư) - Với số thực : +, -, *, / (chia) - Các phép toán quan hệ <, <= , >, >=, =, <>: Cho kết qủa là một giá trị logic (True hoặc False) - Các phép toán Logic : NOT (phủ định), OR (hoặc), AND (và): thường dùng để kết hợp nhiều biểu thức quan hệ với nhau. 2. Biểu thức số học - Là một dãy các phép toán +, -, *, /. Div và Mod từ các hằng, biến kiểu số và các hàm. - Dùng cặp dấu () để qui định trình tự tính toán. Thứ tự thực hiện các phép toán : - Trong ngoặc trước, ngoài ngoặc sau. - Nhân chia trước cộng trừ sau. - Giá trị của biểu thức có kiểu là kiểu của biến hoặc hằng có miền giá trị lớn nhất trong biểu thức. 3. Hàm số học chuẩn - Các ngôn ngữ lập trình thường cung cấp sẵn một số hàm số học để tính một số giá trị thông dụng. - Cách viết : Tên_hàm (Đối số) - -Kết qủa của hàm phụ thuộc vào kiểu của đối số. - Đối số là một hay nhiều biểu thức số học đặt trong dấu ngoặc () sau tên hàm. - Bản thân hàm cũng có thể coi là biểu thức số học và có thể tham gia vào biểu thức như toán hạng bất kỳ. Bảng một số hàm chuẩn: (Theo dõi SGK và màn hình) 4. Biểu thức quan hệ Có dạng như sau: <biểu thức 1> <phép toán quan hệ> <biểu thức 2> Trong đó: - Biểu thức 1 và biểu thức 2 phải cùng kiểu. - Kết quả của biểu thức quan hệ là TRUE hoặc FALSE Ví dụ: A < B;. Trang 12 Lop11.com.
<span class='text_page_counter'>(13)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN các giá trị thông dụng.. 2*A >= 4+ B. GV : Với các hàm chuẩn, cần quan tâm đến kiểu của đối số và kiểu của giá trị trả về. VD : Sinx thì được đo bằng độ hay radian ?. 5. Biểu thức logic - Biểu thức logic đơn giản nhất là hằng hoặc biến logic. - Thường dùng để liên kết nhiều biểu thức quan hệ lại với nhau bởi các phép toán logic. GV : Trong lập trình thường ta phải so Ví dụ: sánh hai giá trị nào đó trước khi thực hiện - Ba số dương a, b, c là độ dài ba cạnh lệnh nào đó. Biểu thức quan hệ còn được tam giác nếu biểu thức sau cho giá trị gọi là biểu thức so sánh 2 giá trị, cho kết đúng quả là đúng hoặc sai (logic). (a+ b > c) and (b+ c >a) and (c+ a >b) - Biểu thức điều kiện 0 d” X d’ 5 được VD : 3>5: Cho kết quả sai viết như sau: (x >= 0) and (x <= 5) 6. Câu lệnh gán - Lệnh gán là cấu trúc cơ bản nhất của mọi ngôn ngữ lập trình, thường dùng GV : Đặt câu hỏi, muốn so sánh nhiều điều để gán giá trị cho biến kiện đồng thời làm thế nào? Cấu trúc: <tên biến> := <biểu thức>; HS : Đưa ra ý kiến của mình. (và, hoặc,…) - Trong đó biểu thức phải phù hợp với Đưa ra ví dụ và cách viết đúng trong ngôn tên biến. Có nghĩa là kiểu của tên biến ngữ Pascal phải cùng kiểu với kiểu của biểu thức Chú ý : Mỗi ngôn ngữ có cách viết khác hoặc phải bao hàm kiểu của biểu thức. nhau. - Hoạt động của lệnh gán : Tính giá trị GV : Mỗi NNLT có cách viết lệnh gán của biểu thức sau đó ghi giá trị đó vào khác nhau. tên biến. GV : Cần chú ý điều gì khi viết lệnh gán? Ví dụ: HS : Đưa ra ý kiến. X1 := (-b –sqrt(b*b – 4*a*c))/(2*a); GV : Phân tích câu trả lời của học sinh sau X2 := (-b +sqrt(b*b – 4*a*c))/(2*a); đó tổng hợp lại: cần chú ý đến kiểu của I := I + 1; J := J – 2; biến và kiểu của biểu thức. Trong đó : lệnh thứ 3 tăng giá trị của I một đơn vị, lệnh thứ 4 giảm giá trị biến J hai GV : Minh họa một vài lệnh gán bằng một đơn vị. ví dụ trực quan trên bảng hoặc trên màn hình. V. CỦNG CỐ , DẶN DÒ: Nhắc lại một số khái niệm mới. Cho bài tập về nhà, ngoài bài tập có trong sách có thể cho thêm nhiều biểu thức logic để học sinh về nhà tính toán tìm giá trị của nó, cho học sinh một số biểu thức trong toán học và yêu cầu viết nó trong tin học (NNLT); có thể cho thêm bài theo cột, một cột là biểu thức toán học, một cột là biểu thức trong tin học tương ứng và tìm chỗ sai của biểu thức so với trong toán.. GIÁO ÁN TIN HỌC 11. Trang 13 Lop11.com.
<span class='text_page_counter'>(14)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN § 7: CÁC THỦ TỤC CHUẨN VÀO/RA ĐƠN GIẢN I. MỤC ĐÍCH YÊU CẦU Biết lệnh vào ra đơn giản để nhập thông tin từ bàn ph1im và đưa thông tin ra màn hình. Viết được một số lệnh vào ra đơn giản. II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC: Phương pháp: Thuyết trình, vấn đáp. Phương tiện: Máy chiếu, máy tính, phòng chiếu hoặc bảng III. LƯU Ý SƯ PHẠM : Cần chú ý cho học sinh phân biệt giữa 2 lệnh nhập dữ liệu liệu Read và Readln, khi nhập dữ liệu nên dùng Readln vì nếu không có thể làm trôi lệnh readln; (không tham số) tiếp theo. Cần hướng dẫn cụ thể cho học sinh việc sử dụng lệnh Write và Writeln, các cách để hiển thị dữ liệu, các kiểu dữ liệu trong nó. Cần hướng dẫn học sinh cách kết hợp hai lệnh vào ra dữ liệu khi viết chương trình cho hợp lý, sáng sủa (tốt nhất là viết chương trình cụ thể, đơn giản) IV. NỘI DUNG BÀI GIẢNG: Hoạt động của Giáo viên và Học sinh Nội dung GV: Khi sử dụng các ứng dụng ta thường nhập thông tin vào, như vậy bằng cách nào ta nhập được thông tin nào khi lập trình? Làm cách nào để nhập giá trị từ bàn phím vào cho biến. GV: Diễn giải hoạt động của READ/READLN, nêu sự khác nhau khi dùng Read/Readln. GV: Mỗi ngôn ngữ có cach nhập thông tin vào khác nhau.. Trong ngôn ngữ Pascal các thủ tục vào ra chuẩn viết như sau : 1. Nhập dữ liệu từ bàn phím - Ta dùng thủ tục chuẩn READ hoặc READLN có cấu trúc như sau: READ/READLN(<biến 1>, …,<biến n>);. GV: Đưa ra hai ví dụ về chương trình có Ví dụ: Read(N); nhập thông tin vào từ bàn phím . Readln(a,b,c); Chú ý : Khi nhập dữ liệu từ bàn phím Ví dụ 1 : Xét chương trình sau: READ và READLN có ý nghĩa như nhau, Program VD; thường hay dùng READLN hơn. Uses crt; READLN luôn chờ gõ phím Enter. Var Tuoi: Byte Begin Clrscr; Ví dụ 2 : Xét chương trình sau: Write(‘Moi ban cho biet tuoi cua ban’); Program VD; Readln(tuoi); Uses crt; Write(‘Cam on, tuoi cua ban la’,tuoi, Var a, b, c : Integer; ‘Tuoi’); Begin Readln; Clrscr; End. Write(‘Moi ban nhap 3 so:’);. GIÁO ÁN TIN HỌC 11. Trang 14 Lop11.com.
<span class='text_page_counter'>(15)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN GV : Chạy chương trình cho học sinh quan sát, nhận xét về chương trình . Giải thích việc nhập giá trị cho nhiều biến đồng thời . Có thể thay đổi lệnh Readln(a, b, c) trong ví dụ 2 thánh Read(a, b, c), chạy chương trình để học sinh thấy sự khác nhau khi sử dụng hai lệnh này .. Readln(a, b, c); Write(‘Ban vua nhap vao 3 so:, a, b, c); Readln; End. Việc lập dữ liệu cho nhiều biến thì giá trị mỗi biến phải cách nhau ít nhất một dấu cách hoặc dấu Enter,máy sẽ gán giá trị cho các biến theo thứ tự như trong lệnh tương ứng .. GV : Ta thấy ở ví dụ 2 của phần 1 việc ghi 2. Đưa dữ liệu ra màn hình ra dữ liệu thì 3 giá trị a, b, c dính liền vào nhau và người sử dụng không thể phân biệt - Để đưa dữ liệu ra màn hình tại vị trí được giá trị của từng biến. Vậy làm thế con trỏ, ta dùng thủ tục WRITE hoặc nào và có những cách nào để hiển thị dữ WRITELN với cấu trúc : liệu theo ý muốn của người lập trình . Write/Writeln(<Giá trị 1>, <Giá trị 2>,…,<Giá trị n>); GV : Mỗi ngôn ngữ có cách đưa thông tin - Trong đó các Giá trị có thể là tên biến, ra màn hình khác nhau. tên hằng, giá trị cụ thể, biểu thức hoặc Lấy thêm ví dụ về các thủ tục đưa thông tên hàm. tin ra màn hình của ngôn ngữ khác Ví dụ: C++: cout …. Write(a, b, c); Writeln(‘Gia tri cua N la : ’,N); GV : Giải thích sự khác nhau giữa Write, Writeln. -Thủ tục Writeln sau khi đưa kết quả ra sẽ Lấy ví dụ minh họa cụ thể bằng chương chuyển con trỏ màn hình xuống đầu dòng trình. tiếp theo . Có thể lấy dữ liệu của phần nhập dữ dữ Ngoài ra trong TP còn có qui cách đưa liệu sửa để học sinh thấy việc khác nhau thông tin ra như sau : giữa 2 lệnh Write và Writeln. Kết quả thực hiện :<Độ rộng>:<Số chữ số Minh họa quy cách đưa thông tin ra bằng thập phân> chương trình. Sửa lại ví dụ 2 của phần 1 để dữ liệu của 3 Kết quả khác: :<Độ rộng> số phân cách nhau – người dùng có thể phân biệt được. Ví dụ: Write(N : 8); Writeln(‘X = ’,X:8:3); GV : Đưa ra 2 ví dụ : Ví dụ 1: Để nhập giá trị từ bàn phím ta thường dùng: Write(‘Nhap gia tri cua M:’); {1} Ví dụ 2 : Xét chương trình đầy đủ sau: Readln(M) {2} Program VD2; Var N : Integer; Trong đó: {1} Đưa ra thông báo: Begin Nhap gia tri cua M: Write(‘lop ban co bao nhieu nguoi:’);. GIÁO ÁN TIN HỌC 11. Trang 15 Lop11.com.
<span class='text_page_counter'>(16)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN Còn {2} Dùng để đọc giá trị và gán cho Readln(N); biến M. Write(‘Vay la ban co’,N -1,‘nguoi ban Cấu trúc {1}, {2} gọi là giao tiếp người – trong lop’); Write(‘Go Enter de ket thuc chuong máy. trinh’); Readln; End. VI.CỦNG CỐ , DẶN DÒ: Lấy 1 ví dụ đơn giản lập trình trực tiếp trên máycho học sinh quan sát . Ra bài tập về nhà . § 8: SOẠN THẢO, DỊCH, THỰC HIỆN VÀ HIỆU CHỈNH CHƯƠNG TRÌNH I. MỤC ĐÍCH YÊU CẦU Biết các bước soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình.. Biết một số công cụ của môi trường Turbo pascal. Bước đầu sử dụng được chương trình dịch để phát hiện lỗi. Bước đầu chỉnh sửa được chương trình dựa vào thông báo lỗi của chương trình dịch và tính hợp lý của kết quả thu được. II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC : Phương pháp : Thuyết trình, vấn đáp. Phương tiện : Máy chiếu, máy tính, phòng chiếu hoặc bảng III. LƯU Ý SƯ PHẠM: Ta có thể gõ một chương trình từ đầu, tạo ra các lỗi điển hình, sửa lỗi, làm mịn chương trình để học sinh có thể hình dung ra quá trình lập trình, sử dụng chương trình dịch để giúp tìm lỗi, lập trình nhanh hơn . IV. NỘI DUNG BÀI GIẢNG : Hoạt động của Giáo viên và Học sinh Nội dung GV : Giới thiệu một số tập tin vần thiết để Turbo Pascal có thể chạy được, hướng dẫn các em cách khởi động Pascal trên máy Màn hình làm việc ngôn ngữ Pascal có tính. dạng như sau: Turbo.exe (file chạy) Turbo.tpl (file thư viện) Turbo.tph (file hướng dẫn) Một số thao tác thường dùng trong GV : Giới thiệu một số thao tác thường Pascal: dùng khi soạn thảo chương trình trong môi -Xuống dòng: Enter trường soạn thảo Turbo Pascal . -Ghi file vào đĩa: F2 -Mở file đã có: F3 GV : Thực hiện một vài lần các thao tác -Biên dịch chương trình: Alt + F9 này để các em nhận thấy mức độ tệin lợi -Soát lỗi chương trình: F9 của nó khi soạn thảo cũng như chạy chương -Chạy chương trình: Ctrl + F9 -Đóng cửa sổ chương trình: Alt + F3 trình . -Chuyển qua lại giữa các cửa sổ: F6 GV : Viết một chương trình ví dụ, thực -Xem lại màn hình kết qủa: Alt + F5 hiện các thao tác sửa lỗi… -Thoát khỏi Turbo Pascal: Alt + X. GIÁO ÁN TIN HỌC 11. Trang 16 Lop11.com.
<span class='text_page_counter'>(17)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN Có thể lấy ví dụ yêu cầu người dùng nhập vào năm sinh, trả ra kết quả là tuổi của người đó. V. CỦNG CỐ , DẶN DÒ: - Nhắc lại hoạt động của Write/Writeln, Read/Readln. - Cho bài tập về nhà. Chương III : CẤU TRÚC RẼ NHÁNH VÀ LẶP §9 CẤU TRÚC RẼ NHÁNH I. MỤC ĐÍCH YÊU CẦU Hiểu nhu cầu cấu trúc rẽ nhánh trong biểu diễn thuật toán. Hiểu câu lệnh rẽ nhánh (dạng thiếu và dạng đủ) Hiểu câu lệnh ghép. Sử dụng cấu trúc rẽ nhánh trong mô tả thuật toán của một số bài toán đơn giản. Viết được các lệnh rẽ nhánh khuyết, rẽ nhánh đầy đủ và áp dụng để thể hiện được thuật toán của một số bài tóan đơn giản. II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC: Phương pháp: Thuyết trình, vấn đáp. Phương tiện: Máy chiếu, máy tính, phòng chiếu hoặc bảng III. LƯU Ý SƯ PHẠM : Nên sử dụng các thuật toán các em đã học ở lớp 10. Cần xây dựng các bài thực hành và tổ chức thực hiện tại phòng máy để học sinh đạt được những kỹ năng theo yêu cầu. IV. NỘI DUNG BÀI GIẢNG : Hoạt động của Giáo viên và Học sinh Nội dung GV : Đưa ra ví dụ rồi cùng học sinh thảo luận phương pháp giải quyết bài toán. Kiểm tra >=0. Thông báo vô nghiệm. Tính và đưa ra nghiệm. Kết thúc. 1. Khái niệm rẽ nhánh Ví dụ : Để viết chương trình giải phương trình bậc 2, ta phải: Tính = b2 – 4ac; Sau đó tùy thuộc vào giá trị của mà ta có tính nghiệm hay không. Trong thực tế : - Nếu <0 thì phương trình vô nghiệm - Nếu >=0 thì phương trình có nghiệm - Như vậy tùy thuộc vào giá trị của mà ta đưa ra vô nghiệm hay có nghiệm. - Hoặc có thể nói : Nếu < 0 thì phương. GIÁO ÁN TIN HỌC 11. Trang 17 Lop11.com.
<span class='text_page_counter'>(18)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN trình vô nghiệm, ngược lại thì phương trình có nghiệm. Đưa ra khái niệm rẽ nhánh trong lập =>Như vậy ta thấy một số mệnh đề có dạng + Nếu …..thì….. trình. Mỗi NNLT có cách thể hiện rẽ nhánh + Nếu …..thì….. ngược lại thì khác nhau . Cấu trúc này được gọi là cấu trúc rẽ nhánh . Các NNLT thường cung cấp các câu lệnh để GV : Đưa ra cấu trúc lệnh rẽ nhánh mô tả các cấu trúc rẽ nhánh như trên . trong Pascal. Nhắc nhở học sinh đây là cấu trúc quan trọng, nó sẽ được sử dụng rất nhiều trong các chương trình sau này.. GV : Lưu ý các em sau Then và sau 2. Câu lệnh If – Then Else chỉ có một lệnh chương trình. Pascal dùng câu lệnh If – then để mô tả việc rẽ nhánh tương ứng với hai loại mệnh đề rẽ nhánh như nhau - Dạng thiếu : GV : Với hai dạng này, dạng nào dùng If <điều kiện> Then <câu lệnh>; thuận tiện hơn ? - Dạng đầy đủ : If <điều kiện> Then < câu lệnh 1> HS : Tìm câu trả lời, giáo viên gợi ý để Else <câu lệnh 2> học sinh đưa ra được tùy trường hợp cụ thể mà dùng dạng thiếu hay dạng đủ. Trong đó: - Điều kiện : Là biểu thức quan hệ Logic. - Câu lệnh, câu lệnh 1, câu lệnh 2 là 1 câu lệnh của Pascal Đưa ra các ví dụ có sử dụng lệnh rẽ nhánh, nếu không có lệnh rẽ nhánh thì không thể thực hiện được. GV : ở VD3: Cách nào nhanh hơn, tiện hơn? => Cách 2 tiện hơn GV : Phân tích sự tiện lợi trong cách 2 và số lệnh mà máy phải thực hiện.. Ý nghĩa của các câu lệnh : - Dạng thiếu : Nếu điều kiện đúng thì câu lệnh được thực hiện, nếu điều kiện sai thì không thực hiện gì - Dạng đủ : Nếu điều kiện đúng thì thực hiện câu lệnh 1, nếu điều kệin sai thì thực hiện câu lệnh 2. VD 1 : If (X Mod 2 = 0) Then WRITE(x,’La so chan’); VD 2: If DELTA <0 Then WRITE(‘PT Vo Nghiem’) Else WRITE(‘PT co nghiem’); VD 3: Tìm giá trị lớn nhất (max) của 2 số a và b. GIÁO ÁN TIN HỌC 11. Trang 18 Lop11.com.
<span class='text_page_counter'>(19)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN GV : Trong câu lệnh If – Then muốn thực hiện nhiều lệnh sau Then hay nhiều lệnh sau Else làm thế nào ? HS : Phát biểu ý kiến của mình. GV : Khi đó ta cần gộp nhiều lệnh đó lại và coi đó là một câu lệnh trong chương trình. Các ngôn ngữ lập trình thường có cấu trúc để giúp ta thực hệin điều này.. Cách 1 : Max :=a; If b >a Then max :=b; Cách 2 : If a >b Then max :=a Else max :=b; 3. Câu lệnh ghép. - Trong ngôn ngữ Pascal, Câu lệnh ghép có dạng: GV : Giới thiệu lệnh ghép của một vài Begin <các câu lệnh> ngôn ngữ lập trình khác C==: {} End ; VB: If – Then – Endif Chú ý : - Sau End phải là dấu; và trước Else không chứa dấu ; - Từ nay nói đến câu lệnh thì đó có thể là câu GV : Chỉ rõ đâu là lệnh ghép trong lệnh đơn hoặc là câu lệnh ghép. chuỗi lệnh này.. Ví dụ : Đoạn chương trình sau trong ngôn ngữ GV nên soạn sẵn hai chương trình này Pascal có sử dụng chương trình ghép. và cho các em quan sát cách viết chương trình để các em hình thành dần IF DELTA <0 THEN WRITELN(‘Phuong trinh vo nghiem’) cách viết một chương trình . ELSE Chạy thử chương trình và chỉ rõ các BEGIN lệnh trong chương trình dùng để làm gì . X1 :=(-B-SQRT(DELTA))/(2*A); X2 := - B/A – X1; Nếu có nhiều thời gian, GV có thể gõ WRITELN(‘X1=’,X1:6:3,’X2=’,X2:6:3); END; từng lệnh chương trình, gõ đến đâu giải 4. Một số ví dụ thích cho học sinh đến đó. Quan sát các chương trình sau trong ngôn Nếu còn thời gian, gọi học sinh lên ngữ lập trình Pascal . bảng viết câu lệnh If – Then cho một số bài toán đơn giản . Ví dụ 1 : Tìm nghiệm thực của phương trình bậc hai Có thể viết chương trình mẫu cho học AX2 + BX + C= 0 sinh xong, yêu cầu các em gõ lại chương trình vừa được theo dõi mà Ví dụ 2 : Tìm số ngày của một năm: Năm nhuận là năm không cần nhìn vào bài mẫu . chia hết cho 400 hoặc chia hết cho 4 nhưng không chia hết cho 100 .. GIÁO ÁN TIN HỌC 11. Trang 19 Lop11.com.
<span class='text_page_counter'>(20)</span> TRƯỜNG THPT CHUYÊN VỊ THANH – TỔ TOÁN TIN – GV: LÊ HỮU KỲ QUAN V.. CỦNG CỐ , DẶN DÒ: Nhắc lại một số khái niệm mới . Nhắc lại cấu trúc câu lệnh IF – THEN, IF – THEN – ELSE thông qua các ví dụ Cho bài tập về nhà .. §10 CẤU TRÚC LẶP I. MỤC ĐÍCH YÊU CẦU Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán . Hiểu cấu trúc lặp kiểm tra điều kiện trước, cấu trúc lặp với số lần định trước . Biết cách vận dụng đúng đắn cấu trúc lặp vào tình huống cụ thể . Mô tả thuật toán của một số bài toán đơn giản có sử dụng lệnh lặp . Viết đúng các lệnh lặp kiểm tra điều kiện trước, lệnh lặp với số lần lặp trước . Viết được thuật toán của một số bài toán đơn giản . II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC : Phương pháp : Thuyết trình, vấn đáp . Phương tiện : Máy chiếu, máy tính, phòng chiếu hoặc bảng . III. LƯU Ý SƯ PHẠM : Cần tổng kết 3 loại cấu trúc điều khiển: tuần tự, rẽ nhánh và lặp Bước đầu hình thành khái niệm lập trình có cấu trúc cho học sinh. Cần xây dựng các bài thực hành và tổ chức thực hiện tại phòng máy để học sinh đạt được những kỹ năng theo yêu cầu Khi dạy lệnh lặp, với mỗi một dạng lệnh lặp, tốt nhất viết một ví dụ cụ thể, với số lần lặp nhỏ rồi viết mô tả việc hoạt động của vòng lặp bằng cấu trúc tuần tự (thể hiện sự tương đương trong công việc nhưng lệnh lặp diễn tả ngắn hơn nhiều) điều đó cũng giúp học sinh hiểu hơn về vòng lặp) IV. NỘI DUNG BÀI GIẢNG : Hoạt động của Giáo viên và Học sinh GV : Đưa ra bài toán, yêu cầu học sinh tìm cách để lập trình giải các bài toán này . HS : Đưa ra cách giải của mình, học sinh có thể đưa ra những cách giải khác nhau .. Nội dung. 1. Khái niệm lặp - Xét 2 bài toán như sau với a > 2 là số nguyên cho trước :. GV : Đưa ra cách giải cho bài toán . Giải theo các lệnh tuần tự S1:=0; If (1/a>0.0001) then S1:=S1+ 1/a; Bài toán 1 : Tính tổng 1 1 1 1 If (1/(a+1)>0.0001) then S1:=S1+ 1 ... S1= /(a+1); a a 1 a 2 a 100 If (1/(a+2)>0.0001) then S1:=S1+ 1 /(a+2); Bài toán 2 : Tính Tổng If (1/(a+3)>0.0001) then S1:=S1+ 1 1 1 1 1 ... ... S2= /(a+3); a a 1 a 2 aN … 1 0.0001 Với điều kệin aN. GIÁO ÁN TIN HỌC 11. Trang 20 Lop11.com.
<span class='text_page_counter'>(21)</span>