P. 1
Giao an Tin Hoc 11 CA Nam

Giao an Tin Hoc 11 CA Nam

|Views: 1,178|Likes:
Được xuất bản bởiphat_d

More info:

Published by: phat_d on Oct 05, 2011
Bản quyền:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

01/14/2013

pdf

text

original

Sections

  • §2
  • §3 CẤU TRÚC CHƯƠNG TRÌNH
  • §4 MỘT SỐ KIỂU DỮ LIỆU CHUẨN
  • §5. KHAI BÁO BIẾN
  • §6. PHÉP TOÁN, BIỂU THỨC, CÂU LỆNH GÁN
  • §9. CẤU TRÚC RẼ NHÁNH
  • §10. CẤU TRÚC LẶP
  • §11. KIỂU MẢNG
  • §12. KIỂU XÂU
  • §13. KIỂU BẢN GHI
  • §14. KIỂU DỮ LIỆU TỆP §15. THAO TÁC VỚI TỆP
  • §16. VÍ DỤ LÀM VIỆC VỚI TỆP
  • §17. CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI(TT)
  • §18. VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON(TT)

Giáo án Tin học 11

THPT Trần Phú Đăk Lăk

Chương 1 MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH Bài 1 : §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

Ổn định lớp:
+ + + Chào thầy cô. Cán bộ lớp báo cáo sỉ số Chỉnh đốn trang phục

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 tính đã học ở lớp 10. GV: Đặt câu hỏi 2: Em hãy cho biết có mấy loại ngôn ngữ lập trình? HS: Trả lời câu hỏi của giáo viên. GV: Phân tích câu trả lời của học sinh.
 Bùi Quang Tỵ

Khái niệm lập trình: Lập trình là sử dụng một cấu trúc dữ liệu và các câu lệnh của một ngôn ngữ lập trình cụ thể để mô tả dữ liệu và diễn đạt thuật toá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ữ bậc cao.

Chương trình viết bằng ngôn ngữ máy có thể
-1-

Giáo án Tin học 11

THPT Trần Phú Đăk Lăk

Mỗi loại máy có một ngôn ngữ riêng, 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 cao muốn thi hành được trên loại máy nào thì cần chuyển chương trình sang ngôn ngữ máy của máy đó. GV: Đặt câu hỏi 3 : Làm thế nào để chuyển chương trình viết bằng ngôn ngữ bậc cao sang ngôn ngữ máy? Đưa ra ví dụ : Bạn là người không biết tiếng Anh vậy làm sao để bạn có thể nói chuyện với người Anh hay đọc một cuốn sách tiếng Anh?

nạp trực tiếp vào bộ nhớ thi hành ngay. Chương trình viết bằng ngôn ngữ bậc cao nói chung không phụ thuộc loại máy, muốn thi hành được thì nó phải được chuyển sang ngôn ngữ máy. =>Cần phải có chương trình dịch để chuyển chương trình viết bằng ngôn ngữ lập trình bậc cao sang ngôn ngữ máy để máy có thể 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 để người đó có thể đọc được)

Chương trình dịch có 2 loại: Biên dịch và thông dịch
+ Biên dịch (Compiler): Thực hiện các bước sau:  Duyệt, kiểm tra, phát hiện lỗi và kiểm tra tính đúng đắn của các câu lệnh trong chương trình nguồn .  Dịch toàn bộ chương trình nguồn thành một chương trình đích (ngôn ngữ máy) để có thể thực hiện trên máy và có thể lưu trữ để sử dụng lại khi cần. + Thông dịch (Interpreter): Dịch lần lượt từng câu lệnh và thực hiện ngay câu lệnh ấy. Thông dịch được thực hiện bằng cách lặp lại dãy các bước sau:  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 .

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 công việc. Biên dịch: Sử dụng ngôn ngữ lập trình Pascal để dịch một chương trình viết sẵn ra đĩa và thi hành chương trình đã dịch để học sinh quan sát. Thông dịch: Sử dụng các lệnh trong Command promt để thực hiện một số lệnh của DOS hoặc dùng ngôn ngữ Foxpro để thực hiện một số lệnh quản trị dữ liệu, học sinh dễ dàng nhận ra việc thông dịch. Đi kèm với các chương trình dịch thường 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 báo lỗi,… ngôn ngữ lập trình thường chứa tất cả các dịch vụ trên.

V.

CỦNG CỐ , DẶN DÒ:
 Nhắc lại một số khái niệm mới.

 Bùi Quang Tỵ

-2-

Giáo án Tin học 11

THPT Trần Phú Đăk Lăk

§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

Ổn định lớp:
+ Chào thầy cô. + Cán bộ lớp báo cáo sỉ số + Chỉnh đốn trang phục + 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 này. Ví dụ: Bảng chữ cái của các ngôn ngữ lập trình khác nhau có sự khác nhau. Chẳng hạn ngôn ngữ Pascal không sử dụng dấu ! nhưng ngôn ngữ C++ lại sử dụng ngôn ngữ này.

1.Các thành phần cơ bản: - Mỗi ngôn ngữ lập trình thường có 3 thành phần cơ bản là : bảng chữ cái, cú pháp và ngữ nghĩa. a.Bảng chữ cái: Là tập các ký hiệu dùng để viết chương trình. -Trong ngôn ngữ Pascal bảng chữ cái gồm: Các chữ cái trong bảng chữ cái tiếng Anh, các chữ số 0  9 và một số ký tự đặc biệt (xem trong SGK) b.Cú pháp: Là bộ quy tắc dùng để viết chương trình.

- Cú pháp các ngôn ngữ lập trình khác nhau cũng khác nhau, ngôn ngữ Pascal dùng cặp từ Begin – End để gộp nhiều lệnh thành 1 lệnh nhưng C++ lại dùng cặp kí hiệu {}.

 Bùi Quang Tỵ

-3-

từ. GV: Mở một chương trình viết bằng 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òn được gọi là từ khóa Ví dụ: Một số từ khóa Trong ngôn ngữ Pascal: Program. Ngữ nghĩa: Xác định ý nghĩa thao tác cần thực hiện ứng với tổ hợp ký tự dựa vào ngữ cảnh của nó.… Tên chuẩn: . Một số khái niệm GV: Trong các ngôn ngữ lập trình nói chung. . _ten … Tên sai: a bc. . while. c. Integer. b. HS: Lắng nghe. .Mỗi ngôn ngữ khác nhau cũng có cách xác định ngữ nghĩa khác nhau.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. trong (2) là cộng hai số nguyên.Các ngôn ngữ lập trình thường cung cấp một số đơn vị chương trình có sẵn trong các thư viện chương trình giúp người lập trình có thể thực hiện được nhanh một số thao tác thường dùng. từ khóa thường hiển thị bằng màu trắng. các ngôn ngữ lập trình thường hiển thị các tên dành riêng với một màu chữ khác hẳn với các tên còn lại giúp người lập trình nhận biết được tên nào là tên dành riêng (từ khóa). GV: Giới thiệu cách đặt tên trong ngôn ngữ cụ thể Pascal. tên chuẩn và tên do người lập trình tự đặt. Sin. Getchar… -4- . tuy nhiên người lập trình có thể sử dụng với ý nghĩa khác.Ngôn ngữ lập trình Pascal không phân biệt chữ hoa. Tên dành riêng: . End. . chữ thường. Var. Mỗi ngôn ngữ lập trình có một quy tắc đặt tên riêng . Char. chữ thường. GV: Đưa ra ví dụ ngôn ngữ tự nhiên cũng có bảng chữ cái. Uses. 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. B là các số thực. Khi đó dấu + trong (1) sẽ là cộng hai số thực.Trong Free Pascal. Trong ngôn ngữ Pascal.2x. Cos. GV: Đưa ra ví dụ: Để viết chương trình giải  Bùi Quang Tỵ Ví dụ: Một số tên chuẩn Trong ngôn ngữ Pascal: Real.Mọi đối tượng trong chương trình đều phải được đặt tên.Ngôn ngữ lập trình thường có 3 loại tên cơ bản: Tên dành riêng. void. 2. ngữ pháp (cú pháp) và nghĩa của câu. Tên . 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. tên có thể có tối đa 255 ký tự. j là các số nguyên. Giáo viên chỉ cho học sinh một số tên chuẩn trong ngôn ngữ Pascal. Ví dụ : Tên đúng: a. o Trong khi soạn thảo chương trình. . có ngôn ngữ không phân biệt chữ hoa. include. a&b … a. GV: Ngôn ngữ nào cũng có 3 loại tên cơ bản này nhưng tùy theo ngôn ngữ mà các tên có ý nghĩ khác nhau trong các ngôn ngữ khác nhau. 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. x2. … Trong ngôn ngữ C==: cin. c. Begin.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ví dụ: Xét 2 biểu thức: A + B (1) A.Trong ngôn gnữ Turbo Pascal tên là một dãy liên tiếp không qúa 127 ký tự bao gồm các chữ cái. chữ số và dấu gạch dưới nhưng phải bắt đầu bằng chữ cái hoặc dấu gạch dưới. x1. Cú pháp cho biết cách viết chương trình hợp lệ. Lỗi ngữ nghĩa được phát hiện khi chạy chương trình. … Trong ngôn ngữ C++: main. chữ thường nhưng một số ngôn ngữ lập trình khác lại phân biệt chữ hoa và chữ thường. ghi chép. . I + J (2) I. 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. .cout.Là những tên được ngôn ngữ lập trình quy định với ý nghĩa xác định mà người lập trình không thể dùng với ý nghĩa khác. ngữ nghĩa xác định ý nghĩa của các tổ hợp ký tự trong chương trình.

+ 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 Biến: .Biến phải khai báo trước khi sử dụng. nếu không có máy để giới thiệu thì có thể sử dụng bản in sẵn khổ lớn. để 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. + Delta là tên để lưu giá trị của Delta. + X1. Tên do người lập trình tự đặt .…Mỗi loại ngôn ngữ có những loại biến khác nhau và cách khai báo cũng khác nhau.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk phương trình bậc hai ta cần khai báo những tên sau: + a.Hằng được đặt tên cũng có cách đặt tên cho hằng khác nhau. Khi viết chương trình.X2 là 2 tên dùng để lưu nghiệm nếu có. . Chú thích .Các NNLT có nhiều loại biến khác nhau. DẶN DÒ :  Nhắc lại một số khái niệm mới  Cho bài tập về nhà  Bùi Quang Tỵ -5- . - c.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 không được đặt tên là những giá trị viết trực tiếp khi viết chương trình. CỦNG CỐ .Các tên trong chương trình không được trùng nhau b. Hằng thường có 2 loại. làm trung gian cho các tính toán. hằng được đặt tên và hằng không được đặt tên.Được xác định bằng cách khai báo trước khi sử dụng và không được trùng với tên dành riêng. Ngôn ngữ khác nhau thì cách viết chú thích cũng khác nhau. 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. IV. 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.c là ba tên để lưu ba hệ số của chương trình.b. Chú thích không làm ảnh hưởng đến 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. Biến là đại lượng có thể thay đổi được nên thường được dùng để lưu trữ kết qủa. .Là đại lượng được đặt tên. chỉ cho học sinh từng khái niệm được thể hiện trong chương trình .Trong khi viết chương trình có thể viết các chú thích cho chương trình. . 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. giá trị có thể thay đổi được trong chương trình. - - Biến là đối tượng được sử dụng nhiều nhất trong khi viết chương trình. Trong Pascal chú thích được đặt trong { và } hoặc (* và *) Trong C++ Chú thích đặt trong /* và */ - GV: Mở một chương trình Pascal đơn giản có chứa các thành phần là các khái niệm của bài học.

Khai báo thư viện: . máy tính. 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. [<Phần khai báo>] <Phần thân> 2. . các đoạn chương trìnhnày cực kỳ hữu ích cho gnười lập trình. GV : Thư viện chương trình thường chứa những đoạn chương trình lập sẵn giúp người lập trình thực hiện một số công việc thường dùng. Ví dụ : Program Bai_1. -6- GV : Thuyết trình đưa ra cấu trúc chung của chương trình : HS: Lắng nghe. .Trong ngôn gnữ Pascal : Uses <tên thư viện>.Trong ngôn ngữ C++ : #include<Tên tệp thư viện> Ví dụ: Trong Turbo Pascal : Uses CRT.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk CHƯƠNG II: CHƯƠNG TRÌNH ĐƠN GIẢN §3 CẤU TRÚC CHƯƠNG TRÌNH I. PHƯƠNG PHÁP.  Phương tiện: Máy chiếu. Các thành phần của chương trình a. II.Phần khai báo .  Nhận biết được các thành phần của một chương trình đơn giản.… Khai báo tên chương trình . GRAPH. Cán bộ lớp báo cáo sỉ số Chỉnh đốn trang phục 1.Trong Turbo pascal Program <tên chương trình>. PHƯƠNG TIỆN DẠY HỌC:  Phương pháp: Thuyết trình. vấn đáp. biến. 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. thư viện. phòng chiếu hoặc bảng III.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. nhất là trong những ngôn ngữ lập trình tiên tiến hiện nay. Program Tong. Cấu trúc chung . GV : Mỗi ngôn ngữ lập trình có cách khai báo khác nhau và tùy thuộc vào ngôn ngữ mà ta cần tìm hiểu xem trong chương trình ta cần khai báo những gì . NỘI DUNG BÀI GIẢNG: Hoạt động của Giáo viên và Học sinh Nội dung Ổn định lớp: + + + Chào thầy cô. ghi chép . GV : Phần khai báo sẽ báo cho máy biết chương trỉnh sẽ sử dụng những tài nguyên nào của máy.Có thể khai báo tên chương trình. chương trình con. hằng được đặt tên. thành phần nào bắt buộc phải có … IV.  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.Tên chương trình do người lập trình tự đặt theo đúng quy tắc đặt tên. 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ó. ghi chép GV : Thuyết trình đưa ra kiến thức HS : Lắng nghe. GV : Lấy một ngôn ngữ lập trình mới nhất hiện  Bùi Quang Tỵ .

Writeln và xâu được để trong dấu nháy đơn .Mọi biến sử dụng trong chương trình đều phải khai báo để chưoyng trình dịch biết để xử lý và lưu trữ. chẳng hạn Visual Basic.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. Ví dụ: Trong Pascal : Const N = 100.NET.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. Trong C++ : Const int N = 100. 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. CỦNG CỐ . } V.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk nay. Khai báo hằng còn tiện lợi hơn khi cần thay đổi giá trị của nó trong chương trình. GV : Lập trình bằng ngôn ngữ nào cần tìm hiểu cách khai báo hằng của ngôn ngữ ấy.7 Khai báo biến : .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. e = 2. End. 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. GV : Đưa ra những ví dụ khác nhau về cách viết thân chương trình trong các ngôn ngữ lập trình khác nhau.Xml Khai báo hằng : . GV : Mỗi ngôn ngữ lập trình có cách tổ chức chương trình khác nhau.h> Main() { Printf(“Chao cac ban”). khai báo biến là xin máy tính cấp cho chương trình một vùng nhớ để lưu trữ và xử lý thông tin trong bộ nhớ trong. Trong VISUAL STUDIO 2005 : Imports System. 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++. Readline. . 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 đó. GV : Nếu có thể giáo viên giải thích để học sinh có thể hiểu được rằng. Begin Write(‘Chao cac ban’). Chương trình 2 : Trong ngôn ngữ C++ #include<stdio.Biến chỉ mang một giá trị gọi là biến đơn (Khai báo biến sẽ trình bày ở bài 5) Phần thân chương trình : . 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. Const float e = 2. 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 viết lặp lại nhiều lần cùng một hằng trong chương trình.  Bùi Quang Tỵ -7- . thường thì phần thân chứa các câu lệnh của chương trình. lấy một số lệnh để học sinh thấy được sự tiện dụng khi sử dụng thư viện. 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. .7.

Một số thông tin khác lại chỉ cần biết chúng là đúng hay sai .1 … 231 .Số thứ tự của học sinh là các số nguyên. NNLT Pascal có một số kiểu dữ liệu chuẩn sau : Nội dung 1. các kí tự trong -8-  Bùi Quang Tỵ . và miền con. Với mỗi kiểu dữ liệu người lập trình cần ghi nhớ tên kiểu.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk §4 I. … IV. .  Xác định được kiểu cần khai báo của dữ liệu đơn giản. 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. 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.  Cán bộ lớp báo cáo sỉ số  Chỉnh đốn trang phục 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 ? HS : Suy nghĩ.  Phương tiện: Máy chiếu.Họ tên học sinh là những thông tin dạng văn bản hay là dạng ký tự .1 2. 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. 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. PHƯƠNG PHÁP. máy tính. . Kiểu số nguyên Kiểu BYTE INTEGER WORD LONGINT Số Byte 1 2 2 4 Miền giá trị 0… -215 0… -231 255 … 215 . ký tự. 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ự. miền giá trị và số lượng ô nhớ để lưu một giá trị thuộc kiểu đó. PHƯƠNG TIỆN DẠY HỌC:  Phương pháp: Thuyết trình. 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. MỘT SỐ KIỂU DỮ LIỆU CHUẨN MỤC ĐÍCH YÊU CẦU  Biết một số kiểu dữ liệu định sẵn: nguyên. 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. việc so sánh dựa trên mã của từng kí tự. logic. phòng chiếu hoặc bảng III. . 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.1 216 .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 REAL EXTENDED Miền giá trị 0 hoặc nằm trong (1038  1038) 0 hoặc nằm trong (104932  104932) Số Byte 6 10 - - 3. Kiểu thực . - - - Ví dụ: Trong bảng mã ASCII. II.Điểm của học sinh là các thông tin các số thực . NỘI DUNG BÀI GIẢNG: Hoạt động của Giáo viên và Học sinh Ổn định lớp:  Chào thầy cô. đưa ra một vài dạng thông tin như sau : . 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. vấn đáp. thực. Kiểu dữ liệu nào cũng có miền giới hạn của nó.

… Có ngôn ngữ lại không có kiểu logic mà người lập trình phải tự tìm cách để thể hên những giá trị dạng này. các chữ số cũng xếp liên tiếp. 0 mã 48 4.Kiểu logic là kiểu thường chỉ có 2 giá trị đúng – sai. cụ thể: A mã 65. .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Để 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ó . - V. Pascal dùng True – False nhưng một số ngôn ngữ khác lại mô tả bằng 0 – 1.  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  Bùi Quang Tỵ -9- . DẶN DÒ:  Nhắc lại các kiểu dữ liệu đơn giản hay dùng. 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ự. Mỗi ngôn ngữ khác nhau lại có cách mô tả kiểu logic khác nhau. CỦNG CỐ . Kiểu logic Tên kiểu : Boolean Miền giá trị : Chỉ có 2 giá trị là TRUE (Đúng) hoặc FALSE (Sai) Một số ngôn ngữ có cách mô tả các giá trị logic bằng những cách khác nhau. bảng chữ cái tiếng Anh xếp liên tiếp vối nhau. Khi viết chương trình bằng ngôn ngữ lập trình nào thì cần tìm hiểu đặc trưng của các kiểu dữ liệu của ngôn ngữ đó. a mã 97.

7. s. CỦNG CỐ . máy tính.8. DẶN DÒ : o o Nhắc lại một số khái niệm mới. IV. Khai báo biến cần quan tâm đến phạm vi giá trị của nó . p: nửa chu vi tam giác cv. KHAI BÁO BIẾN I. PHƯƠNG TIỆN DẠY HỌC: o o III. s: chu vi và diện tích tam giác GV : Đặt câu hỏi: Khi khai báo biến cần chú ý những điều gì ? HS : Suy nghĩ trả lời câu hỏi GV : Phân tích câu trả lời của học sinh Trong ngôn ngữ Pascal.B1. cv: Real. V. x2. Trong đó : a. b.9. b. o Không nên đặt tên qúa ngắn hay quá dài. Khai báo đúng Nhận biết được khai báo sai. c. delta : real. b. biến đơn được khai báo như sau : Var <danh sách biến> : <kiểu số liệu> Trong đó: ax2 + bx + c = 0 + + + + Var : là từ khóa dùng để khai báo biến Danh sách biến : tên các biến cách nhau bởi dấu phẩy Kiểu dữ liệu : là một kiểu dữ liệu nào đó của ngôn ngữ Pascal Sau Var có thể khai báo nhiều danh sách biến có những kiểu dữ liệu khác nhau + + + Cần đặt tên biến sao cho gợi nhớ đến ý nghĩa của nó.Để tính chu vi và diện tích tam giác cần khai báo các biến sau: Var a.10 -  Bùi Quang Tỵ . MỤC ĐÍCH YÊU CẦU o o o Hiểu được cách khai báo biến. Cho bài tập về nhà . PHƯƠNG PHÁP. vấn đáp. dễ dẫn đến mắc lỗi hoặc hiểu nhầm. Phương tiện : Máy chiếu. c: dùng để lưu độ dài 2 cạnh của tam giác. o Khai báo biến cần quan tâm đến phạm vi giá trị của nó. dễ dẫn tới mắc lỗi hoặc hiểu nhầm. c. 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.B2 Tiết 5 §5. NỘI DUNG BÀI GIẢNG : Nội dung Hoạt động của Giáo viên và Học sinh Ổn định lớp:  Chào thầy cô.Để giải phương trình bậc hai cần khai báo các biến như sau: Var a. Chú ý cho học sinh : o Cần đặt tên biến sao cho gợi nhớ đến ý nghĩa của nó. . phòng chiếu hoặc bảng II. p.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn: 05/10/2008 Lớp dạy: 11A3. x1.  Cán bộ lớp báo cáo sỉ số  Chỉnh đốn trang phục 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. HS : Lắng nghe và ghi chép Ví dụ : . Phương pháp : Thuyết trình. Không nên đặt tên quá ngắn hay quá dài.

Phép toán NNLT Pascal sử dụng một số phép toán sau: . PHƯƠNG TIỆN DẠY HỌC: Phương pháp: Thuyết trình. *. Ta xét các khái niệm này trong ngôn ngữ Pascal - 1. hàm số học chuẩn và biểu thức quan hệ. Có thể cho học sinh so sánh với phép so sánh bằng và từ đó phân biệt dễ dàng. 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. biểu thức. Kết quả của phép toán quan hệ mang giá trị logic. LƯU Ý SƯ PHẠM: Đối với việc dạy phép toán. Đối với việc dạy biểu thức số học. o o PHƯƠNG PHÁP. mod (chia lấy dư) . Hiểu lệnh gán. * (nah6n). vấn đáp.11 - .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk §6. >=. =.. VD : Phép lũy thừa không phải ngôn ngữ nào cũng viết được. -. 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. Tại câu lệnh gán cần cho học sinh hiểu lệnh gán là lấy giá trị của biểu thức bên phải để đưa vào biến bên trái. Phân biệt được sự khác nhau giữa lệnh gán (:=) và phép so sánh bằng. Kiễu giá trị của biểu thức thường là kiểu của biến. GV : Mỗi ngôn ngữ khác nhau lại có cách kí hiệu phép toán khác nhau.Với số nguyên : +. máy tính. Viết được lệnh gán.Với số thực : +. câu lệnh gán. o o o o o MỤC ĐÍCH YÊU CẦU Giới thiệu phép toán. 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. AND (và): thường dùng để kết hợp . >. CÂU LỆNH GÁN I. và một số phép toán có kí hiệu khác với kí hiệu trong toán học. Phương tiện: Máy chiếu. <>: 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). BIỂU THỨC. biểu thức số học. / (chia) . -. nên sử dụng biến trung gian để tránh việc sử dụng biến nhiều lần. thực hiện các so sánh để đưa ra quyết định xem làm việc gì? Vậy trong chương trình ta viết thế nào? Có giống với ngôn ngữ tự nhiên hay không? Tất cả các ngôn ngữ có sử dụng chúng một cách giống nhau không ? GV : Toán học có những phép toán nào ? HS : Đưa ra một số phép toán thường dùng 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. IV. Khi dạy biểu thức quan hệ và biểu thức logic.  Bùi Quang Tỵ - Ngôn ngữ lập trình nào cũng sử dụng đến phép toán. PHÉP TOÁN. 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. 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. div (chia lấy nguyên).Các phép toán quan hệ <. OR (hoặc). một số phép phải xây dựng từ các phép toán khác. phòng chiếu hoặc bảng III. + Cán bộ lớp báo cáo sỉ số + Chỉnh đốn trang phục 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. NỘI DUNG BÀI GIẢNG : Nội dung Hoạt động của Giáo viên và Học sinh Ổn định lớp: + Chào thầy cô. hay hằng có độ lớn kiểu lớn nhất trong nó. hay thay giá trị biến bên trái lệnh gán bằng giá trị của biểu thức bên phải. <= .

-Kết qủa của hàm phụ thuộc vào kiểu của đối số.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.…) 5.… 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. cosx. Biểu thức logic . ngoài ngoặc sau. GV : Cách viết biểu thức phụ thuộc cú pháp từng ngôn ngữ lập trình. 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 các giá trị thông dụng. . . *. . /.Kết quả của biểu thức quan hệ là TRUE hoặc FALSE Ví dụ: A < B. cần quan tâm đến kiểu của đối số và kiểu của giá trị trả về. Đư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.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ỳ. Biểu thức số học Là một dãy các phép toán +. 2*A >= 4+ B GV : Đặt câu hỏi. -.  Bùi Quang Tỵ . GV : Đặt câu hỏi. biểu thức là gì? HS : Đưa ra khái niệm.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk nhiều biểu thức quan hệ với nhau. .Biểu thức 1 và biểu thức 2 phải cùng kiểu. Nhân chia trước cộng trừ sau. Div và Mod từ các hằng. muốn so sánh nhiều điều kiện đồng thời làm thế nào? HS : Đưa ra ý kiến của mình.Ba số dương a. c là độ dài ba cạnh tam giác nếu biểu thức sau cho giá trị đúng (a+ b > c) and (b+ c >a) and (c+ a >b) . HS : Gọi một vài học sinh lên bảng viết. VD : 3>5: Cho kết quả sai Thứ tự thực hiện các phép toán : Trong ngoặc trước.12 - Đưa ra ví dụ và cách viết đúng trong ngôn ngữ Pascal Chú ý : Mỗi ngôn ngữ có cách viết khác nhau. muốn tính X2 ta viết thế nào? HS : Có thể đưa ra là X*X GV : Muốn tính . hoặc.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. Hàm số học chuẩn . Biểu thức quan hệ còn được gọi là biểu thức so sánh 2 giá trị. 2. 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 đó: . Dùng cặp dấu () để qui định trình tự tính toán.Biểu thức logic đơn giản nhất là hằng hoặc biến logic. 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. .sinx. GV : Với các hàm chuẩn. (và. 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.Cách viết : Tên_hàm (Đối số) . GV : Trong toán học. b. 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. VD : Sinx thì được đo bằng độ hay radian ? GV : Trong lập trình thường ta phải so sánh hai giá trị nào đó trước khi thực hiện lệnh nào đó. 3. GV : Đưa ra khái niệm biểu thức trong lập trình. cho kết quả là đúng hoặc sai (logic). Bảng một số hàm chuẩn: (Theo dõi SGK và màn hình) 4. Ví dụ: . biến kiểu số và các hàm.Đố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.

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. I := I + 1.13 - .  Bùi Quang Tỵ . .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk GV : Mỗi NNLT có cách viết lệnh gán khác nhau. có thể cho thêm bài theo cột.Hoạt động của lệnh gán : Tính giá trị của biểu thức sau đó ghi giá trị đó vào tên biến. Trong đó : lệnh thứ 3 tăng giá trị của I một đơn vị. GV : Phân tích câu trả lời của học sinh sau đó tổng hợp lại: cần chú ý đến kiểu của biến và kiểu của biểu thức. thường dùng để gán giá trị cho biến Cấu trúc: <tên biến> := <biểu thức>. X2 := (-b +sqrt(b*b – 4*a*c))/(2*a). 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ó. Câu lệnh gán . GV : Minh họa một vài lệnh gán bằng một ví dụ trực quan trên bảng hoặc trên màn hình. Có nghĩa là kiểu của tên biến phải cùng kiểu với kiểu của biểu thức hoặc phải bao hàm kiểu của biểu thức. GV : Cần chú ý điều gì khi viết lệnh gán? HS : Đưa ra ý kiế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). lệnh thứ 4 giảm giá trị biến J hai đơn vị. một cột là biểu thức toán học. DẶN DÒ: o o Nhắc lại một số khái niệm mới. Biểu thức điều kiện 0 d” X d’ 5 được viết như sau: (x >= 0) and (x <= 5) 6. V. Ví dụ: X1 := (-b –sqrt(b*b – 4*a*c))/(2*a).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.Trong đó biểu thức phải phù hợp với tên biến. . Cho bài tập về nhà. J := J – 2. CỦNG CỐ .

Write(‘Ban vua nhap vao 3 so:. o Cán bộ lớp báo cáo sỉ số o Chỉnh đốn trang phục GV: Khi sử dụng các ứng dụng ta thường nhập thông tin vào. Ví dụ: Read(N). c). b.9.<biến n>). Readln(a. Readln(tuoi). phòng chiếu hoặc bảng PHƯƠNG PHÁP. NỘI DUNG BÀI GIẢNG: Hoạt động của Giáo viên và Học sinh Ổn định lớp: o Chào thầy cô. o Cần hướng dẫn cụ thể cho học sinh việc sử dụng lệnh Write và Writeln. Trong ngôn ngữ Pascal các thủ tục vào ra chuẩn viết như sau : Nội dung 1.  Bùi Quang Tỵ .c). II. Nhập dữ liệu từ bàn phím . …. vấn đáp.Ta dùng thủ tục chuẩn READ hoặc READLN có cấu trúc như sau: READ/READLN(<biến 1>. Write(‘Moi ban nhap 3 so:’). c). Uses crt. Write(‘Moi ban cho biet tuoi cua ban’). Readln. Ví dụ 1 : Xét chương trình sau: Program VD. 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. sáng sủa (tốt nhất là viết chương trình cụ thể. Phương pháp: Thuyết trình. b. Chú ý : Khi nhập dữ liệu từ bàn phím READ và READLN có ý nghĩa như nhau. Var a. End. đơn giản) III. IV. GV: Mỗi ngôn ngữ có cach nhập thông tin vào khác nhau.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn: 10/10/2008 Lớp dạy: 11A3. Ví dụ 2 : Xét chương trình sau: Program VD. MỤC ĐÍCH YÊU CẦU o o o o 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. các cách để hiển thị dữ liệu. thường hay dùng READLN hơn. Viết được một số lệnh vào ra đơn giản. READLN luôn chờ gõ phím Enter. Uses crt.14 - . ‘Tuoi’). b. GV: Đưa ra hai ví dụ về chương trình có nhập thông tin vào từ bàn phím . PHƯƠNG TIỆN DẠY HỌC: LƯU Ý SƯ PHẠM : o 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. GV : Chạy chương trình cho học sinh quan sát. CÁC THỦ TỤC CHUẨN VÀO/RA ĐƠN GIẢN I. Var Tuoi: Byte Begin Clrscr. các kiểu dữ liệu trong nó. (không tham số) tiếp theo.B2 Tiết 6 § 7. Phương tiện: Máy chiếu.b.8.7. o 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ý. c : Integer. Begin Clrscr. tuoi cua ban la’. GV: Diễn giải hoạt động của READ/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. a. Write(‘Cam on. End. máy tính. Readln(a.tuoi.B1. nêu sự khác nhau khi dùng Read/Readln. Readln.

Var N : Integer.X:8:3). Có thể lấy dữ liệu của phần nhập dữ dữ liệu sửa để học sinh thấy việc khác nhau giữa 2 lệnh Write và Writeln. Ví dụ 2 : Xét chương trình đầy đủ sau: Program VD2. b. {1} Readln(M) {2} Trong đó: {1} Đưa ra thông báo: Nhap gia tri cua M: Còn {2} Dùng để đọc giá trị và gán cho biến M. Readln(N). Minh họa quy cách đưa thông tin ra bằng chương trình. giá trị cụ thể. GV : Mỗi ngôn ngữ có cách đưa thông tin ra màn hình khác nhau. 2. VI. chạy chương trình để học sinh thấy sự khác nhau khi sử dụng hai lệnh này . c). Giải thích việc nhập giá trị cho nhiều biến đồng thời . Đưa dữ liệu ra màn hình ta dùng thủ tục WRITE hoặc WRITELN với cấu trúc : Write/Writeln(<Giá trị 1>. b. GV : Giải thích sự khác nhau giữa Write. tên hằng.…. End.  Bùi Quang Tỵ . Writeln(‘Gia tri cua N la : ’. c dính liền vào nhau và người sử dụng không thể phân biệt được giá trị của từng biến.Để đưa dữ liệu ra màn hình tại vị trí con trỏ. <Giá trị 2>. Writeln(‘X = ’. b. Vậy làm thế nào và có những cách nào để hiển thị dữ liệu theo ý muốn của người lập trình . CỦNG CỐ .N).Giáo án Tin học 11 THPT Trần Phú Đăk Lăk nhận xét về chương trình . Writeln.15 - . c) trong ví dụ 2 thánh Read(a.‘nguoi ban trong lop’). {2} gọi là giao tiếp người – máy. c). Write(‘Vay la ban co’. Begin Write(‘lop ban co bao nhieu nguoi:’). o Ra bài tập về nhà . b. Write(‘Go Enter de ket thuc chuong trinh’). 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:’). Ví dụ: Write(a. Cấu trúc {1}.<Giá trị n>). Ngoài ra trong TP còn có qui cách đưa thông tin ra như sau : Kết quả thực hiện :<Độ rộng>:<Số chữ số thập phân> Kết quả khác: :<Độ rộng> Ví dụ: Write(N : 8).N -1. 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.Trong đó các Giá trị có thể là tên biến. .máy sẽ gán giá trị cho các biến theo thứ tự như trong lệnh tương ứng . Sửa lại ví dụ 2 của phần 1 để dữ liệu của 3 số phân cách nhau – người dùng có thể phân biệt được. . Readln. Lấy thêm ví dụ về các thủ tục đưa thông tin ra màn hình của ngôn ngữ khác C++: cout …. -Thủ tục Writeln sau khi đưa kết quả ra sẽ chuyển con trỏ màn hình xuống đầu dòng tiếp theo . biểu thức hoặc tên hàm. GV : Ta thấy ở ví dụ 2 của phần 1 việc ghi ra dữ liệu thì 3 giá trị a. DẶN DÒ: o 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 . Có thể thay đổi lệnh Readln(a. Lấy ví dụ minh họa cụ thể bằng chương trình.

GV : Thực hiện một vài lần các thao tác này để các em nhận thấy mức độ tệin lợi của nó khi soạn thảo cũng như chạy chương trình . làm mịn chương trình để học sinh có thể hình dung ra quá trình lập trình. IV. Màn hình làm việc ngôn ngữ Pascal có dạng như sau: Một số thao tác thường dùng trong Pascal: -Xuống dòng: Enter -Ghi file vào đĩa: F2 -Mở file đã có: F3 -Biên dịch chương trình: Alt + F9 -Soát lỗi chương trình: F9 -Chạy chương trình: Ctrl + F9 -Đóng cửa sổ chương trình: Alt + F3 -Chuyển qua lại giữa các cửa sổ: F6 -Xem lại màn hình kết qủa: Alt + F5 -Thoát khỏi Turbo Pascal: Alt + X V. tạo ra các lỗi điển hình. THỰC HIỆN VÀ HIỆU CHỈNH CHƯƠNG TRÌNH I.tpl (file thư viện) Turbo. thực hiện và hiệu chỉnh chương trình. - CỦNG CỐ . PHƯƠNG TIỆN DẠY HỌC : Phương pháp : Thuyết trình.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk § 8. Turbo. GV : Viết một chương trình ví dụ. máy tính. o o PHƯƠNG PHÁP. sử dụng chương trình dịch để giúp tìm lỗi. o MỤC ĐÍCH YÊU CẦU o o Biết các bước soạn thảo. sửa lỗi.exe (file chạy) Turbo. lập trình nhanh hơn .16 - . hướng dẫn các em cách khởi động Pascal trên máy tính. trả ra kết quả là tuổi của người đó. phòng chiếu hoặc bảng III. Bước đầu sử dụng được chương trình dịch để phát hiện lỗi. SOẠN THẢO.tph (file hướng dẫn) GV : Giới thiệu một số thao tác thường dùng khi soạn thảo chương trình trong môi trường soạn thảo Turbo Pascal . thực hiện các thao tác sửa lỗi… Có thể lấy ví dụ yêu cầu người dùng nhập vào năm sinh. Cho bài tập về nhà. DẶN DÒ: Nhắc lại hoạt động của Write/Writeln. NỘI DUNG BÀI GIẢNG : Nội dung Hoạt động của Giáo viên và Học sinh Ổn định lớp: o Chào thầy cô. vấn đáp. o 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. DỊCH. LƯU Ý SƯ PHẠM: Ta có thể gõ một chương trình từ đầu. o Cán bộ lớp báo cáo sỉ số o Chỉnh đốn trang phục GV : Giới thiệu một số tập tin vần thiết để Turbo Pascal có thể chạy được. dịch. Phương tiện : Máy chiếu. -  Bùi Quang Tỵ .. Biết một số công cụ của môi trường Turbo pascal. II. Read/Readln.

Giáo án Tin học 11

THPT Trần Phú Đăk Lăk

Ngày soạn: 10/10/2008 Lớp dạy: 11A3,7,8,9,B1,B2

Tiết 7.8.9

BÀI TẬP & THỰC HÀNH
I. MỤC ĐÍCH YÊU CẦU
o o o o
Củng cố kiến thức đã học: biết cách khai báo biến, hằng, kiểu dữ liệu; Biết phân biệt rõ các phép toán, các biểu thức và hiểu câu lệnh gán; Biết viết các thủ tục vào/ra đơn giản. Biết khởi động và làm quen với giao diện Pascal.

II.
o o III.

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.

NỘI DUNG BÀI TẬP & THỰC HÀNH :
Nội dung

Hoạt động của Giáo viên và Học sinh

Toàn bộ bài tập trong SGK

 Bùi Quang Tỵ

- 17 -

Giáo án Tin học 11

THPT Trần Phú Đăk Lăk

Ngày soạn: 10/10/2008 Lớp dạy: 11A3,7,8,9,B1,B2

Tiết 10

Chươn 3 g
I.
    

CẤU TRÚC RẼ NHÁNH VÀ LẶP

§9. CẤU TRÚC RẼ NHÁNH
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.
III.

PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC: 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.

 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

IV.

NỘI DUNG BÀI GIẢNG :
Nội dung

Hoạt động của Giáo viên và Học sinh Ổn định lớp:  Chào thầy cô.  Cán bộ lớp báo cáo sỉ số  Chỉnh đốn trang phụ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.

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.

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. vô nghiệm, ngược lại thì phương trình có nghiệm. =>Như vậy ta thấy một số mệnh đề có dạng + Nếu …..thì….. + Nếu …..thì….. ngược lại thì 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 để mô tả các cấu trúc rẽ nhánh như trên .
- 18 -

Kiểm tra >=0

- Hoặc có thể nói : Nếu  < 0 thì phương trình

Thông báo vô nghiệm

Tính và đưa ra nghiệm

 Bùi Quang Tỵ

Kết thúc

Giáo án Tin học 11

THPT Trần Phú Đăk Lăk

Đưa ra khái niệm rẽ nhánh trong lập trình. Mỗi NNLT có cách thể hiện rẽ nhánh khác nhau . GV : Đưa ra cấu trúc lệnh rẽ nhánh 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.

2. Câu lệnh If – Then
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 : If <điều kiện> Then <câu lệnh>; - Dạng đầy đủ : If <điều kiện> Then < câu lệnh 1> Else <câu lệnh 2>

GV : Lưu ý các em sau Then và sau Else chỉ có một lệnh chương trình.

GV : Với hai dạng này, dạng nào dùng thuận tiện hơn ? HS : Tìm câu trả lời, giáo viên gợi ý để 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

Ý 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 Cách 1 : Max :=a; If b >a Then max :=b; Cách 2 : If a >b Then max :=a Else max :=b;

Đư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.

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. GV : Giới thiệu lệnh ghép của một vài ngôn ngữ lập trình khác C==: {} VB: If – Then – Endif
 Bùi Quang Tỵ

3. Câu lệnh ghép
- Trong ngôn ngữ Pascal, Câu lệnh ghép có dạng: Begin <các câu lệnh> End ;

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
- 19 -

GV có thể gõ từng lệnh chương trình. Ví dụ 1 : Tìm nghiệm thực của phương trình bậc hai AX2 + BX + C= 0 Ví dụ 2 : Tìm số ngày của một năm: Năm nhuận là năm chia hết cho 400 hoặc chia hết cho 4 nhưng không chia hết cho 100 . gọi học sinh lên bảng viết câu lệnh If – Then cho một số bài toán đơn giản . yêu cầu các em gõ lại chương trình vừa được theo dõi mà không cần nhìn vào bài mẫu . V. DẶN DÒ:  Nhắc lại một số khái niệm mới . GV : Chỉ rõ đâu là lệnh ghép trong chuỗi lệnh này. gõ đến đâu giải thích cho học sinh đến đó.X1:6:3.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk lệnh đơn hoặc là câu lệnh ghép.  Bùi Quang Tỵ . GV nên soạn sẵn hai chương trình này 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 cách viết một chương trình . Nếu còn thời gian. Chạy thử chương trình và chỉ rõ các lệnh trong chương trình dùng để làm gì . Nếu có nhiều thời gian.’X2=’. Có thể viết chương trình mẫu cho học sinh xong. WRITELN(‘X1=’. Một số ví dụ Quan sát các chương trình sau trong ngôn ngữ lập trình Pascal . END. 4.B/A – X1.20 - . Ví dụ : Đoạn chương trình sau trong ngôn ngữ Pascal có sử dụng chương trình ghép. CỦNG CỐ . IF – THEN – ELSE thông qua các ví dụ . IF DELTA <0 THEN WRITELN(‘Phuong trinh vo nghiem’) ELSE BEGIN X1 :=(-B-SQRT(DELTA))/(2*A).X2:6:3).  Nhắc lại cấu trúc câu lệnh IF – THEN.  Cho bài tập về nhà . X2 := .

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.0001) then S1:=S1+ 1/a. PHƯƠNG TIỆN DẠY HỌC :  Phương pháp : Thuyết trình.. máy tính.. … HS : Nhận xét với việc giải bài toán theo cách đó ? Với N = 100 thì lặp 100 lần như thế nhưng theo việc kiểm tra điều kiện thì không biết phải làm theo cách nào? Theo cả hai trường hợp thì đều quá dài. HS : Đưa ra cách giải của mình. Khái niệm lặp . Viết được thuật toán của một số bài toán đơn giản . việc cộng thêm dừng khi N = 100..8.  Phương tiện : Máy chiếu.12.. Giải theo các lệnh tuần tự S1:=0.0001. vấn đáp . 2. PHƯƠNG PHÁP. 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 . phòng chiếu hoặc bảng . + a a +1 a + 2 a + 100 Bài toán 2 : Tính Tổng 1 1 1 1 + + + . 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ự.. III. GV : Đưa ra cách giải cho bài toán . với mỗi một dạng lệnh lặp. 3.  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.21 -  Bùi Quang Tỵ . học sinh có thể đưa ra những cách giải khác nhau . If (1/(a+1)>0. + + . CẤU TRÚC LẶP I. . If (1/(a+2)>0. Biết cách vận dụng đúng đắn cấu trúc lặp vào tình huống cụ thể . việc cộng thêm dừng khi 1/ (a+N) < 0.9. 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 .B2 Tiết 11. Viết đúng các lệnh lặp kiểm tra điều kiện trước. Hiểu cấu trúc lặp kiểm tra điều kiện trước. If (1/a>0. Tiếp theo mỗi lần cộng thêm vào S là 1/ (a+N) với N = 1. 1. 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) NỘI DUNG BÀI GIẢNG : Nội dung IV. Cán bộ lớp báo cáo sỉ số Chỉnh đốn trang phục GV : Đưa ra bài toán. => số lần lặp đã biết trước.7. cấu trúc lặp với số lần định trước ..       II. => số lần lặp chưa biết. 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 . If (1/(a+3)>0. Với bài toán 2.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn: 19/10/2008 Lớp dạy: 11A3. a a +1 a + 2 a+N 1 < 0.13 §10.Xét 2 bài toán như sau với a > 2 là số nguyên cho trước : Bài toán 1 : Tính tổng S1= 1 1 1 1 + + + .0001) then S1:=S1+ 1 /(a+1).0001) then S1:=S1+ 1 /(a+3). lệnh lặp với số lần lặp trước . … Với bài toán 1.0001 Với điều kệin a +N S2= Cách giải : Bắt đầu S được gán giá trị 1/a. Hoạt động của Giáo viên và Học sinh Ổn định lớp:    Chào thầy cô.B1. tốt nhất viết một ví dụ cụ thể.0001) then S1:=S1+ 1 /(a+2).

Trong đó:  Biến đếm thường là biến kiểu số nguyên. nếu tự xây dựng được thuật toán thì các em sẽ hiểu hơn về lặp không biết trước số lần Đưa thêm ví dụ : Nhắc lại bài toán gửi tiền vào ngân hàng: Nếu có số tiền là A.0001 thì chuyển đến bước 5 . 2. Với 2 ví dụ này. có 2 lọai câu lệnh lặp có số lần biết trước : . câu lệnh sau do thực hiện 1 lần Ví dụ 1 : Hai chương trình cài đặt thuật toán tong_1a và tong_1b . B5: Đưa ra S rồi kết thúc. N) rồi quay lại B2. GV : Đưa ra thuật toán hoặc có thể yêu cầu học sinh tự xây dựng thuật toán giải bài toán 2. giáo viên vừa cho chạy chương trình vừa giải thích ý nghĩa các lệnh trong chương trình (chú ý nhiều đến lệnh lặp) . Lặp thường có 2 loại :  Lặp với số lần biết trước . N :=0. . B2. giá trị cuối là các biểu thức cùng kiểu với biến đếm. Yêu cầu học sinh đưa ra cách giải cho bài toán này . B2: N:=N+1.  Bùi Quang Tỵ Trong Pascal. VD1 : Bài toán gửi tiền vào ngân hàng. thì chuyển sang B3: Nếu N < 1 thì bước 5. Ví dụ 2 : Tính tổng các số nguyên chia hết cho 3 hoặc 5 trong phạm vi từ M đến N (M<N). VD 2: Tính tổng của một đoạn số nguyên mà không được dùng công thức. Trong lập trình.22 - . N:=0.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Để học sinh hiểu được khái niệm lặp. giáo viên đưa ra hai cách lặp trong ngôn ngữ Pascal. N:=101. có những thao tác phải lặp lại nhiều lần. giáo viên nên gõ sẵn chương trình và cho học sinh quan sát việc chạy chương trình. Bước 2 : Nếu 1/(a+N) < 0. NNLT nào cũng cung cấp một số câu lệnh để mô tả các cấu trúc lặp như trên. GV : Gọi một số học sinh nhận xét về 2 thuật toán trên về một số vấn đề :  Thuật toán có lặp không?  Lặp bao nhiêu lần?  Hai thuật toán giống và khác nhau như thế nào?  Cái gì thay đổi trong thuật toán này? Sau khi so sánh hai thuật toán trên. giải thích ý nghĩa của các thành phần trong câu lệnh . chuyển sang bước B4: S:= S + 1/(a+ 5.Lặp dạng tiến: For <biến đếm> := <giá trị đầu> to <giá trị cuối> do <câu lệnh>. Sau đây chúng ta sẽ tìm hiểu các câu lệnh trong ngôn ngữ Pascal. muốn gửi vào ngân hàng để được số tiền là B > A thì cần gửi trong bao lâu với lãi suất là k%.  Ở dạng lặp lùi: Biến đếm tự giảm dần từ giá trị cuối đến giá trị đầu.  Lặp với số lần không biết trước . B1: S:=1/a. GV : Lấy ví dụ minh họa trong Pascal để các em thấy được sự thay đổi giá trị của biến đếm trong một chương trình thực sự của Pascal . B4: S:= S+ 1/ B5: Đưa ra S rồi (a+N) rồi quay lại kết thúc. Giá trị đầu phải nhỏ hơn hay bằng giá trị cuối. . Lặp có số lần biết trước và câu lệnh for – do GV : Đưa ra ví dụ: So sánh hai thuật toán sau: Thuật toán Thuật toán Tong_1a Tong_1b B1: S:=1/a. khi đó ta gọi là cấu trúc lặp.Lặp dạng lùi For <biến đếm> := <giá trị cuối> downto <giá trị đầui> do <câu lệnh>.  Ở dạng lặp tiến: Biến đếm tự tăng dần từ giá trị đầu đến giá trị cuối. 3. Lặp với số lần chưa biết trước và câu lệnh while – do Để giải bài toán 2 ta dùng thuật toán như sau : Bước 1 : S :=1/a. Hằng tháng phải tính lãi và cộng thêm vào gốc đang gửi hay nói cách khác gốc của tháng sau = gốc + lãi tháng trước.  Tương ứng với mỗi giá trị của biến đếm.  Giá trị đầu. giáo viên đưa ra một số ví dụ trong thực tế được tính toán lặp đi lặp lại nhiều lần. B3: Nếu N >100 B2: N := N -1.

Tốt nhất chạy từng bước. Kết thúc. Ý nghĩa : Khi điều kiện còn đúng thì còn thực hiện câu lệnh sau Do sau đó lại quay lại kiểm tra điều kiện. Bước 5: Đưa kết qủa S ra màn hình rồi kết thúc . cho học sinh thấy sự thay đổi của các biến.23 - .Điều kiện là biểu thức quan hệ hoặc logic. Ví dụ 1 : Chương trình của bài toán 1.0001 chưa được thỏa mãn. Ví dụ 2 : Tìm ước chung lớn nhất của M và N.Từ bước 2 đến bước 4 được lặp lại nhiều lần nếu điều kiện 1/(a+N) < 0. Riêng với VD 2. Trong đó . GV: Nên gõ sãn những ví dụ này để học sinh có thể quan sát chương trình. giải thích ý nghĩa các thành phần. V. ngược lại N := N – M rồi quay lại B1 Sau đây là chương trình tìm UCLN.Câu lệnh là một câu lệnh trong Pascal. Thuật toán : B1: Nếu M = N thì ƯCLN := M.  Cho bài tập về nhà  Bùi Quang Tỵ . 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.Do để tổ chức lặp với số lần chưa viết như sau While <Điều kiện> Do <Câu lệnh>. . giáo viên chạy thử chương trình trong Pascal. GV : Đưa ra cấu trúc câu lệnh While – Do Trong Pascal.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk GV : Phân tích phương án trả lời của học sinh sau đó đưa ra lời giải cho bài toán. Bước 3: N :=N +1. B2: Nếu M > N thì M := M – N rồi quay lại B1. N khác nhau. Bước 4: S := S+ 1/(a+N) rồi quay lại bước 2. _ Pascal sử dụng câu lệnh lặp While . CỦNG CỐ . HS : Lắng nghe và ghi chép. trước khi đưa ra thuật toán. GV nên cho học sinh xây dựng thuật toán tìm ước chung lớn nhất (đã học ở lớp 10) Chạy chương trình với nhiều cặp M.

IV. . kiểu chỉ số. MỤC ĐÍCH. PHƯƠNG TIỆN :  Phương pháp : Thuyết trình.  Thực hiện được khai báo mảng.20 Chươn g 4 KIỂU DỮ LIỆU CÓ CẤU TRÚC §11.  Hiểu cách khai báo và truy cập đến các phần tử của mảng . gõ trước chương trình để có thể sử dụng cho các phần tiếp theo . KIỂU MẢNG I.Mảng hai chiều . mảng được đặt tên và mỗi phần tử mang một chỉ số. II.Chào thầy cô . giáo viên đưa ra một số vấn đề cần giải quyết như sau : Với những kiểu dữ liệu như đã biết. Trong lập trình thường mảng : . có 2 loại 1.Lưu trữ và xử lý Họ và tên của một người ? . truy cập.Cán bộ lớp báo cáo sĩ số . Trước khi vào bài. cần lập lập trình xử lý một dãy số nguyên. tính toán các phần tử của mảng . Chương này chúng ta sẽ tìm hiểu một số kiểu dữ liệu trong ngôn ngữ Pascal để trả lời 3 câu hỏi trên . hãy tìm cách lưu trữ một dãy số nguyên trong khi lập trình ? Bằng cách nào để lưu trữ được thông tin dưới dạng bảng khi lập trình ?  Bùi Quang Tỵ NỘI DUNG Có thể sử dụng ví dụ trong SGK để học sinh dễ theo dõi.Mảng một chiều là một dãy hữu hạn các phần tử có cùng kiểu. học sinh khó hiểu nhất vẫn là cách truy xuất tới các phần tử của mảng.19.Chỉnh đốn trang phục .  Phương tiện : Máy chiếu.24 - . GV : Đưa ra ví dụ. Cần làm rõ các khái niệm như : đánh số các phần tử của mảng.Mảng một chiều .  Cài đặt được thuật toán của một số bài toán đơn giản với kiểu dữ liệu mảng một chiều . máy tính. ích lợi của kiểu dữ liệu đó.Lưu trữ và xử lý một dãy số ? . GV : Các ngôn ngữ lập trình thường cung cấp một số kiểu dữ liệu được xây dựng từ những kiểu dữ liệu chuẩn gọi là kiểu dữ liệu có cấu trúc .  Khi làm việc với mảng.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn: 02-01-2009 Lớp dạy: khối 11 Tiết CT: 18. YÊU CẦU :  Hiểu khái niệm mảng một chiều và hai chiều . Kiểu mảng một chiều . III. có thể minh họa bằng hình ảnh . NỘI DUNG BÀI GIẢNG : HOẠT ĐỘNG CỦA GIÁO VIÊN VÀ HỌC SINH Ổn định lớp : . chỉ số. LƯU Ý SƯ PHẠM :  Cần cho học sinh thấy cần phải có một kiểu dữ liệu mới.Lưu trữ và xử lý bảng kết quả thi tốt nghiệp ? HS : Đưa ra các phương án để trả lời cho 3 câu hỏi trên . làm thế nào để : . . vấn đáp . Để mô tả mảng một chiều ta cần xác định kiểu của các phần tử và cách đánh chỉ số các phần . PHƯƠNG PHÁP. phông chiếu hoặc bảng . .

<Tên biến mảng>[Chỉ số] Ví dụ : A[20] Truy cập phần tử mang chỉ số 20 trong mảng A . Ví dụ : Khai báo biến mảng thông qua kiểu mảng : Type ArrayInteger=Array[1. Trong ngôn ngữ Pascal. giải thích ý nghĩa của các từ khóa mới ..Để truy cập vào phần tử mảng ta viết : . Kiểu dữ liệu của phần tử .100] of Integer. Array là từ khóa để khai báo mảng .Cách truy cập vào từng phần tử của mảng . .n2. Cách khai báo biến mảng một chiều . Xét ví dụ : Nhập vào nhiệt độ trung bình mỗi ngày trong tuần . Trong đó : .50] of Real. GV : Đưa ra khái niệm mảng một chiều và một số yếu tố liên quan trong lập trình nói chung . a> Khai báo mảng một chiều GV : Đưa ra cách khai báo mảng một chiều trong ngôn ngữ Pascal. Khai báo mảng trực tiếp : Var A : Array[1. Với mảng một chiều ta quan tâm đến : Tên mảng một chiều .50].. Số lượng phần tử trong mảng .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk HS : Đưa ra ý kiến . Var A : Array[1.  Bùi Quang Tỵ . .Chương trình 2 : Sử dụng kiểu mảng một chiều . B : Array[1. Cách 2 : Type <Tên kiểu mảng> = Array [<kiểu chỉ số>] of <kiểu phần tử> . Var <Tên mảng> : <tên kiểu mảng> . . .25 - GV : Sử dụng một sồ hình ảnh trực quan minh họa cho học sinh cấu trúc mảng và chỉ số của phần tử Chỉ số Giá trị 1 53 2 81 3 62 4 18 5 26 6 41 7 24 8 53 Đưa ra một số khai báo mảng trong Pascal . học sinh sẽ đưa ra ý kiến nhận xét về 2 chương trình. HS : Trong khi giáo viên phân tích hai chương trình. với n1 là chỉ số đầu và n2 là chỉ số cuối. GV : Đánh giá ý kiến của học sinh.Type là từ khóa dùng để khai báo biến. GV : Khai báo bằng cách nào tiện lợi hơn ? HS : Thường thì học sinh trả lời cách 1 tiện lợi hơn ? GV : Tùy trường hợp cụ thể mà ta dùng cách 1 hay cách 2 nhưng thông thường ta sử dụng cách 1 . Tính và đưa ra màn hình nhiệt độ trung bình của cả tuần và đếm số ngày có nhiệt độ lớn hơn nhiệt độ trung bình này ..100] of Integer .Kiểu chỉ số thường là đoạn số nguyên liên tục có n1..Kiểu thành phần là kiểu dữ liệu của phần tử mảng . . mảng một chiều được khai báo bằng hai cách như sau : Cách 1 : Var <Tên mảng> : Array[kiểu chỉ số] of <kiểu phần tử> . .. - GV : Đi sâu phân tích hai chương trình để cho học sinh nhận thấy sự tiện lợi khi sử dụng mảng .Chương trình 1 : Không sử dụng kiểu mảng . tử . ArrayReal=Array[1. sau đó đưa ra mục đích của việc sử dụng cấu trúc mảng trong chương trình . Quan sát hai chương trình viết bằng ngôn ngữ Pascal cùng để giải bài toán trên .50] of Real. .

Chương trình như sau : Program timmax . GV soạn sẵn chương trình và cho học sinh quan sát chương trình . Readln . . …. var A : Array[1. giáo viên sẽ tiến hành soạn chương trình từ đầu để học sinh có thể dễ dàng nhận ra các thao tác cần phải thực hiện khi viết chương trình . Uses crt . GV soạn sẵn chương trình và cho học sinh quan sát chương trình .Ý tưởng : + Đổi để đưa số lớn nhất về vị trí cuối cùng . . HS : Xây dựng thuật toán để giải bài toán (thuật toán đã học ở lớp 10) . End . A2... b> GV : Đưa ra ví dụ . A2.i. Ví dụ 2 : Sắp xếp dãy số nguyên theo bằng thuật toán tráo đổi . var a : array[1.Output : Dãy A được sắp xếp theo thứ tự không giảm . max := a[i] . . AN .  Bùi Quang Tỵ .max) ..50] of Real . Begin clrscr .max. Writeln('chi so ptu lon nhat : '. Một số ví dụ : Ví dụ 1 : Tìm phần tử lớn nhất của một dãy số nguyên . Write('Nhap n = ') . giáo viên sẽ tiến hành soạn chương trình từ đầu để học sinh có thể dễ dàng nhận ra việc chuyển đổi ngôn ngữ từ ngôn ngữ thuật toán sang ngôn ngữ lập trình . csmax :=i .Output : Chỉ số và giá trị của số lớn nhất trong dãy .csmax : Integer . . + Làm tương tự đối với những số còn lại .. Chương trình như sau : Program sapxep .250] of integer .Input : Số nguyên dương N và dãy số A1. Readln(n) .26 - Nếu có nhiều thời gian. Writeln('Gia tri lon nhat : '.. n. End .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk B : Arrat[1.250] of integer .Ý tưởng : + Đặt số A1 là số lớn nhất (max) + Cho i lặp từ 2 đến N.'] = ') . HS : Xây dựng thuật toán để giải bài toán (thuật toán đã học ở lớp 10) . csmax := 1 .Input : Số nguyên dương N và dãy số A1. readln(a[i]) .i. AN .csmax) . nhắc lại ý tưởng của thuật toán . Nếu có thời gian. For i := 2 to n do If a[i] > max then Begin max := a[i] . Uses crt . For i := 1 to n do Begin Write('a['. GV : Đưa ra ví dụ. End . …. nếu A[i]> thì đổi max = A[i] vả lưu lại vị trí i .

Chương trình như sau : Program sapxep . For j := n downto 2 do Begin For i := 1 to j-1 do If A[i] > A[i+1] then Begin tg := A[i] . A[i] := A[i+1] . End . Readln(k).'] = ') . giáo viên sẽ tiến hành soạn chương trình từ đầu để học sinh có thể dễ dàng nhận ra việc chuyển đổi ngôn ngữ từ ngôn ngữ thuật toán sang ngôn ngữ lập trình .csmax). . . Readln(n) . readln . readln(A[i]) .i. Readln(n) .  Bùi Quang Tỵ .………. Begin clrscr . HS : Xây dựng thuật toán để giải bài toán (thuật toán đã học ở lớp 10) . readln .cuoi.i. Ví dụ 3 : Tìm kiếm nhị phân ..250] of integer . Write('Nhap so ptu mang n = ') . .Output : Có hay không chỉ số i mà A[i] = k hoặc thông báo không tìm thấy . readln(A[i]) . End .j. Writeln('chi so ptu lon nhat : '. GV soạn sẵn chương trình và cho học sinh quan sát chương trình .tg : Integer . n. GV : Đưa ra ví dụ. TK : boolean . For i := 1 to n do Begin Write('A['.i.giua : Integer . Uses crt . var A : Array[1.i. End .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk n. dau. For i := 1 to n do Begin Write('A['. End . AN đã được sắp xếp tăng dần .27 - - Nếu có thời gian. Write('Nhap so phan tu mang n = ') . dau := 1 . End .Ý tưởng : Xem lại thuật toán tìm kiếm nhị phân trong SGK lớp 10 . Writeln('day sau khi sap xep : ') . Begin clrscr . End . nhắc lại ý tưởng của thuật toán . Write('nhap so can tim k : ') . A2. TK := false .'] = ') . For i := 1 to n do write(a[i]:8) . Input : Dãy số A1.k : Integer . cuoi := n . A[i+1] := tg .

Khai báo mảng trực tiếp :  Bùi Quang Tỵ . End . số dòng. Var <Tên mảng> : <Tên kiểu mảng> . If TK then write('Chi so la : '. 2. a> Khai báo mảng hai chiều ..50.100] of Real . số cột và kiểu của mỗi phần tử trong mảng . GV : Tùy theo trường hợp cụ thể nhưng thường thì cách 1 hay được dùng hơn .10.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk while (dau <= cuoi) and Not TK Do Begin giua := (dau+cuoi) div 2 . If A[giua] = k then TK := true Else If a[giua]>k then cuoi := giua .1. kiểu chỉ số cột] of <kiểu phần tử> . Cách khai báo biến mảng hai chiều . Với mảng hai chiều ta quan tâm đến : Tên kiểu mảng hai chiều . Ví dụ : Khai báo biến mảng thông qua kiểu mảng : GV : Khi khai báo mảng 2 chiều cần chú ý điều gì ? HS : Tìm câu trả lời. B : ArrayReal .Trong ngôn ngữ Pascal. readln .Mảng hai chiều là một bảng các phần tử cùng kiểu .. Type ArrayInteger = Array[1. GV gợi ý để các em chỉ ra được chỉ số của mảng.. Cách truy cập vào từng phần tử của mảng . GV : Khai báo cách nào tiện lợi hơn (tương tự mảng 1 chiều) ? HS : Thường thì học sinh vẫn chọn cách 1 .1. GV : Quay lại ví dụ về lưu trữ dữ liệu dạng bảng để các em nhận ra nhu cầu phải sử dụng mảng 2 chiều trong lập trình .giua) else write(' Khong tim thay '). kiểu chỉ số cột] of < kiểu phần tử> .15] of Integer .. Var A : ArrayInteger . Kiểu mảng 2 chiều : . Số lượng phần tử của mỗi chiều trong mảng .28 - . ArrayReal=Array[1. Cách 2 : Khai báo gián tiếp thông qua khai báo kiểu mảng Type <Tên kiểu mảng> = Array[kiểu chỉ số dòng. End . Kiểu dữ liệu của phần tử .1 Else dau := giua + 1 . mảnh hai chiều được khai báo như sau : Cách 1 : Khai báo trực tiếp Var : <Tên mảng> : Array[kiểu chỉ số dòng.

Var A : Array[1. Program cuuchuong..100] of Integer..d : integer . Writeln.1. Uses crt . Readln(A[i. Begin Clrscr . write(a[i. j : Byte . For i := 1 to m do For j := 1 to n do If a[i. chú ý đi sâu vào các lệnh lặp để các em nhận ra thường thì ta sử dụng vòng lặp for . For i := 1 to m do For j := 1 to n do Begin Write(' A['. Writeln . Writeln. chỉ số cột] Ví dụ : A[1. .1. Ví dụ 2 : Chương trình sau nhập vào một mảng 2 chiều và số nguyên k. Cách truy cập vào phần tử của mảng hai chiều : Minh họa bằng hình ảnh mảng 2 chiều và chỉ số các phần tử mảng hai chiều cũng như cách viết truy cập phần tử mảng .15] og Integer .'.1. End . Writeln.' la ').j] < k then Begin write('So nho hon '.1.j]:4) ...n. End .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk GV : Gọi một số học sinh lên khai báo một số biến mảng một chiều theo yêu cầu của giáo viên .j]).m : Byte . End .  Bùi Quang Tỵ . Writeln . <Tên mảng>[chỉ số dòng. Readln(m. var A : Array[1. For i := 1 to m do Begin For j := 1 to n do Write(a[i. d := d+1 . Write(' Nhap gia tri k : ').. If d = 0 then Write('Khong co ptu nao nho hon '.50. i.i.'. Write(' Nhap so dong. Writeln . và chạy thử chương trình trên máy để các em tiện theo dõi .29 - Ví dụ 1 : Chương trình sau đưa ra màn hình bảng cửu chương .j]:4).100.do để duyệt qua các phần tử mảng . Writeln('Bang cuu chuong 1 -> 9 : ').j.. sau đó in ra các phần tử có giá trị nhỏ hơn k của mảng . var A : Array[1. Readln(k) .j]:8). GV nên soạn sẵn chương trình và cho các em quan sát chương trình.…… b> Một số ví dụ : GV cho học sinh quan sát chương trình và giải thích các lệnh trong chương trình. End.66]. B[23. k. For i := 1 to 9 do Begin For j := 1 to 9 do Write(a[i. Begin Clrscr . For i := 1 to 9 do For j := 1 to 9 do A[i.3].j.n). Uses crt.100] og Real . Program Timkiem. Readln ..9] of Integer .'] = ').9. i. B : Aarray[1. so cot cua mang : ') .k.10. End . d := 0 .j] := i*j .k). Writeln(' Mang vua nhap vao la : ')..

V.  Ra bài tập về nhà . CỦNG CỐ:  Nhắc lại một số khái niệm mới . và hiển thị để nhập dữ liệu . End . truy xuất.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk readln.  Bùi Quang Tỵ .  Nhắc lại cấu trúc câu lệnh bằng cách chia bảng thành 4 phần đồng thời gọi 4 học sinh lên bảng viết lại các cách khai báo.30 - .

MỤC ĐÍCH. (SGK Tin học 11) Ngày soạn:10-01-2009 Lớp dạy: khối 11 Tiết CT: 24. MỤC ĐÍCH. máy tính. máy tính. giáo viên hướng dẫn thực hành. NỘI DUNG : Bài 1.22 BÀI THỰC HÀNH 3 VI. VIII.  Làm quen với dữ liệu có cấu trúc và bài toán sắp xếp. PHƯƠNG TIỆN :  Phương pháp : Học sinh nhập các câu lệnh. đề xuất thuật toán giải bài toán sao cho chương trình chạy nhanh hơn.31 - . phân tích. phông chiếu hoặc bảng.25 BÀI THỰC HÀNH 4 I. phông chiếu hoặc bảng.(SGK Tin học 11) Bài 2.  Phương tiện : Máy chiếu. YÊU CẦU : Biết nhận xét.NỘI DUNG : Bài 1.(SGK Tin học 11)  Bùi Quang Tỵ . PHƯƠNG PHÁP. III. (SGK Tin học 11) Bài 2.  Phương tiện : Máy chiếu.  Biết giải một số bài toán tính toán. PHƯƠNG TIỆN :  Phương pháp : Học sinh nhập các câu lệnh. giáo viên hướng dẫn thực hành. PHƯƠNG PHÁP.  VII.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn:10-01-2009 Lớp dạy: khối 11 Tiết CT: 21. YÊU CẦU : Nâng cao kĩ năng sử dụng một số câu lệnh và một số kiểu dữ liệu thông qua việc tìm hiểu. tìm kiếm đơn giản trên máy tính.  II. chạy thử các chương trình có sẵn.

MỤC ĐÍCH. Do đó khi viết chương trình bằng ngôn ngữ nào cần tìm hiểu rõ các đối tượng của ngôn ngữ đó . Sử dụng được một số thủ tục. máy tính. YÊU CẦU :     Biết xâu là một dãy ký tự (có thể coi xâu là một mảng một chiều) . trong các ngôn ngữ khác nhau có thể có cách khai báo khác nhau . . .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn: 01-02-2009 Lớp dạy: khối 11 Tiết CT: 26. một số phép toán trên xâu và một số hàm và thủ tục xử lý xâu . . tham chiếu tới phần tử thường được viết : <Tên biến xâu>[chỉ số] GV : Giới thiệu một số khái niệm và thao tác thường dùng khi làm việc với xâu ký tự trong lập trình nói chung . Pascal sử dụng từ khóa STRING để khai báo xâu .32 - . Ví dụ : Var Ten : String[10] . .Mỗi kí tự được gọi là một phần tử của xâu . GV : Phân tích các phương án của học sinh. vấn đáp . Cách khai báo và xử lí xâu trong ngôn ngữ Pascal : 1 Khai báo biến xâu : GV : Đây là cách khai báo trong ngôn ngữ Pascal.Chỉnh đốn trang phục . .Chào thầy cô . nhưng cần chú ý cho các em một số khác biệt so với mảng một chiều : độ dài xâu. có thể sử dụng điều này để dạy về xâu. GV : Để lưu trữ và xử lý Họ tên của một người. Cài đặt được một số chương trình đơn giản có sử dụng xâu . NỘI DUNG : NỘI DUNG HOẠT ĐỘNG CỦA GIÁO VIÊN VÀ HỌC SINH Ổn định lớp : .Cán bộ lớp báo cáo sĩ số .Tham chiếu tới phần tử trong xâu được xác định thông qua chỉ số của phần tử trong xâu . . Khai báo như sau : Var <tên biến> : String[độ dài lớn nhất của xâu] . II. từ đó đưa ra yêu cầu cần sử dụng một kiểu mới : Kiểu xâu . Độ dài tối đa của xâu được viết trong [ ] sau từ khóa STRING . hà thông dụng về xâu .Số lượng kí tự trong xâu được gọi là độ dài của xâu .27 §12. các kiểu dữ liệu đã học có đáp ứng được ? HS : Đưa ra một số phương án . . Một số khái niệm .Chỉ số phần tử trong xâu thường được đánh số là 1 . PHƯƠNG TIỆN : III. KIỂU XÂU I. truy cập phần tử của xâu . Chú ý :  Bùi Quang Tỵ . PHƯƠNG PHÁP.Xâu là một dãy kí tự trong bảng mã ASCII . Ho_dem : String[50] . . Thuận tiện của bài này là các em đã được học khái niệm về mảng. IV.Trong ngôn ngữ Pacal. phông chiếu hoặc bảng . LƯU Ý SƯ PHẠM :  Phương pháp : Thuyết trình.  Phương tiện : Máy chiếu. Que : String . Biết cách khai báo xâu.Xâu có độ dài bằng 0 gọi là xâu rỗng.

Độ dài lớn nhất của xâu là 255 ký tự .s2 : String . Một số hàm chuẩn : Từ đó đưa ra các thủ tục chuẩn và hàm chuẩn của Pascal thường dùng để xử lí xâu .Làm sao để thêm vào một xâu một vài kí tự ? .Làm sao biết một ký tự là dấu cách ? . . CHR(X) : cho kí tự có mã X trong bảng mã ASCII . Insert(S1. Uses crt . Var s1.St) chuyển số X thành xâu kí tự lưu trong St .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Độ dài tối đa của xâu phụ thuộc vào ngôn ngữ lập trình. Trong môi trường soạn thảo của Pascal. 2 Các thao tác xử lí xâu Xét ví dụ như sau : Có xâu kí tự : ‘ nGuyen vaN A ’ Hỏi cần có các thao tác gì để chỉnh sửa xâu kí tự này ? (cần đưa xâu về dạng ‘Nguyen Van A’) HS : Đưa ra ý kiến của mình .S2) tìm vị trí xuất hiện đầu tiên của S1 trong S2 . Ứng với mỗi thủ tục hoặc hàm. Pascal tự động so sánh lần lượt từ kí tự từ trái sang phải .Làm sao để có được chữ in hoa tương ứng với chữ thường. . Upcase(ch) : cho chữ cái viết hoa tương ứng với chữ thường trong ch . <>. 3 Một số ví dụ : Giáo viên soạn sẵn các ví dụ này để tiện cho học sinh theo dõi trên màn hình cũng như việc chạy thử và không làm mất thời gian ngồi viết chương trình .Xóa bớt một số dấu cách . Ord(ch) : cho mã của kí tự ch trong bảng mã . Length(St) : cho độ dài xâu St . nếu đổi thành công thì m =0 Str(X. VD 1 : Program vd1 . . >=. ‘ABC’ > ‘ABB’. nếu không đổi được thì vị trí gây lỗi ghi trong m. Pos(S1. thường là 255 ký tự . Ví dụ : ‘Ha’ + ‘Noi’ cho kết quả là ‘Ha Noi’ Phép so sánh : <. .Chuyển chữ hoa về chữ thường và ngược lại . Ví dụ : ‘AB’ < ‘AC’. GV : Phân tích ý kiến và gợi ý để các em nhận ra cần : .Phép ghép xâu : Kí hiệu bằng dấu cộng + .Làm sao để xóa đi một vài kí tự ? .vt.m) Đổi giá trị xâu St thành số ghi giá trị vào biến X. ‘ABC’ <’ABCD’ Một số thủ tục chuẩn dùng để xử lí xâu : GV : Đưa ra một số câu hỏi : .Làm sao có được chữ cái thường tương ứng với chữ hoa ? . Cách viết hằng xâu trong các ngôn ngữ khác nhau cũng có sự khác nhau .33 -  Bùi Quang Tỵ . . .S1.Hằng xâu kí tự được đặt trong cặp nháy đơn ‘ ’ . .n) sao chép từ xâu St n kí tự từ vị trí vt . <=. - Copy(St. .Nếu không khai báo độ dài tối đa cho biến xâu kí tự thì độ dài ngầm định của xâu là 255 .n) xóa n kí tự của xâu St bắt đầu từ vị trí vt . = .vt. giáo viên chỉ cần làm một chương trình đơn giản có sử dụng một trong các thủ tục hoặc hàm này để các em theo dõi . >.vt) chèn sâu S1 vào S2 bắt đầu từ vị trí vt của S2 Val(St.Làm sao biết xâu hiện có bao nhiêu kí tự ? - - Delete(St.Với các xâu kí tự có các phép phép xâu và phép so sánh hai xâu kí tự .x. giáo viên lấy ví dụ trong một chương trình Pascal cụ thể để các em hiểu được ý nghĩa các thủ tục và hàm này .

Nhập 1 xâu. Var i. Write('Nhap xau thu 1 : ') . Var i. Ví dụ 4 : Nhập 1 xâu. If length(s1) > Length(s2) then Write(s1) else Write(s2). giáo viên đi sâu vào câu lệnh trực tiếp đáp ứng yêu cầu của ví dụ. Ví dụ 2 : Nhập 1 xâu. Uses crt . viết ra màn hình xâu dài Begin Clrscr . Uses crt . Begin Clrscr . Readln(s2) . Write('Nhap xau : ') . viết ra màn hình xâu đó nhưng đã được bỏ tất cả các ký tự là dấu cách . Write('Nhap xau thu 1 : '). End .k : Byte . a. Write('Nhap xau thu 2 : ') . Ví dụ 3 : Nhập 1 xâu.b : String . Write('Nhap xau : ') . If s1[1] = s2[x] then Write('Trung nha') else Write('Khac nhau'). Begin Clrscr . Readln(a) .  Bùi Quang Tỵ . Readln .34 - . Write('Nhap xau thu 2 : ').k : Byte . Readln(s2) . kiểm tra xem ký tự đầu tiên của xâu S1 có trùng với ký tự cuối cùng của xâu S2 hay không ? VD 2 : Program vd2 . Begin Clrscr . Readln . như vậy các em sẽ tiếp thu nhanh hơn .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Với mỗi ví dụ. End . Readln . VD 4 : Program vd4 . End . For i := k downto 1 do Write(a[i]) . Var s1. a : String . Readln(s1) .s2 : String . VD 3 : Program vd3 . Uses crt . k := length(a) . Ví dụ 1 : hơn . viết ra màn hình xâu đó theo thứ tự ngược lại của các ký tự trong xâu . Readln(s1) . x := length(s2) . x : Byte .

Write('Nhap xau s1 : ') . End .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Readln(a) . k := length(a) . Ví dụ 5 : Nhập 1 xâu. b :='' . For i := 1 to k do if a[i] <> '' then b := b+a[i] . i : Byte .s2 : String . V. For i := 1 to length(s1) do If ('0'<s1[i]) and (s1[i]<='9') then s2 := s2 + s1[i] .  Ra bài tập về nhà . Readln(s1) . Begin Clrscr . End . viết ra màn hình xâu gồm các ký tự số của xâu đó . Uses crt .  Nhắc lại cấu trúc câu lệnh . Var s1. VD 5 : Program Xulixau . s2 := '' . Write(s2). Readln .  Bùi Quang Tỵ . CỦNG CỐ:  Nhắc lại một số khái niệm mới .35 - . Readln . Write(b) .

III. giáo viên hướng dẫn thực hành. PHƯƠNG TIỆN :  Phương pháp : Học sinh nhập các câu lệnh. phông chiếu hoặc bảng.30 BÀI THỰC HÀNH 5 – BÀI TẬP I.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn:10-02-2009 Lớp dạy: khối 11 Tiết CT: 28.29. PHƯƠNG PHÁP. thay thế và biến đổi xâu. (SGK Tin học 11)  Bùi Quang Tỵ . MỤC ĐÍCH. máy tính. YÊU CẦU :  Làm quen với việc tìm kiếm. NỘI DUNG : Bài 1. II.36 - .  Phương tiện : Máy chiếu. (SGK Tin học 11) Bài 3. (SGK Tin học 11) Bài 2.

II. Biết cách khai báo bản ghi. . LƯU Ý SƯ PHẠM :  Cần nhấn mạnh cho học sinh rằng. mỗi Record sẽ lưu trữ dữ liệu về một đối tượng cần quản lí . + Họ tên thí sinh. các trường có thể thuộc các kiểu dữ liệu khác nhau . Cách khai báo kiểu : Ngôn ngữ Pascal không cho bạn khai báo biến bản ghi trực tiếp mà phải khai báo biến bản ghi thông qua khai báo kiểu bản ghi . MỤC ĐÍCH.Làm thế nào để quản lý toàn bộ thông tin trên của học sinh ? . truy cập trường của bản ghi . Khai báo Để khai báo biến bản ghi. . Cách khai báo và sử dụng kiểu bản ghi trong ngôn ngữ Pascal GV lấy một bảng điểm của học sinh rồi chỉ rõ : Mỗi 1. + Cách tham chiếu đến trường . thường khai báo một kiểu bản ghi sau đó khai báo biến bản ghi .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn: 17-02-2009 Lớp dạy: khối 11 Tiết CT: 31 §13. trong kiểu bản ghi. Các trường khác nhau có thể có dữ liệu khác nhau . Viết chương trình dùng để quản lí các thí sinh của một kỳ thi tuyển sinh .  Bùi Quang Tỵ Type <Tên kiểu bản ghi>=Record <Tên trường 1> : <Kiểu trường 1> .Các ngôn ngữ lập trình thường cho cách để xác định : + Tên kiểu bản ghi . NỘI DUNG : NỘI DUNG HOẠT ĐỘNG CỦA GIÁO VIÊN VÀ HỌC SINH Ổn định lớp : .Kiểu bản ghi được dùng để mô tả cho các đối tượng có cùng một số thuộc tính mà các thuộc tính có thể có các kiểu dữ liệu khác nhau . . Xét ví dụ sau : Một số khái niệm . III. mỗi cột là một trường . GV : Mỗi ngôn ngữ có một cách khai báo kiểu bản ghi khác nhau . PHƯƠNG PHÁP. khác với kiểu mảng. . vấn đáp . KIỂU BẢN GHI I. + Điểm của các môn … GV : Đưa ra một số câu hỏi sau : . YÊU CẦU :   Biết khái niệm kiểu bản ghi . . IV. + Kiểu dữ liệu của trường .Chỉnh đốn trang phục .  Các bản ghi thường mang các thông tin về một đối tượng cần quản lý .  Phương tiện : Máy chiếu. phông chiếu hoặc bảng . + Cách khai báo biến .Mỗi thông tin trên có kiểu dữ liệu là gì ? HS : Có thể quản lý mỗi dữ kiện trên là một mảng một chiều Ngôn ngữ lập trình bậc cao có cách tốt hơn để quản lý dữ liệu trên -> Bản ghi .Bản ghi thường được gọi là Record.37 - . PHƯƠNG TIỆN :  Phương pháp : Thuyết trình. Chương trình của chúng ta cần quản lí được : + SBD của thí sinh. + Tên các trường . máy tính.Chào thầy cô . + Giới tính. hàng ta gọi là một bản ghi. .Cán bộ lớp báo cáo sĩ số .Mỗi thuộc tính của đối tượng tương ứng với một trường của bản ghi .

Dùng câu lệnh gán gán giá trị cho các trường hoặc nhập từ bàn phím . B : Hocsinh . Van *) Program Xeploai . End .Ly ……… với i là chỉ số nào đó của mảng Lop GV : Làm thế nào để có thể khai báo được nhiều biến bản ghi có cùng một kiểu ? HS : GV sẽ gợi ý để học sinh đưa ra đó là sử dụng kiểu mảng trong đó phần tử mảng sẽ có kiểu bản ghi . Văn của học sinh . Khai báo một kiểu bản ghi để xử lý bảng kết quả thi của các học sinh . Khi nhập thông tin vào từ bàn phím. Type Hocsinh = Record Hoten : String[30] . hoặc A := B .Gán giá trị cho từng trường . Lop : Array[1. Su.Ly. (* Kieu ban ghi xu ly bang ket qua thi 2 mon : Toan. A. Hoa. uses crt . Van. Ví dụ về khai báo bản ghi . Toan. B là hai bản ghi cùng kiểu ta có thể gán giá trị của A cho B bằng câu lệnh gán : Vd : B := A . Var A. 2. Van.Hoten B.. NamNu :Boolean .n] Of <Tên kiểu bản ghi> .Toan Lop[i].  Bùi Quang Tỵ . Văn của học sinh .Ngaysinh Lop[i]. Readln(a. <Tên trường> Ví dụ : A. Sau khi nhập xong danh sách sẽ đưa ra bảng kết quả học tập và xếp loại (xem kỹ đầu bài trong SGK) .38 - . Dia. Gán giá trị Có 2 cách để gán giá trị cho bản ghi .Dùng lệnh gán trực tiếp : Nếu A.Tin) . Ví dụ : CHương trình sau được viết trong ngôn ngữ Pascal dùng kiểu bản ghi để xử lý bảng kết quả thi bao gồm 2 môn Toán. ngày tháng năm sinh(Ngaysinh). và điểm thi các môn của mỗi học sinh (Toan. Hoa. Giới tính (NamNu). Ngaysinh : String[10] .Ngaysinh). ……… ……… <Tên trường n> : <Kiểu trường n> . Mỗi bản ghi sẽ bao gồm : Họ và tên của học sinh (Hoten).Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Trước hết phải khai báo kiểu bản ghi sau đó biến bản ghi được khai báo thông qua kiểu bản ghi này . Su. GV: Vì bản ghi có nhiều trường nên việc gán giá trị cho bản ghi phức tạp hơn các biến khác . Chương trình xử lý bảng kết quả thi. Ví dụ : Chương trình sau được viết trong ngôn ngữ Pascal dùng kiểu bản ghi để xử lý bảng kết quả thi bao gồm 2 môn Toán. ta viết : <Tên biến bản ghi> . Hãy xác định kiểu dữ liệu cho các trường trên (Mỗi nội dung trên là một trường của bản ghi) GV : Khi có nhu cầu thay đổi thông tin trong từng trường. ta thường phải nhập cho từng trường . Cách khai báo biến : Var <Tên biến> : <Tên kiểu bản ghi> .100] Of Hocsinh . Var <Tên mảng> : Array[1. . Dia : Real .<tên trường> GV: Đưa ra một số ví dụ .Hoten := ‘Nguyen Van Tuan’ . Để truy cập vào từng trường của bản ghi.. Ly. làm thế nào để truy cập thông tin vào từng trường của bản ghi ? Mỗi ngôn ngữ có một cách truy cập khác nhau nhưng thường được viết là : <Tên biến bản ghi>. . Sau khi nhập xong danh sách sẽ đưa ra bảng kết quả học tập và xếp loại (xem kỹ đầu bài trong SGK) . End .

truy cập đến các thành phần của bản ghi .ten) . Write(' Ngay sinh : ') . End . readln(Lop[i]. readln(Lop[i]. Diachi : String[50] .Xeploai := 'A' Else if Tg >= 14 then Lop[i]. For i := 1 to n do Writeln(i : 4. Readln(n) . V.100] of Hocsinh . For i := 1 to n do Begin Writeln(' Vao thong tin cho hoc sinh thu '.Xeploai := 'C' Else Lop[i]. CỦNG CỐ:  Nhắc lại một số khái niệm mới .Xeploai := 'B' Else if Tg >= 10 then Lop[i]. Lop[i].Xeploai).Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Type Hocsinh = Record Ten : String[30] . Var Lop : array[1.39 - .  Bùi Quang Tỵ . Tg : Real . van : real .Xeploai := 'D' End . Write (' Ho ten : ') . i. toan.Loai : '.. Tg := Lop[i].van) . Ngaysinh : String[10] . readln(Lop[i]. Write(' Diem Van ') .toan + Lop[i]. n : Byte .i. Lop[i].  Nhắc lại cấu trúc câu lệnh về việc khai báo.toan) . readln(Lop[i]. readln(Lop[i]. ' --. Xeploai : Char .Diachi) .' : ') . Readln . Write(' Dia chi : ') . if Tg >= 18 then Lop[i]. Readln .ten : 30 . Write(' Cho biet so hoc sinh : ') . Write(' Diem Toan : ') . End.van .Ngaysinh) .  Ra bài tập về nhà . Begin Clrscr .

NỘI DUNG : NỘI DUNG – HOẠT ĐỘNG CỦA GIÁO VIÊN Hoạt động 1 : Đặt vấn đề : Trong các giờ thực hành đã học.  Học sinh biết được có hai cách phân loại tệp . gợi ý nêu vấn đề . sau khi chạy một chương trình ta thấy kết quả in lên màn hình. 2 Kỹ năng :  Dần dần hình thành kỹ năng về các thao tác với tệp văn bản . MỤC ĐÍCH.40 -  Bùi Quang Tỵ . 3 Thái độ :  Rèn luyện cho học sinh có ý thức lưu trữ dữ liệu một cách khoa học. § 14 : KIỂU DỮ LIỆU TỆP Hoạt động 2 : Vai trò kiểu tệp : Câu hỏi 1 : Trong máy tính có những loại bộ nhớ nào ? Loại bộ nhớ nào không bị mất dữ liệu khi tắt máy hoặc mất điện ? Câu hỏi 2 : Vậy theo em thì các kiểu dữ liệu đã học được lưu trữ ở bộ nhớ nào ? Dự đoán xem dữ liệu kiểu tệp được lưu trữ trên bộ nhớ nào ? Câu hỏi 3 : Bộ nhớ trong hay ngoài thường có dung lượng lớn hơn ? GV : HS : Lần lượt trẻ lời từng câu hỏi 1 (Dựa vào kiến thức đã học ở lớp 10) HS : Dựa vào phần đặt vấn đề của thấy giáo và các câu trả lời bên trên để suy luận rồi đưa ra câu trả lời . III. giảng giải. II. tuy nhiên muốn sử dụng kết quả đó về sau thì không được (nó không lưu trữ lại lâu dài) => Để khắc phục nhược điểm này ta nghiên cứu dữ liệu kiểu tệp .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn: 22-02-2009 Lớp dạy: khối 11 Tiết CT: 35 Chươn 5 g TỆP VÀ THAO TÁC VỚI TỆP §14. PHƯƠNG PHÁP. phòng chống mất mát thông tin hoặc nhiễm virút . HOẠT ĐỘNG CỦA HỌC SINH HS : Chú ý nghe giảng . Chốt lại : . YÊU CẦU : 1 Kiến thức :  Học sinh biết được vai trò của kiểu dữ liệu tệp . HS : Dựa vào kiến thức đã học ở lớp 10 để trả lời câu hỏi . THAO TÁC VỚI TỆP I.  Học sinh biết khai báo biến tệp và các thao tác cơ bản đối với tệp văn bản . KIỂU DỮ LIỆU TỆP §15. PHƯƠNG TIỆN :  Sử dụng thuyết trình.  Dùng bảng trong in sẵn hình 16 trong SGK và chuẩn bị máy chiếu overhead .

TXT’). tên biến tệp để học sinh hiểu được . Var <tên biến tệp> : Text .TXT cho biến tệp f : Assign(f.’KQ. + Tệp truy cập trực tiếp . * Phân loại tệp : GV : Giới thiệu cho học sinh biết được hai cách phân loại tệp . Hoạt động 6 : Thao tác với tệp : Hoạt động 6. Ta xét xem trong Pascal các thao tác đó được thể hiện như thế nào đối với tệp văn bản ? HS : Chú ý nghe giảng . GV : Phải nhấn mạnh rằng : Trước khi sử dụng hai thủ tục trên phải gắn tên tệp cho biến tệp đồng thời biến tệp phải được khai báo từ trước . Theo cách tổ chức dữ liệu : + Tệp văn bản . . Theo cách thức truy cập : + Tệp truy cập tuần tự . HS : Mỗi học sinh tự lấy một vài ví dụ và ghi vào vở .2 : Mở tệp : GV : Lấy VD về 2 tình huống cần phải mở vở “Tin học 11” đó là : Mở ra để ghi bài (ghi dữ liệu) và mở ra để học bài (Đọc dữ liệu) => 2 trường hợp phải mở tệp . GV : Giới thiệu hai thủ tục để mở tệp : + Mở tệp để ghi dữ liệu : Rewrite(<tên biến tệp>). + Tệp có cấu trúc . HS : Chú ý nghe giảng và ghi chép bài . VD : Var t1. HS : Chú ý nghe giảng và liên hệ với bài học .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk .1 : Gắn tên tệp : GV : Giải thích cho học sinh tại sao phải gắn tên tệp cho biến tệp. VD : Để gắn tệp KQ. <tên tệp>) . + Mở tệp để đọc dữ liệu : Reset(<tên biến tệp>). Hoạt động 3 : Phân loại tệp và thao tác với tệp . § 15 : THAO TÁC VỚI TỆP Hoạt động 5 : Khai báo GV : Viết khai báo biến tệp lên bảng rồi giải thích các từ khóa.t2 : Text . rồi đưa ra thủ tục : Assign (<tên biến tệp> . . Hoạt động 6.Dữ liệu kiểu tệp được lưu trữ lâu dài ở bộ nhớ ngoài cho nên nó không bị mất khi tắt máy hoặc mất điện . GV : Yêu cầu học sinh lấy ví dụ (khai báo biến tệp.41 - HS : Lấy một vài ví dụ về khai báo biến tệp văn bản . gắn  Bùi Quang Tỵ .Lượng dữ liệu lưu trữ trên tệp có thể rất lớn và chỉ phụ thuộc vào dung lượng ổ đĩa . ( Không đòi hỏi học sinh phải hiểu cặn kẽ từng loại tệp một ) . Hoạt động 4 : Chuyển tiếp sang bài § 15 GV : Có hai thao tác cơ bản đối với tệp là ghi dữ liệu vào tệp và đọc dữ liệu từ tệp ra .

in dữ liệu lên màn hình với các thủ tục đọc dữ liệu từ tệp và ghi dữ liệu vào tệp . * Một số hàm thường dùng đối với tệp văn bản GV : Giới thiệu để học sinh biết hai hàm chuẩn thường dùng và ý nghĩa của nó . Hoặc Readln(<tên biến tệp>. Hoặc Writeln(<tên biến tệp>. HS : Viết các câu lệnh theo sự gợi ý của giáo viên . HS : Mỗi học sinh lấy một ví dụ .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk tên tệp cho biến tệp. CỦNG CỐ:  Gọi 1 học sinh khái quát lại vai trò của kiểu tệp và phân loại tệp .<danh sách kết quả>). VD : Close(f).  Bùi Quang Tỵ .4 : Đóng tệp . HS : Tự lấy một vài ví dụ về thủ tục đóng tệp . Hoạt động 6.SGK ) . GV : Có thể nói thêm để học sinh biết về trường hợp đã có tên tệp ở trên đĩa và trường hợp chưa có tệp đó để học sinh hiểu thêm . VI.42 - .<danh sách kết quả>).  Cho học sinh làm một số bài tập trắc nghiệm khách quan .<danh sách kết quả>). Hoạt động 6. GV : Đưa ra ví dụ trong SGK yêu cầu học sinh viết câu lệnh để đọc dữ liệu từ tệp và ghi dữ liệu vào tệp.  Học sinh khái quát lại các thao tác phải thực hiện khi đọc dữ liệu từ tệp và ghi dữ liệu vào tệp (dựa vào hình 16 . + + Hàm EOF(<tên biến tệp>). GV : Đưa ra lý do của việc phải đóng tệp để giáo dục cho học sinh ý thức bảo mật. Close(<tên biến tệp>). an toàn thông tin .3 : Đọc / ghi tệp văn bản : Câu hỏi : Để nhập dữ liệu từ bàn phím và để in dữ liệu lên màn hình ta có tể dùng thủ tục gì ? GV : Giới thiệu các thủ tục đọc dữ liệu từ tệp và ghi dữ liệu vào tệp . HS : Ghi các thủ tục vào vở và tự so sánh sự khác nhau giữa thủ tục nhập dữ liệu từ bàn phím. * Đọc dữ liệu từ tệp : Read(<tên biến tệp>. Hàm EOLN(<tên biến tệp>). mở tệp) sau đó gọi hai học sinh lên trình bày .<danh sách kết quả>). HS : Trả lời câu hỏi . * Ghi dữ liệu vào tệp : Write(<tên biến tệp>.

GV : Gọi một vài học sinh hỏi ý nghĩa của từng câu lệnh trong chương trình . PHƯƠNG TIỆN :  Phương pháp gợi mở nêu vấn đề. phương pháp thuyết trình . PHƯƠNG PHÁP. phương pháp vấn đáp. GV : Nhắc lại công thức tính khoảng cách giữa hai điểm khi biết tọa độ của chúng .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn: 25-02-2009 Lớp dạy: khối 11 Tiết CT: 36 §16. GV : Chiếu đầu bài và hình 17 – SGK lên màn hình . Hoạt động 1. VÍ DỤ LÀM VIỆC VỚI TỆP I. GV : Dùng Power Point chiếu chương trình (đã soạn trước) lên màn hình (có đánh chỉ số các dòng lệnh) . GV : Chiếu đầu bài của bài toán lên màn hình (bằng Power Point) .2 : Tìm hiểu chương trình HS : Tìm hiểu chương trình . Hoạt động 2 : Ví dụ 2 : Hoạt động 2. GV : Nhắc lại công thức tính điện trở tương đương của  Bùi Quang Tỵ . Hoạt động 1. Mở rộng bài toán : HS : Ghi yêu cầu vào vở để về nhà làm. xác định yêu cầu của bài toán theo sự hướng dẫn của giáo viên .43 - .  Đọc / ghi dữ liệu đối với tệp . II. NỘI DUNG : NỘI DUNG – HOẠT ĐỘNG CỦA GIÁO VIÊN Hoạt động 1 : Ví dụ 1 : Hoạt động 1. HS : Phân tích bài toán.TXT đã có sẵn dữ liệu từ trước) . YÊU CẦU :  Hiểu và hình thành kỹ năng về các thao tác cơ bản khi làm việc với tệp như :  Mở tệp .1 : HOẠT ĐỘNG CỦA HỌC SINH Tìm hiểu đầu bài .  Đóng tệp . GV : Có thể bổ sung thêm yêu cầu “in lên màn hình khoảng cách của trại xa với trại của hiệu trưởng nhất” . GV : Khái quát lại cả chương trình để học sinh nắm được sau đó chạy chương trình (tệp TRAI.  Phương tiện : Một máy tính có TP và một máy chiếu Project .  Gán tên tệp cho biến tệp . MỤC ĐÍCH.1 : Tìm hiểu bài toán HS : Đọc trên màn chiếu và nghiêu cứu đầu bài . III.3 : HS : Quan sát kết quả khi chạy chương trình .

Giáo án Tin học 11 THPT Trần Phú Đăk Lăk 2 điện trở mắc nối tiếp và của 2 điện trở mắc song . Hoạt động 2. + Đọc dữ liệu từ tệp . + Tính các điện trở tương đương . GV : Chính xác và tối ưu hóa chương trình . + Ghi vào tệp . + Đóng tệp . + Gán tên tệp cho biến tệp . HS : Suy nghĩ và trả lời câu hỏi theo yêu cầu của giáo viên . IV. + Khai báo .  Bùi Quang Tỵ . HS : Biểu diễn các biểu thức đó bằng ngôn ngữ Pascal . GV : Chuẩn hóa để đạt được công thức chính xác .44 - .  Chạy chương trình trên TP . song HS : Các nhóm xây dựng công thức tính điện trở tương đương của 5 trường hợp theo hình vẽ . CỦNG CỐ:  Giáo viên nhắc lại các thao tác khi làm việc với tệp cùng với các thủ tục của nó .2 : Xây dựng chương trình : GV : Gọi từng học sinh xây dựng chương trình theo từng bước 1 (có gợi ý khi học sinh vướng mắc) .

NỘI DUNG : NỘI DUNG – HOẠT ĐỘNG CỦA GIÁO VIÊN Hoạt động 1 : Khái niệm chương trình con : Hoạt động 1. GV : Đưa ra bài toán tính tổng 4 lũy thừa trong SGK. 3 Thái độ :  Tiếp tục rèn luyện phẩm chất của người lập trình như tinh thần hợp tác.39 Chươn 6 g I. III. GV : Chiếu bằng máy chiếu Over head chương trình của bài toán trên (chưa sử dụng chương trình con) . GV : Dẫn dắt để học sinh hình thành tư duy về lập trình có cấu trúc và đi đến khái niệm chương trình con : Khái niệm : Chương trình con là một dãy lệnh mô HS : Quan sát chương trình và trả lời câu hỏi . sẵn sàng làm việc theo nhóm . phương pháp hỏi – đáp. .  Biến cục bộ : Cách khai báo và phạm vi sử dụng . tả một số thao tác nhất định và có thể được thực hiện từ nhiều vị trí trong chương trình . YÊU CẦU : 1 Kiến thức : CHƯƠNG TRÌNH CON và LẬP TRÌNH CÓ CẤU TRÚC §17. 2 Kỹ năng :  Chưa đòi hỏi phải có kỹ năng cụ thể .  Máy chiếu Over head. phương pháp thuyết trình . MỤC ĐÍCH. Câu hỏi 1 : Trong chương trình trên có những khối lệnh nào được viết tương tự nhau .  Phân biệt điểm giống và khác nhau về cấu trúc của chương trình và chương trình con . PHƯƠNG PHÁP. giấy trong .45 - .1 : HOẠT ĐỘNG CỦA HỌC SINH Đặt vấn đề : HS : Nêu thuật toán của bài toán đó .  Biết được mối quan hệ giữa tham số hình thức và tham số thực sự .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn: 02-03-2009 Lớp dạy: khối 11 Tiết CT: 38. II. CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI  Nắm được khái niệm chương trình con  Sự khác biệt cơ bản giữa hàm và thủ tục . PHƯƠNG TIỆN :  Phương pháp gợi mở nêu vấn đề. Hoạt động 2 : Phân loại và cấu trúc của  Bùi Quang Tỵ HS : Ghi khái niệm vào vở .

Câu hỏi 3 : Cấu trúc của chương trình con có gì giống và khác cấu trúc của một chương trình ? GV : Chính xác hóa kiến thức . Tham số hình thức. biến cục bộ và biến toàn cục : Hoạt động 2.3 : GV : Chỉ đưa ra cho học sinh biết được tham số hình thức là gì ? Nó đóng vai trò gì ? Biến cục bộ và biến toàn cục là gì. GV : Dùng máy Over head để chiếu cấu trúc của chương trình con lên màn chiếu . Hoạt động 2. phạm vi hoạt động của nó chứ không đi sâu để giải thích cặn kẽ cho học sinh . tư duy để nhận thấy được hàm chuẩn thì trả về một giá trị nào đó. Cấu trúc chương trình con: HS : Trả lời câu hỏi . GV : Đưa ra một số hàm và một số thủ tục chuẩn đã học rồi giúp học sinh nhận thấy được sự khác biệt lớn nhất giữa hàm và thủ tục => phân loại chương trình con . còn thủ tục chuẩn thì không trả về một giá trị nào cả qua tên của nó .4 : HS : Chú ý nghe giảng . được khai báo ở đâu.  Giáo viên khái quát lại khái niệm chương trình con và nhấn mạnh cho học sinh về ý thức xây  Bùi Quang Tỵ .2 : HS : Ghi khái niệm hàm và thủ tục vào vở .  Thủ tục (Procedure) là chương trình con thực hiện một số thao tác nào đó nhưng không trả về một giá trị nào qua tên của nó .1 : Phân loại : HS : Dựa vào gợi ý của thầy giáo.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk chương trình con : Hoạt động 2. HS : Suy nghĩ và trả lời câu hỏi . đồng thời cũng chỉ ra tham số thực sự là gì ? Có thể lấy VD về lời gọi hàm chuẩn hoặc thủ tục chuẩn để minh họa .  Hàm (Function) là chương trình con thực hiện một số thao tác nào đó và trả về một giá trị qua tên của nó . IV. CỦNG CỐ: dựng chương trình có cấu trúc . Thực hiện chương trình con GV : Giải thích để học sinh thấy được chương trình con chỉ có thể thực hiện khi có lời gọi nó. Câu hỏi 2 : Trình bày cấu trúc của một chương trình. Hoạt động 2.46 - .

Trong chương này ta sẽ nghiên cứu một vấn đề mới đó là CTC . Mỗi bài toán con có thể chia thành các bài toán con nhỏ hơn . Tinh_tong2 (có sử dụng chương trình con ) . việc sử dụng chương trình con là hết sức cần thiết . Trình chiếu slide 2 : Phân tích với mỗi bài toán phức tạp ta có thể chia thành các bài toán con . Các nhóm khác nhận xét . 1 Khái niệm chương trình con Xét bài toán tính tổng 4 lũy thừa: trình chiếu slide 1 - Tluythua = an + bm + cp + dq Chốt lại : có thể giao cho 4 người. Nghe giảng . PHƯƠNG PHÁP. Vậy phải cấu tạo chương trình như thế nào để cho chương trình dễ đọc.  Ý nghĩa của biến cục bộ được khai báo trong một chương trình con .47 - . C. mỗi người thực hiện một bài . CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI(TT) I.  Sự giống và khác nhau về cấu trúc giữa chương trình và chương trình con . cách sử dụng chúng như thế nào ? Ghi đầu bài và phấn 1 . có thể gồm rất nhiều lệnh . II. dễ hiệu chỉnh nâng cấp . Tiến trình tiết dạy : NỘI DUNG – HOẠT ĐỘNG CỦA GIÁO VIÊN ĐVĐ : Các chương trình giải các bài toán phức tạp thường rất dài. Đây là cách thiết kế từ trên xuống . HOẠT ĐỘNG CỦA HỌC SINH Nghe giảng . B. Tổ chức lớp : Ổn định và kiểm tra sĩ số . NỘI DUNG TIẾT DẠY : A.  Mối quan hệ giữa tham số hình thức và tham số thực sự với chương trình con và lời gọi chương trình con . Vậy CTC là gì ? Cách viết.  Khi viết những chương trình dài. YÊU CẦU :  Học sinh cần biết :  Chương trình con (CTC) thực chất là một khối lệnh (tập hợp các lệnh) nhằm giải quyết một bài toán con để góp phần giải quyết một bài toán lớn hơn bằng một chương trình . phức tạp.  Một số bài về chương trình con : Tinh_tong. III. MỤC ĐÍCH.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk §17. - Thảo luận theo nhóm (4 HS / 1nhóm – 2 bàn liền nhau) trong thời gian 3 phút và 1 em trình bày cách làm của nhóm mình . PHƯƠNG TIỆN :  Máy chiếu Projestor . Khi đọc những chương trình dài. -  Bùi Quang Tỵ .  Sự khác nhau cơ bản giữa hai loại chương trình con thường gặp trong các ngôn ngữ lập trình . Kiểm tra bài cũ : không kiểm tra . rất khó nhận biết được chương trình thực hiện các công việc gì và hiệu chỉnh chương trình cũng khó khăn .

Một số HS nhận xét về câu trả lời của bạn . - Nghe và tự ghi bài . Chương trình chính sẽ được xây dựng từ các CTC này . Thuận tiện cho phát triển. . nâng cấp chương trình. các học sinh tự ghi vào vở . Phục vụ cho quá trình trừu tượng hóa . - - - Nhấn mạnh trong đoạn này có 4 đoạn lệnh tương tự nhau dẫn đến chương trình dài và khó theo dõi. Trình chiếu slide 5 : Phân tích thay vì phải đánh nhiều đoạn lệnh ta chỉ cần đánh 1 đoạn và gọi CTC nhiều lần . Ví dụ : Khi sử dụng các hàm toán học ta không cần xem nó được xây dựng như thế nào . Ví dụ quản lý điểm học sinh . Ví dụ : Trong bài toán lũy thừa ta xây dựng thêm CTC lũy thừa . Nghe giảng . (sử dụng slide 6) - - - • Lợi ích của việc sử dụng CTC : ghi bảng từng lợi ích rồi lấy ví dụ phân tích . Một HS khác phát biểu lại. + - Chương trình con là gì ? Nhấn mạnh khái niệm CTC và ghi bảng ? + + Một HS đọc trước lớp . mỗi khối bao gồm các lệnh giải một bài toán con nào đó . • - Ví dụ : (Trình chiếu slide 4) Hãy nêu nhận xét về đoạn chương trình bôi đen . Để xử lý vấn đề này các ngôn ngữ lập trình bậc cao cung cấp khả năng xây dựng các CTC dạng tổng quát “ đại diện ” cho nhiều đoạn lệnh tương tự nhau . (trình chiếu slide 7) + + + + + Tránh được việc phải viết lặp đi lặp lại một dãy lệnh nào đó . Ví dụ bài lũy thừa . để giải các bài toán trên máy tính có thể phân chia chương trình thành các khối (Module).48 -  Bùi Quang Tỵ . Hỗ trợ việc thực hiện các chương trình lớn . Đọc cá nhân đoạn chương trình (đặc biệt phần đổi màu) trong 5 phút và nêu nhận xét về đoạn chương trình đó . Mở rộng khả năng ngôn ngữ . 2 Phân loại và cấu trúc của chương trình con Đọc cá nhân phần này trong 5 phút và trả lời các câu hỏi : Hàm là gì ? Thủ tục là gì ? Sự khác nhau cơ bản giữa hàm và thủ tục là gì ? - Các học sinh khác nhận xét và bổ sung câu trả lời .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk - Trình chiếu slide 3 : Phân tích.

tham số thực sự và cách gọi CTC . Biến toàn cục là biến được trình chính . góp ý . c> Thực hiện chương trình con * Tham số thực sự . – Thời gian 2 phút : Trả lời trước lớp . Là CTC Hàm Thực hiện một số thao tác nào đó Trả về giá trị qua tên hàm Là CTC Thủ tục Thực hiện một số thao tác nào đó Nghe giảng và tự ghi bài . Biến toàn cục. Củng cố : + + Thảo luận theo nhóm . BT1. 5. góp ý . phần thân . - Tự ghi . Các nhóm khác nhận xét. b> Cấu trúc CTC CTC có cấu trúc tương tự như chương trình chính . nhận xét . 4. Ví dụ : (sử dụng slide 8) Trong chương trình con luythua(x. Các nhóm khác nhận xét. Chú ý : Một chương trình con thường có thể có hoặc không có tham số hình thức. Ghi bản cấu trúc CTC bên cạnh .Giảng phần khai báo. 2. Phân loại : Hàm và thủ tục . Tự ghi bài . Khái quát : Trình chiếu các nội dung đã học . + Cho điểm . Tham số hình thức. . Cấu trúc của chương trình con . 3. k là tham số hình thức và j là biến cục bộ . cũng như biến cục bộ . - D. Tự ghi .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk a> Phân loại Nhận xét và ghi bảng về hàm và thủ tục (không ghi sự khác nhau cơ bản) . – Thời gian 6 phút : + Trả lời trước lớp . . - Phát biểu. E.k) thì x. Cho điểm .49 - . biến cục bộ . .Ghi bảng cấu trúc chương trình chính . * Tham số hình thức : Ghi bảng : Tham số hình biến được khai báo cho CTC . BT2.  Bùi Quang Tỵ Khái niệm chương trình con và lợi ích của chương trình con . Hãy nêu cấu trúc của chương trình chính . thức của CTC là các dữ liệu vào ra của được khai báo trong khai báo trong chương Đọc cá nhân phần này trong thời gian 4 phút và trả lời các câu hỏi : Cách gọi chương trình con ? Tham số thực sự là gì ? Trả lời câu hỏi và nhận xét . 1. Biến cục bộ là các biến chương trình con .

Hiểu được mối liên hệ giữa chương trình và thủ tục . PHƯƠNG TIỆN :  Giáo viên thuyết trình. Hoạt động 2 : Tìm hiểu chương trình GV : Chiếu chương trình bằng máy chiếu Project sau đó giới thiệu sau đó cho học sinh từng câu lệnh một để  Bùi Quang Tỵ . VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON I. Ổn định lớp : Kiểm tra bài cũ : Câu hỏi 1 : Chương trình con có những loại nào ? Cấu trúc của một chương trình con ? Câu hỏi 2 : Viết chương trình vẽ lên màn hình Hình chữ nhật có dạng : + + ******** * * ******** 3 . 2. TiẾN TRÌNH LỚP HỌC 1. MỤC ĐÍCH.  Nhận biết được lời gọi của thủ tục ở chương trình chính cùng với tham số thực sự . nếu muốn vẽ 3 hình chữ nhật thì 3 câu lệnh Writeln ở trên phải lặp đi lặp lại 3 lần  chương trình sẽ trở nên rất dài  Để khắc phục nhược điểm này ta nên sử dụng thủ tục . 3 Thái độ :  Tiếp tục rèn luyện phẩm chất của người lập trình như tinh thần hợp tác. Học sinh nghe giảng. III. Phân biệt được tham trị và tham biến . YÊU CẦU : 1 Kiến thức :      Học sinh biết được cấu trúc của một thủ tục . II.  Chuẩn bị máy chiếu Project và đánh sẵn các chương trình của VD1 và VD2 . PHƯƠNG PHÁP. Phân biệt được tham số hình thức và tham số thực sự .50 - .  Nhận biết được hai loại tham số trong phần đầu của thủ tục . 2 Kỹ năng :  Nhận biết được các thành phần trong phần đầu của thủ tục .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn: 07-03-2009 Lớp dạy: khối 11 Tiết CT: 40 §18. Bài mới : NỘI DUNG – HOẠT ĐỘNG CỦA GIÁO VIÊN Hoạt động 1 : HOẠT ĐỘNG CỦA HỌC SINH Đặt vấn đề : HS : Chú ý nghe giảng . sẵn sàng làm việc theo nhóm . đặt câu hỏi cho Học sinh. làm các bài tập . GV : Ta thấy chương trình trên bảng mới vẽ được 1 hình chữ nhật. trả lời câu hỏi của giáo viên. Phân biệt được biến cục bộ và biến toàn cục .

+ Vẽ rong-2 cạnh giữa .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk học sinh thấy + + + được : Tên thủ tục . GV : Yêu cầu học sinh về nhà tìm hiểu chương trình trong SGK (trang 102) và giải thích kết quả ? • Mở rộng ví dụ HS : Quan sát kết quả khi chạy chương trình . Hoạt động 4. HS : Theo dõi trên màn chiếu và ghi vào vở . HS : Theo dõi.1 : Đặt vấn đề : GV : Đặt vấn đề như trong SGK đã trình bày để đi đến cần phải sử dụng 2 tham số dài và rộng . Lời gọi thủ tục . HS : Quan sát. Hoạt động 4. trả lời câu hỏi . Câu hỏi 1 : Nếu ta muốn vẽ 4 hình chữ nhật thì ta phải sửa chương trình trên như thế nào ? Hoạt động 3 : Cấu trúc của thủ tục : GV : Chiếu lên màn hình cấu trúc của thủ tục . Thân của thủ tục . Chú ý : Giáo viên cần nhấn mạnh một số điểm để học sinh nắm được : + Kết thúc thủ tục sau từ khóa End là dấu “.  Bùi Quang Tỵ . GV : Phải làm sao cho học sinh nhận thấy được hoạt động của tham số biến . nghiên cứu đầu bài và tìm hiểu thuật toán hoán đổi theo sự hướng dẫn của giáo viên . Hoạt động 4 : Ví dụ 1 (Vẽ hình chữ nhật có sử dụng tham số) Hoạt động 4. theo dõi chương trình và lắng nghe giáo viên giới thiệu . phần nào nhất thiết phải có.” . HS : Nghe giảng và ghi khái niệm tham trị và tham biến vào vở . HS : Viết các câu lệnh theo sự hướng dẫn của giáo viên .2 : Ví dụ 2 (Hoán đổi) GV : Chiếu yêu cầu của đầu bài và hướng dẫn học sinh đi đến thuật toán hoán đổi .2 : Xây dựng chương trình con : GV : Hướng dẫn học sinh chia nhỏ yêu cầu để học sinh có thể viết các câu lệnh tương ứng : + Vẽ cạnh trên cùng . Câu hỏi 3 : Hãy chỉ ra các lời gọi thủ tục trong chương trình trên ? GV : Từ các lời gọi thủ tục đó giáo viên đưa học sinh nhận biết được tham số giá trị. đi đến khái niệm và cách khai báo tham biến và tham trị . + Hoạt động của chương trình . HS : Quan sát chương trình trên màn chiếu .  Chạy chương trình . + Thủ tục phải được khai báo trong phần khai báo của chương trình chính . + Vẽ cạnh dưới cùng . Câu hỏi 2 : Chương trình con Ve_hcn ở trên khuyết phần nào so với cấu trúc của thủ tục nói chung ? GV : Tổng quát lại các phần của thủ tục. HS : Quan sát và trả lời câu hỏi .51 - . GV : Chính xác hóa thủ tục rồi chiếu toàn bộ chương trình để học sinh theo dõi . HS : Suy nghĩ. phần nào có thể có hoặc không có . GV : Chiếu chương trình lên màn hình để học sinh theo dõi . HS : Trả lời câu hỏi .

biến cụa bộ. CỦNG CỐ:  Giáo viên yêu cầu học sinh nhắc lại cấu trúc của thủ tục. NỘI DUNG : NỘI DUNG BÀI GIẢNG – HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Hoạt động 1 : Kiểm tra bài cũ : Câu hỏi : Nêu sự khác nhau giữa tham số giá trị và tham số biến (khi khai báo và khi thay thế bởi tham số thực sự) GV : Nêu câu hỏi. kiểu của hàm .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk IV. tham số giá trị. biến toàn cục. §18. danh sách tham số.  Chuẩn bị bảng phụ nêu sự giống nhau và khác nhau giữa thủ tục và hàm. hôm nay chúng ta cùng nghiên cứu cách viết và sử dụng hàm. MỤC ĐÍCH. Cũng như thủ tục. 2 chương trình của hai ví dụ trong bài . PHƯƠNG PHÁP. Học sinh nghe giảng. Học sinh có kỹ năng nhận biết được các thành phần trong đầu hàm . Cách viết đầu hàm : GV : Đưa ra các viết đầu hàm đã viết sẵn trên giấy to.  Bùi Quang Tỵ . giải thích cho học sinh hiểu các khái niệm : tên hàm. PHƯƠNG TIỆN :  Giáo viên thuyết trình. Bài 3 : Cách viết và sử dụng hàm Hoạt động 2 : Dẫn dắt : giờ trước chúng ta đã được học cách viết và sử dụng thủ tục. cho điểm . cách viết đầu hàm. gọi học sinh lên bảng trả lời . đặt câu hỏi cho Học sinh. Bài mới : HS : Lên bảng trả lời HS : Nhận xét. VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON(TT) I. tham số biến . tha số hình thức. kiểu của hàm phải được khai báo trong đầu của hàm . YÊU CẦU : Học sinh cần nắm được sự giống nhau và khác nhau giữa thủ tục và hàm . Điểm kah1c nhau giữa thủ tục và hàm là ở chỗ hàm luôn cho một giá trị kết quả thuộc kiểu xác định và giá trị đó được gán cho tên hàm.   II. trả lời câu hỏi của giáo viên. Vậy cách khai báo như thề nào chúng ta vào bài mới . Nhận biết được câu lệnh sử dụng hàm ở trong chương trình chính cùng các tham số thực sự . GV : Gọi một học sinh khác nhận xét và bổ xung . bổ sung . GV : Nhận xét. tham số thực sự. hàm là chương trình con . III.52 - . làm các bài tập .

liệu>. bổ sung rồi kết luận (được trình bày trong bảng phụ) . tham số thực sự trong chương trình trên ? GV : Giải thích từng câu lệnh và đưa nhấn mạnh những điểm khác với thủ tục (phần đầu hàm. ghi chép .  Cho học sinh làm một số bài tập trắc nghiệm khách quan . CỦNG CỐ:  Giáo viên nhắc lại cấu trúc của một hàm. GV : Giải thích từng câu lệnh trong đó chú ý về trường hợp “lời gọi hàm tham gia vào lời gọi hàm khác và đóng vai trò là một tham số thực sự ” . biến toàn cục. Hoạt động 3 : VD2 : Chương trình xác định số nhỏ nhất trong 3 số nhập từ bàn phím. Hoạt động 3 : VD 1 : Chương trình thực hiện giản ước một phân số trong đó có sử dụng hàm tính ước số chung lớn nhất (USCLN) của 2 số nguyên (đã được viết sẵn trên khổ giấy lớn) GV : Đưa ra chương trình để học sinh theo dõi (đã được viết sẵn trên khổ giấy lớn) . nhấn mạnh điểm khác biệt so với thủ tục .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Function <tên hàm>([<DS tham số>]):<kiểu dữ HS : quan sát. HS : Trả lời . trong đó có sử dụng hàm tìm số nhỏ nhất trong hai số . lời gọi hàm) .  Bùi Quang Tỵ . => Do hàm luôn trả về một giá trị qua tên của nó cho nên trong thân hàm cần có lệnh gán giá trị cho tên hàm : <tên hàm> := <biểu thức>. GV : Gọi một học sinh khác nhận xét. GV : Gọi một học sinh nêu sự giống nhau và khác nhau giữa hàm và thủ tục .53 - . câu lệnh trả giá trị cho tên hàm. GV : Đưa ra chương trình (đã được viết sẵn trong bảng phụ) . ghi chép theo ý hiểu . HS : Quan sát chương trình và trả lời câu hỏi . nghe giảng. GV : Hãy kể tên các biến cục bộ. tham số hình thức. IV. HS : Theo dõi vào chương trình.

Học sinh biết được một số chương trình con chuẩn trong thư viện . . . hình ellipse. Mục tiêu : . II. gotoxy Quan sát chương trình .  Khởi động được chế độ đồ họa . đường. hình tròn. . giáo khoa : Tham khảo sách Yêu cầu học sinh nghiên cứu SGK.54 - . c. Nội dung : .Thủ tục Gotoxy(x.Thủ tục Textcolor(c) : đặt màu cho chữ trên màn hình.Thủ tục Clrscr : xóa màn hình . textcolor.Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Ngày soạn: 13/04/2008 Tiết CT: 48-49 Bài 19 THƯ VIỆN CHƯƠNG TRÌNH CON CHUẨN I. Hoạt động 1 : Tìm hiểu thư viện CRT . 2 Chuẩn bị của học sinh  Sách giáo khoa . Chiếu chương trình sau : Begin  Bùi Quang Tỵ Clrscr. ĐỒ DÙNG DẠY HỌC : 1 Chuẩn bị của giáo viên  Máy chiếu Projector để giới thiệu ví dụ . kể tên các chương trình con trong thư viện CRT . tục Clrscr . textbackground. HOẠT ĐỘNG DẠY -. III.Thư viện CRT chứa các thủ tục liên quan đến việc quản lí và khai thác màn hình và bàn phím .Thủ tục Textbackground(c) : đặt màu cho nền của màn hình . Các bước tiến hành HOẠT ĐỘNG CỦA GIÁO VIÊN 1. . a. hình chữ nhật . trong đó c – là hằng hoặc biến có giá trị nguyên không âm để xác định màu .y) : đưa con trỏ đến vị trí cột x dòng y của màn hình văn bản .HỌC : 1. MỤC TIÊU 1 Kiến thức :  Biết được một số thư viện chương trình con : 2 Kỹ năng :  Bước đầu sử dụng được các thư viện đó trong lập trình . Tìm hiểu thủ - HOẠT ĐỘNG CỦA HỌC SINH 1. .  Sử dụng được các thủ tục vẽ điểm. b.

- Quan sát chương trình 3.Tìm hiểu Textbackground.20). Readln. Begin Textbackground(1).Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Clrscr. - - Quan sát chương trình 4. Textcolor(4). - thủ tục Chiếu chương trình ví dụ : Uses CRT. . Begin Writeln(‘Con tro dang dung o cot 10 dong 20’).55 - - Quan sát kết quả chương trình Đưa con trỏ về vị trí cột 10 dòng 20 . Chú ý cho học sinh ghi nhớ màn hình trước lúc thực hiện chương trình này . Begin Write(‘Chua dat mau chu’). End. Hỏi : Chức năng của lệnh  Bùi Quang Tỵ . End. Tìm hiểu thủ tục gotoxy. Hỏi : Chức năng của lệnh textbackground(1). Write(‘Da dat mau chu la do’). Quan sát giáo viên thực hiện chương trình Xóa màn hình - - - - Quan sát chương trình 2. Thực hiện chương trình để học sinh thấy kết quả Hỏi : Chức năng của lệnh textcolor(4). Thực hiện chương trình để học sinh thấy kết quả . Readln. Biên dịch chương trình . Gotoxy(10. - Vì sử dụng thủ tục nhưng chưa sử dụng thư viện CRT . Thêm lệnh Uses CRT. End. – Chiếu chương trình ví dụ : Uses CRT. Hỏi : Tại sao xuất hiện lỗi ? Khắc phục như thế nào ? Thêm Uses CRT. Hỏi : Chức năng của thủ tục Clrscr . Tìm hiểu thủ tục textcolor Chiếu chương trình ví dụ : Uses CRT. vào đầu chương trình và thực hiện chương trình để học sinh thấy được kết quả. End. Readln. - Quan sát kết quả chương trình Đặt màu chữ thành màu đỏ . - Quan sát kết quả chương trình Đặt màu chữ nền thành màu xanh da trời - Thực hiện chương trình để học sinh thấy kết quả. Writeln(‘Da dat lai mau nen’). Readln.

Giáo án Tin học 11 THPT Trần Phú Đăk Lăk gotoxy(10. Tọa độ màn hình đồ họa được đánh số từ 0 .  Bùi Quang Tỵ 3.Kết thúc chế độ đồ họa trở về chế độ văn bản : Closegraph. Yêu cầu học sinh nghiên cứu SGK để trả lời các câu hỏi : Hỏi : Các dạng dữ liệu nào có thể được hiển thị trên màn hình ? Hỏi : Nhiệm vụ chính của Card màn hình ? Hỏi : Khi nói màn hình có độ phân giải 640 x 480 là nói đến điều gì ? HOẠT ĐỘNG CỦA HỌC SINH 1. Quan sát và so sánh giữa hai chế độ văn bản và đồ họa . md : integer . . Khi khởi động chế độ đồ họa cần chỉ ra đường dẫn đến chương trình này . Giá trị lớn nhất của tọa độ dòng và tọa độ cột được gọi là độ phân giải của màn hình . 2. . Quan sát và theo dõi dẫn dắt của giáo viên . Là nói đến màn hình có 640 dòng và 480 cột .56 - . md : là số hiệu của độ phân giải . Giải thích các thông số trong thủ tục cho học sinh . pth : là đường dẫn tới các tệp BGI . - - Quan sát giáo viên thực hiện . Các bước tiến hành : HOẠT ĐỘNG CỦA GIÁO VIÊN 1.20). 3. pth : string) . . Thay phiên nhau . để trả lời .Yêu cầu khởi động chế độ đồ họa và chuyển về chế độ văn bản . Bảng mạch điều khiển màn hình là thiết bị đảm bảo tương tác giữa bộ xử lí và màn hình để thực hiện các chế độ phân giải và màu sắc .pth:string). dr : là số hiệu của trình điều khiển BGI . Đưa ra cấu trúc chung của thủ tục khởi động đồ họa . + + + + + máy tính ở mức độ thông dụng như vẽ điểm. Nội dung : . đường. a. Mục tiêu : b.Thư viện Graph chứa các chương trình con phục vụ khai thác khả năng đồ họa của Học sinh biết được cách khởi động và thoát chế độ đồ họa . Làm cầu nối giữa CPU và màn hình khi thể hiện thông tin . dòng được đánh số từ trên xuống dưới . 2.Khởi động chế độ đồ họa : Initgraph(dr. Tham khảo SGK Văn bản và hình ảnh . Cột được đánh số từ trái qua phải. Turbo Pascal cung cấp các chương trình điều khiển (có phần mở rộng là BGI) tương ứng với các loại card đồ họa . 2.md:integer. Cho học sinh thấy một ví dụ khởi độ đồ họa . Hoạt động 2 : Tìm hiểu thư viện Graph của ngôn ngữ lập trình Pascal. c. tô màu… Các thiết bị và chương trình hỗ trợ đồ họa : Có hai chế độ màn hình : đồ họa và văn bản . Giới thiệu thủ tục trở về chế độ văn bản Closegraph. Để thực hiện được chức năng đồ họa cần sử dụng các thủ tục và hàm trong thư viện Graph . Initgraph(dr.

các tham số và chức năng của từng thủ tục . đường và các hình cơ bản .y1.y2:integer).y1) đến điểm có tọa độ (x2. 2.yr:word). Hỏi : Chức năng của thủ tục Line 3.15).endangle. Thực hiện chương trình để học sinh thấy kết quả . Mục tiêu : Học sinh biết được các thủ tục vẽ điểm. Quan sát chương trình . Linerel(dx.xr.1. Quan sát cấu trúc chung và suy nghĩ để trả lời câu hỏi . mode . đường và các hình cơ bản . Các bước tiến hành HOẠT ĐỘNG CỦA GIÁO VIÊN 1.x2.y:integer. Chiếu chương trình ví dụ trên nhưng thay lệnh Putpixel(12.stangle. Line(x1. Chiếu cấu trúc chung của thủ tục : Putpixel(x.y1. Putpixel – – Tìm hiểu thủ tục HOẠT ĐỘNG CỦA HỌC SINH 1.y) .color:word). Vẽ một điểm có màu Color trên màn hình tại tọa độ (x.color:word).40. - Thực hiện chương trình để học sinh thấy kết quả .y2) . Hỏi : Chức năng của thủ tục Putpixel 2. Tìm hiểu thủ tục Lineto Chiếu cấu trúc chung của thủ tục : Lineto(x.y:integer). Biết được tên thủ tục. Quan sát kết quả của chương trình .y:integer). Quan sát cấu trúc chung và suy nghĩ để trả lời câu hỏi .20).‘c:\Tp\BGI’).Giáo án Tin học 11 THPT Trần Phú Đăk Lăk thực hiện việc chuyển đổi giữa hai chế độ văn bản và đồ họa 3. Lineto(x.Vẽ điểm : .40. Quan sát chương trình . - Quan sát kết quả của chương trình . Quan sát chương trình . Initgraph(drive. b. Chiếu chương trình ví dụ . Readln.x2. Chiếu cấu trúc chung của thủ tục : Line(x1. a. - - - Vẽ một đoạn thẳng từ điểm có tọa độ (x1.r:word). line Tìm hiểu thủ tục Uses graph Begin Drive:=0.dy:integer). bằng lệnh line(1. Vẽ hình tròn : Circle(x. -  Bùi Quang Tỵ .y2:integer).y2:integer).y:integer. Hoạt động 3 : Tìm hiểu các thủ tục vẽ điểm. Đặt màu cho nét vẽ : Setcolor(word).y:integer. Vẽ hình chữ nhật : Rectang(x1.20. Putpixel(x. End.57 - . Putpixel(12.y:integer.y1.x2.15). Quan sát cấu trúc chung và suy nghĩ để trả lời câu hỏi . Vẽ hình elip : Ellipse(x. 3.Vẽ đường thẳng : c. Nội dung : .

y) và bán kính r .yr. Tìm hiểu Rectangle .15). Hỏi : Chức năng của thủ tục setcolor - Quan sát chương trình - Quan sát kết quả của chương trình Setcolor (m:word) : đặt màu cho nét vẽ với màu có số hiệu m . thủ tục Circle. Hỏi : Chức năng của các thủ tục Circle. từ góc khởi đầu stangle đến góc kết thúc endangle .stangle. - Chiếu cấu trúc chung của các thủ tục : Circle(x.100. - Vẽ đoạn thẳng nối điểm hiện tại với điểm có tọa độ bằng tọa độ điểm hiện tại cộng với dx. Chiếu chương trình ví dụ : Uses graph Begin Drive:=0. End. + Ellipse : vẽ cung của Ellipse có tâm tại điểm x. xr. Circle(12. Circle(12.200). Rectangle .50.200).30).40. 4. 5. Tìm hiểu thủ tục Linerel Chiếu cấu trúc chung của thủ tục Linerel(dx.dy 5. Thực hiện chương trình để học sinh thấy kết quả . Quan sát cấu trúc chung và suy nghĩ để trả lời câu hỏi . Quan sát cấu trúc chung và suy nghĩ để trả lời câu hỏi .40.mode.y:integer. Readln.40. Thực hiện chương trình để học sinh thấy kết quả .200. Rectangle(x1. End. Rectangle(100. Quan sát cấu trúc chung và suy nghĩ để trả lời câu hỏi . - -  Bùi Quang Tỵ . Hỏi : Chức năng của thủ tục Linerel - Quan sát kết quả của chương trình .58 - . Initgraph(drive. Hỏi : Chức năng của thủ tục Lineto 4.mode. bằng lệnh Lineto(20.50.y) .r:word). - Quan sát chương trình . + - Circle : vẽ một đường tròn có tâm tại (x. Circle(12.x2.y2:integer).120. 6.‘c:\Tp\BGI’). Ellipse(50.100). Tìm hiểu thủ tục Setcolor Chiếu cấu trúc chung của các thủ tục : Setcolor(m:word).Giáo án Tin học 11 THPT Trần Phú Đăk Lăk Chiếu chương trình ví dụ trên nhưng thay lệnh Putpixel(12.‘c:\Tp\BGI’). - Quan sát kết quả của chương trình . Chiếu chương trình ví dụ Uses graph Begin Drive := 0. - Vẽ một đoạn thẳng từ điểm hiện tại đến điểm có tọa độ (x. Thực hiện chương trình để học sinh thấy kết quả .y với bán kính trục xr.yr:word). Readln. Setcolor(4). Ellipse.30.y1.20). Ellipse(x. 6. Ellipse.100:word).dy:integer). Initgraph(drive.y:integer.endangle.40.

HOẠT ĐỘNG CỦA HỌC SINH 1. Thảo luận theo nhóm để viết chương trình lên giấy bìa trong . c.Cần bao nhiêu lệnh như vậy. sách giáo khoa. r : word) .System : chứa các hàm và thủ tục vào/ra sơ cấp . Nội dung : . Quan sát kết quả trên màn hình IV. Định hướng cách giải quyết vấn đề cho học sinh . Giới thiệu nội dung yêu cầu lên bảng . giờ hệ thống . . Yêu cầu học sinh nêu chức năng của mỗi thư viện . hình chữ nhật. 2. đóng mở file… . Các bước tiến hành : HOẠT ĐỘNG CỦA GIÁO VIÊN 1. hình ellipse . 3. Chia lớp làm 03 nhóm. . .Thư viện chương trình con cung cấp những chương trình con chuẩn nhằm mở rộng khả năng ứng dụng . trang 118 . Mục tiêu . . Yêu cầu học sinh nghiên cứu SGK. Circle(x.Khởi động chế độ đồ họa . ĐÁNH GIÁ CUỐI BÀI 1. hình cơ bản : hình tròn.Thu phiếu trả lời .Thư viện Printer cung cấp các thủ tục làm việc với máy in . Dos. Printer . HOẠT ĐỘNG CỦA HỌC SINH 1. Các bước tiến hành : HOẠT ĐỘNG CỦA GIÁO VIÊN 1. Quan sát yêu cầu của giáo viên . 2. . . đường. Hoạt động 4 : Tìm hiểu một số thư viện khác a. các hình có bán kính cách nhau 5 điểm ảnh . Nội dung : . Sửa chương trình hoàn chỉnh cho học sinh viết trên máy . 2. Báo cáo kết quả viết được .Viết chương trình vẽ 20 hình tròn lồng nhau có tọa độ tâm là điểm chính giữa của màn hình. Thực hiện chương trình trên máy để học sinh thấy kết quả . 02 nhóm viết lên bìa trong .Thủ tục vẽ điểm. . gọi học sinh nhóm khác nhận xét đánh giá .Thư viện System chứa các hàm sơ cấp và các thủ tục vào/ra mà các chương trình đều dùng tới . . Chuyển từ chế độ màn hình đồ họa sang chế độ màn hình văn bản .Giáo án Tin học 11 THPT Trần Phú Đăk Lăk 4. nêu tên các thư viện .59 -  Bùi Quang Tỵ . dùng cấu trúc nào để điều khiển . Cần 20 lệnh. nên dùng cấu trúc For để chương trình ngắn gọn . thiết lập ngày. 2.y : integer . b.Học sinh biết được tên và chức năng của thư viện : System.Bước đầu học sinh sử dụng được các thủ tục của thư viện graph để viết chương trình vẽ một số hình cơ bản . Dos. a.Printer : chứa các thủ tục liên quan đến máy in . Printer . 5. Những nội dung đã học : . Nhận xét. Mục tiêu : . Các thư viện : System. Chức năng mỗi thư viện : .Thư viện Dos chứa các thủ tục cho phép thực hiện trực tiếp các lệnh như tạo thư mục. Chiếu lên bảng. c.Thủ tục để vẽ được một hình tròn có tâm là điểm chính giữa màn hình .Dos : chứa các thủ tục như tạo thư mục. b. đánh giá và bổ sung thiếu sót của các nhóm khác . Hoạt động 5 : Rèn luyện kỹ năng lập trình . 01 nhóm viết chương trình trên máy. 3. Câu hỏi và bài tập về nhà : - Đọc bài đọc thêm 4 : Âm thanh. 2.

......................................... . ................................................................... ........... .......................................................................... ......................................................................................................................................... ................. ....................................... .................................................................................................................................. ..Giáo án Tin học 11 THPT Trần Phú Đăk Lăk ........................................... ...................................................................... ........................................................................................................... .............................................................. ..................................................................................................................................................................................... .................................................................................................................................................................................................................................................................................................................................................................................................. .................................................................................................................................................................................................................... ............................................................................... .................................. .................................................................................................................................................................................................. ............................................................................................. ........................................................ ................................................................................................................... ...................................................................................................... .............................................................................................................................................. .................................................................................... ...................................................................................................................................................................................................................................................................................................................................................... ................................. ............................................................................................................................................................................. .............................................................................................................................................................. ................................................................................................................................................................................................................................................................ ...................................................................................................................................................................................................... ................... .................................................................... ..................................................................................................... ................................................................. ............................................................................................... ................................................................................ ............................................................................................................................................................ ............................................................................................................................................................................................................................................................... ..................... ........................................................................................................... ...................................... .............................................................................................................................................................................. ...................  Bùi Quang Tỵ ................................................... ............................................................................................................................................................................. ............................................................................................... ..........................................................60 - ................................................................... ...................................................................... .................................................... ...................................................................................................

You're Reading a Free Preview

Tải về
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->