TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
Chương 1: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
TIẾT CT: 01
Bài 1: KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
I. MỤC TIÊU:
a/ Về kiến thức – kỹ năng
- Biết được khái niệm lập trình
- Hiểu khả năng ngôn ngữ lập trình bậc cao, phân biệt được với ngôn ngữ máy và hợp ngữ
- Hiếu ý nghĩa và nhiệm vụ của chương trình dịp, phân biệt được biên dịch và thông dịch
b/ Thái độ:
- Tạo thái độ ham thích tìm hiểu lập trình
II. PHƯƠNG PHÁP VÀ PHƯƠNG TIỆN DẠY – HỌC
a/ Phương pháp: Thuyết trình – vấn đáp
b/ Phương tiện:
- Giáo viên: bảng viết, sách, tài liệu minh hoa
- Học sinh: sách giáo khoa
III. HOẠT ĐỘNG DẠY – HỌC
- Ổn định lớp
- Giới thiệu chương trình
- Dẫn dắt vào nội dung bài học
Hoạt động của Thầy
Hoạt động của trò
HOẠT ĐỘNG 1:
Tìm hiểu khái niệm lập trình và ngôn ngữ lập trình
a/ Mục tiêu
- Giúp học sinh biết được lập trình là gì? Ý nghĩa của lập trình?
- Giúp học sinh hiểu được khái niệm ngôn ngữ lập trình và một số loại ngôn ngữ lập trình
b/ Nội dung:
- Mọi bài toán có thuật toán đều có thể giải trên máy tính qua các bước
+ Xác định thuật toán
+ Xây dựng thuật toán
+ Lập trình
- Lập trình là: việc sử dụng 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, biểu đạt các thao tác của thuật toán
- Ngôn ngữ lập trình: Ngôn ngữ máy, hợp ngữ, ngôn ngữ bậc cao
- Ngôn ngữ lập trình bậc cao: gần với ngôn ngữ tự nhiên, thuận tiện với ngôn ngữ tự nhiên, thuận
tiên cho người lập trình.
- Chương trình viết bằng ngôn ngữ bậc cao: có thể thực hiện trên nhiều loại máy khác nhau
Ví dụ:
- Xác định nghiệm của phương trình ax + b = 0 Input: a, b
GV: DươngThị Thanh Xuân
Trang 1/111
TRƯỜNG THPT LONG PHƯỚC
+ Xác định Input và Output của bài toán?
+ Các bước để tìm Output?
GIÁO ÁN TIN HỌC 11
Output: x vô nghiệm, x = -b/a, x vô số nghiệm
B1: Nhập a, b
B2: Nếu a <> 0 kết luận nghiệm x = -b/a
B3: Nếu a = 0 và b <> 0 kết luận x vô nghiệm
B4: Nếu a = 0 và b = 0 kết luận x vô số nghiệm
Diễn giải:
- Hệ thống các bước vừa thực hiện để tìm được - Thuật toán
Output gọi là gì ?
- Nếu trình bày thuật toán này cho người nước - Dùng cấu trúc ngôn ngữ của họ để mô tả thuật
toán
ngoài hiểu em cần làm gì?
- Thế để diễn đạt cho máy hiểu em dùng ngôn - Dùng ngôn ngữ lập trình
ngữ nào?
=> Vậy: Việc dùng ngôn ngữ lập trình cụ thể
để diễn đạt thuật toán sau cho máy hiểu được ta
gọi đó là lập trình
- Yêu cầu học sinh ghi lại nội dung trong sách * Lập trình là việc sử dụng cấu trúc dữ liệu và
hoặc ghi lại bằng sự lời văn của mình với ý các lệnh của một ngôn ngữ lập trình cụ thể để
không sai lệch
mô tả dữ liệu, biểu đạt các thao tác của thuật
toán
Vấn đáp:
- Kết quả của hoạt động lập trình?
- Một chương trình
- Theo em ngôn ngữ lập trình là gì?
- Là ngôn ngữ dùng để viết chương trình sau
cho máy tính có thể hiểu và thực hiện được
chương trình đó
Giải thích:
- Khẳng định tính đúng đắn của các câu trả lời
của HS.
- Là ngôn ngữ dùng để viết chương trình sau
cho chương trình đó có thể thực hiện trên máy
- Bổ sung thêm ngôn ngữ lập trình là phần mềm tính cho ra một ứng dụng cụ thể
dùng để diễn đạt thuật toán (cho hs hiểu –
không bắt buộc học sinh phải ghi chép)
Câu hỏi:
- Bằng kiến thức đã học năm lớp 10 và sự hiểu
biết của mình, hãy cho biết các loại ngôn ngữ
lập trình mà em biết?
+ Khuyến khích động não nhớ lại kiến thức cũ
(không tham khảo sách)
Câu hỏi:
Ngôn ngữ lập trình:
- Ngôn ngữ máy
- Hợp ngữ
- Ngôn ngữ bậc cao
- Nhìn vào đặc điểm 3 loại ngôn ngữ lập trình
trên, theo em lập trình bằng loại nào là thuận - Đó là lập trình bằng ngôn ngữ bậc cao
tiện cho đại đa số những người lập trình?
- Máy tính chỉ có thể hiểu ngôn ngữ máy –
nhưng lập trình bằng ngôn ngữ này không dễ.
Lập trình bằng ngôn ngữ bậc cao thuận tiện, dễ
dàng nhưng máy không hiểu? Vậy theo em, em
có giải pháp nào vừa dễ dàng cho người lập
GV: DươngThị Thanh Xuân
- Nhờ một chương trình dùng để dịch các
chương trình được viết bằng ngôn ngữ khác
sang ngôn ngữ mà máy có thể hiểu và thực hiện
được
Trang 2/111
TRƯỜNG THPT LONG PHƯỚC
trình mà vừa có thể cho máy tính hiểu và thực
hiện được không?
=> Chương trình có chức năng thực hiện những
điều đó gọi là Chương trình dịch
GIÁO ÁN TIN HỌC 11
* Học sinh tự ghi khái niệm
- Tham khảo sách giáo khoa thảo luận đưa ra
kết quả
+ Ngôn ngữ máy là ngôn ngữ gắn liền với
máy tính và là ngôn ngữ duy nhất mà máy có
thể hiểu và thực hiện được
+ Hợp ngữ: phát triển cao hơn ngôn ngữ
máy, ít phụ thuộc vào máy tính trong đó một số
lệnh được thay thế bằng từ viết tắc của các thao
tác tương ứng, vẫn đảm bảo khai thác tính năng
của máy
+ Ngôn ngữ bậc cao: Độc lập với máy tính,
gần với ngôn ngữ tự nhiên, chương trình viết
bằng ngôn ngữ này dễ đọc, hiểu, sửa chữa,
nâng cấp và phát triển
Thảo luận: (5 phút)
- Trình bày đặc điểm của từng loại ngôn ngữ
lập trình
Bổ sung - mở rộng
- Ngôn ngữ máy
+ Mã hoá bằng ký hiệu 0 – 1
+ CT nạp vào bộ nhớ và thực hiện ngay
- Hợp ngữ
+ CT nạp vào thanh ghi và thực hiện ngay
- Ngôn ngữ bậc cao
+ Có thể viết độc lập trên bất kỳ máy nào
HOẠT ĐỘNG 2:
Tìm hiểu hai loại chương trình dịch là thông
dịch và biên (phiên) dịch
a/ Mục tiêu:
- Học sinh biết được ý nghĩa và nhiệm vụ của
chương trình dịch
- Phân biệt được thông dịch và biên dịch
b/ Nội dung:
- Chương trình dịch là chương trình có chức
năng chuyển đổi một chương trình được viết
bằng một ngôn ngữ bậc cao thành chương
trình mà máy tính có thể thực hiện được
GV: DươngThị Thanh Xuân
Trang 3/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
+ Đầu vào của chương trình dịch là
chương trình được viết bằng ngôn ngữ bậc cao
+ Đầu ra của chương trình dịch là
chương trình được viết bằng ngôn ngữ máy
- Thông dịch: dịch lần lược từ câu lệnh ra ngôn
ngữ máy rồi thực hiện ngay câu lệnh vừa dịch
hoặc thông báo lỗi khi không dịch được. Không
có chương trình đích để lưu trữ.
- Biên dịch : duyệt, kiểm tra, phát hiện lỗi, khi
chương trình nguồn không có lỗi thì dịch toàn
bộ chương trình thành chương trình có thể
thực hiện trên máy. Chương trình đích có thể
được lưu và thực hiện nhiều lần không cần
dịch lại
Ví dụ:
- Trong quá trình trao đổi đàm thoại với người nước ngoài, do bị hạn chế về vốn ngoại ngữ,
chúng ta hay nhờ đến ai, có thể giúp chúng ta tiến hành quá trình đàm thoại này?
+ Chức năng, vai trò và cách thực hiện của người thông dịch?
- Khi ta muốn soạn một hợp đồng kinh tế với đối tác nước ngoài trong trường hợp đó ta cần ai
giúp đỡ
+ Chức năng, vai trò, cách làm việc của Biên dịch viên?
Yêu cầu:
- Học sinh tham khảo sách và trình bày đặc - Học sinh trình bày
điểm chính của thông dịch và biên dịch chương
trình dịch?
- Thông dịch viên
- Thảo luận và trình bày
- Biên dịch viên
- Thảo luận và trình bày
Trình bày:
- Tóm lượt nội dung chính lên bảng
- Tự ghi chép nội dung trong sách giáo khoa
theo những ý đã tóm lượt
HOẠT ĐỘNG 3
Củng cố nội dung kiến thức vừa học
a/ Nội dung:
- Khái niệm lập trình và ngôn ngữ lập trình
- Phân loại ngôn ngữ lập trình
- Khái niệm chương trình dịch
- Chức năng của biên dịch và thông dịch
b/ Câu hỏi thảo luận mở rộng vấn đề
GV: DươngThị Thanh Xuân
Trang 4/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
- Mỗi loại ngôn ngữ lập trình phù hợp với những người có trình độ như thế nào?
- Tại sao người ta lại tích hợp chương trình dịch trong các ngôn ngữ lập trình bậc cao luôn? Tại
sao không thiết kế một chương trình dịch chung cho tất cả các ngôn ngữ lập trình bậc cao?
- Chuyên gia ngôn ngữ máy – hợp ngữ
- Lập trình viên ngôn ngữ bậc cao
- Số lượng ngôn ngữ bậc cao là vô cùng lớn, và
được thường xuyên nâng cấp, đáp ứng yêu cầu
thực tế, như thế chương trình dịch sẽ không thể
bao quát hết, trong trường hợp có thể xảy ra thì
thật sự không cần thiết khi chỉ sử dụng 1 ngôn
ngữ bậc cao mà phải cài đặt 1 chương trình
dịch khổng lồ như thế. (dung lương và tốc độ
của máy … )
IV. DĂN DÒ:
- Làm bài tập trong sách bài học và trong sách bài tập đầy đủ
- Chuẩn bị bài 2
V. RÚT KINH NGHIỆM:
GV: DươngThị Thanh Xuân
Trang 5/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
TIẾT CT: 02
Bài 2: CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH
I. MỤC TIÊU:
a/ Về kiến thức – kỹ năng
- Biết được ngôn ngữ lập trình có 3 thành phần cơ bản: Bảng chữ cái, cú pháp, ngữ nghĩa.
- Biết được một số khái niệm: tên, tên chuẩn, tên dành riêng, hằng - biến và chú thích
- Nhớ các qui định về tên, hằng, biến.
- Biết thực hiện việc đặt tên đúng và nhận biết tên sai
c/ Thái độ:
- Tạo thái độ ham thích tự tìm hiểu
II. PHƯƠNG PHÁP VÀ PHƯƠNG TIỆN DẠY – HỌC
a/ Phương pháp: Đặt vấn đề – dẫn dắt – thảo luận – giúp các em liên tưởng từ thực tế để tìm ra
nội dung chính trong bài
b/ Phương tiện:
- Giáo viên: Tranh chứa bảng chữ cái, bảng viết, sách, tài liệu minh hoạ
- Học sinh: sách giáo khoa
III. HOẠT ĐỘNG DẠY – HỌC
- Ổn định lớp
- Kiểm tra bài cũ:
1. Thế nào là lập trình, thế nào là ngôn ngữ lập trình?
2. Chương trình dịch là chương trình như thế nào? Em hãy phân biệt thế nào là thông dịch,
thế nào biên dịch
- Giới thiệu chương trình
- Dẫn dắt vào nội dung bài học
Hoạt động của Thầy
Hoạt động của trò
HOẠT ĐỘNG 1:
Tìm hiểu các thành phần của ngôn ngữ lập trình
a/ Mục tiêu
- Giúp học sinh nhận biết được ngôn ngữ lập trình cũng như các loại ngôn ngữ khác đều có 3
thành phần cơ bản là: bảng chữ cái, cú pháp và ngữ nghĩa
- Giúp học sinh nắm và thuộc bài tại lớp
b/ Nội dung:
1.Các thành phần của ngôn ngữ lập trình
- Bảng chữ cái: là tập các ký tự dùng để viết chương trình
- Cú pháp: là tập các qui tắc để viết chương trình
- Ngữ nghĩa: xác định ý nghĩa thao tác cần phải thực hiện của tổ hợp ký tự trong ngữ cảnh
Đặt vấn đề:
1. Suy nghỉ - trả lời
- Trong ngôn ngữ tiếng Việt hằng ngày sử dụng - Các ký tự, số, dấu
em hãy cho biết có những thành phần cơ bản - Cách lắp ghép các ký tự thành từ, các từ thành
GV: DươngThị Thanh Xuân
Trang 6/111
TRƯỜNG THPT LONG PHƯỚC
nào để cấu thành nó
GIÁO ÁN TIN HỌC 11
câu
- Nghĩa của các từ, các câu
Diễn giải:
- Trong ngôn ngữ lập trình cũng thế nó cũng có 2. Chú ý lắng nghe và liên tưởng trong ngôn
ngữ tiếng Việt và ghi lại nội dung
các thành phần cơ bản đó:
- Bảng chữ cái: Là tập các ký tự dùng để viết
+ Tập các ký tự
chương trình
- Cú pháp: Là tập các qui tắc dùng để viết
+ Các qui tắc
chương trình
+ Ngữ nghĩa của tổ hợp các ký tự
- Ngữ nghĩa: Là ý nghĩa thao tác của tổ hợp
các ký tự trong chương trình theo ngữ cảnh
riêng của nó
Thảo luận nhóm: Dựa vào sách giáo khoa
Thảo luận từng nhóm – bổ sung cho nhau
- Em hãy cho biết bảng chữ cái gồm các ký tự - Các ký tự chữ: a z, A Z
nào?
- Các ký tự số : 0 9
- Các ký tự dấu: + - * / = . , _ : ; ‘ ^
- Các ký tự ngoặc: ( ) { } [ ] < >
- Các ký tự đặt biệt: # $ & @
- Có ký tự nào mà trong bảng chữ cái mà ngôn
ngữ tiếng Anh em thấy có, nhưng trong ngôn Có 1 ký tự trong ngôn ngữ tiếng Anh không có
đó là ký tự ^ và 2 ký tự trong NNLT không có
ngữ lập trình không thấy, và ngược lại
là ký tự ! và ?
- Em hãy cho một vài ví dụ minh hoạ về cú
Khi viết chương trình thì phải có Begin sau đó
pháp trong ngôn ngữ lập trình
mới tới end.
- Ngữ nghĩa của một lệnh hay một câu lệnh mà
Dấu cộng (+) đôi lúc mang nghĩa là cộng 2 giá
em biết?
trị số, đôi lúc mang giá trị ghép 2 chuỗi.
HOẠT ĐỘNG 2:
Tìm hiểu khái niệm tên trong ngôn ngữ lập trình
a/ Mục tiêu:
- Học sinh biết phân biệt một số loại tên: tên dành riêng, tên chuẩn và tên do người LT đặt
b/ Nội dung:
2. Một số khái niệm
a/ Tên
- Mọi đối tượng trong chương trình đều phải được đặt tên theo một qui tắc nhất định (tuỳ
theo từng ngôn ngữ lập trình và chương trình dịch đi kèm).
- Tên dành riêng: Là tên được ngôn ngữ lập trình qui định mang một ý nghĩa xác định (còn
gọi là từ khoá)
- Tên chuẩn: Là tên được ngôn ngữ lập trình qui định mang một ý nghĩa nào đó mà ý
GV: DươngThị Thanh Xuân
Trang 7/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
nghĩa nào đó, người lập trình có thể định nghĩa lại để dùng với ý nghĩa khác đi.
- Tên do người lập trình đặt: Là tên được dùng theo ý nghĩa chủ quan của người lập trình
+ Phải được khai báo trước khi sử dụng
+ Không được trùng với tên dành riêng
+ Tên không có ký tự trắng xem vào giữa
+ Tên không dùng các ký tự đặc biệt, nhưng được dùng ký tự _
+ Tên được dùng ký tự chữ và ký tự số, nhưng ký tự số không được đặt ở đầu
+ Tên không dài quá 127 ký tự
Vấn đáp:
- Mọi thành viên trong lớp ta có được đặt tên
không? Vậy việc đặt tên cho từng thành viên
phụ thuộc vào ai, vào điều gì?
Vậy theo em các đối tượng trong một
chương trình thì sao?
(mời học sinh trả lời)
Thảo luận – trả lời và ghi chép:
- Đều được đặt tên. Phụ thuộc vào ba mẹ và
phụ thuộc vào kỳ vọng của ba mẹ về cái tên của
từng thành viên
- Vậy tên dành riêng là tên như thế nào?
- Là tên độc quyền, mang ý nghĩa và không có
bất kỳ tên nào trùng với nó
- Cũng đều phải được đặt tên theo ngôn ngữ lập
trình.
=> Mọi đối tượng trong chương trình đều phải
Giải thích
- Khẳng định câu trả lời của các em là đúng và được đặt tên theo một qui tắc nhất định (tuỳ
theo từng ngôn ngữ lập trình và chương trình
bổ sung thêm ý
dịch đi kèm).
Câu hỏi gợi ý:
- Khi cô nói cô tên là Xuân, vậy Xuân là tên - Là sai, vì có vô số người có cùng tên là Xuân
dành riêng cho cô, theo các em đúng hay sai?
Vì sao?
Vậy tên dành riêng trong ngôn ngữ lập
=> Là tên được ngôn ngữ lập trình qui định
trình thì sao?
mang ý nghĩa xác định (hay còn gọi là từ khoá)
Ví dụ trong ngôn ngữ lập trình Pascal:
Program, Uses, Const, Var, Begin, End
- Vậy nếu Xuân không là tên dành riêng thì - Cũng không, vì nếu Xuân là tên của người thì
Xuân có phải là tên chuẩn hay không?
những người tên Xuân có vô số hình dạng khác
nhau, tính cách khác nhau. Nên Xuân không
phải là tên chuẩn.
- Thế mùa xuân có phải là tên chuẩn không?
- Phải
Vậy tên chuẩn trong ngôn ngữ lập trình là?
=> Tên chuẩn: Là tên được ngôn ngữ lập trình
qui định mang ý nghĩa nào đó, người lập trình
có thể định nghĩa lại để dùng với ý nghĩa khác
đi.
Ví dụ trong ngôn ngữ lập trình Pascal:
Real, Integer, Char, String
- Vậy Xuân là tên như thế nào
- Là tên được đặt theo ý nghĩa chủ quan
Vậy tên được đặt theo ý nghĩa chủ quan của
GV: DươngThị Thanh Xuân
Trang 8/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
người lập trình khi viết chương trình được gọi => Tên do người lập trình đặt
là tên gì?
QUI TẮC ĐẠT TÊN
Tên không hợp lệ
Tên hợp lệ
Tên không dùng ký tự trắng xen giữa
GIAI PT, AB C
GIAI_PT , ABC
Tên không dùng ký tự số đứng đầu
2HE_PT
HE_2_PT, HE_PT2
Tên không dùng ký tự đặt biệt
A&B, A-B, A<>B
AB, _AB, A_B, AB_
Trình bày:
- Tự ghi chép nội dung trong sách giáo khoa
- Tóm lượt nội dung chính lên bảng
theo những ý đã tóm lượt
HOẠT ĐỘNG 3
Tìm hiểu hằng – biến và chú thích
a/ Mục tiêu:
- Học sinh biết khái niệm và phân biệt: hằng, biến và chú thích
b/ Nội dung:
2. Một số khái niệm
b/ Hằng – biến
- Hằng: là đại lượng mang giá trị không đổi trong quá trình thực hiện chương trình
Hằng số học: là các số nguyên và các số thực
Hằng logic: là giá trị True/False (1/0, y/n)
Hằng xâu: là chuổi các ký tự trong bảng mã ASCII, được đặt trong cặp dấu ‘’
- Biến: là đại lượng mang giá trị mà giá trị này được phép thay đổi trong quá trình thực
hiện ct
a/ Chú thích
- Chú thích: Để giải thích cho lệnh hay câu lệnh trong chương trình
{ nội dung chú thích trong 1 dòng}
(* nội dung chú thích trong nhiều dòng *)
Câu hỏi dẫn nhập
- Em hãy cho một số ví dụ về các hằng số mà 1. Độc lập suy nghĩ và trả lời
- Hằng số = 3.14
em đã từng học qua ở các bộ môn như toán, lý
- Hằng số g = 9.8
- Vậy các hằng này có thay đổi giá trị khi bắt - Không
đầu và kết thúc bài toán không?
Vậy trong ngôn ngữ lập trình hằng là gì?
=> Hằng: là đại lượng mang giá trị không đổi
trong quá trình thực hiện chương trình
Diễn giải:
Học sinh theo dõi:
- Trong ngôn ngữ lập trình hằng được chia - Đánh dấu lại nội dung trình bày trong sách
thành 3 dạng chính
Hằng số học: là các số nguyên hay các
số thực
Hằng logic: là giá trị True/False (1/0,
y/n)
Hằng xâu: là chuổi các ký tự trong bảng
mã ASCII, được đặt trong cặp dấu ‘’
GV: DươngThị Thanh Xuân
Trang 9/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
Dẫn nhập ví dụ thực tế:
- Một vật thể lúc xuất, hiện nơi này, lúc nơi
khác, lúc hình dạng này, lúc hình dạng khác, ta
thường gọi. Vật thể đó có khả năng biến hoá vô
lường
Câu hỏi phát vấn:
- Vậy theo em biến là gì?
Độc lập suy nghĩ
- là việc chỉ về vật thể có thể thay đổi trạng thái
Vậy biến trong NNLT là gì?
=> Biến: là đại lượng mang giá trị mà giá trị
này được phép thay đổi trong quá trình thực
hiện chương trình
Câu hỏi dẫn nhập
- Giải một bài toán khi nào em dùng đến những Độc lập suy nghĩ:
- Khi muốn giải thích rõ nội dung nào đó mà ta
dòng chú thích
sợ người khác không hiểu hay nhiều nhầm đi
Diễn giải:
Lắng nghe và đóng góp
- Chú thích trong ngôn ngữ lập trình cũng thế
- Chú thích: Để giải thích cho lệnh hay câu lệnh
trong chương trình
{ nội dung chú thích trong 1 dòng}
(*nội dung chú thích trong nhiều dòng*)
Trình bày:
- Tóm lượt lại những nội dung vừa làm việc với - Xem sách và hệ thống lại những nội dung vừa
học sinh bằng cách đặt lại các câu hỏi và yêu học, trình bày lại theo các câu hỏi của giáo viên
cầu học sinh trả lời lại
- Tóm lượt lại nội dung và ghi bảng.
- Tự ghi chép lại nội dung chính của bài trong
sách và nội dung mở rộng trên bảng theo các ý
tóm lượt của giáo viên
HOẠT ĐỘNG 3
Củng cố nội dung kiến thức vừa học
a/ Nội dung:
- Thành phần của ngôn ngữ lập trình: Bảng chữ cái, cú pháp, ngữ nghĩa
- Khái niệm tên, tên dành riêng, tên chuẩn, tên do người lập trình đặt
- Khái niệm hằng, biến, chú thích
- Dấu , trong số thực được thay bằng dấu . trong NNLT .
- Ký tự ‘ trong NNLT dược thay thế bằng ‘’. Nên hằng ‘’’’ là hằng xâu nháy đơn
b/ Câu hỏi thảo luận mở rộng vấn đề
- Điểm khác nhau giữa tên dành riêng và tên Học sinh thảo luận để củng cố bài
chuẩn?
- 4+6 có phải là hằng hay không?
- Phải 4, 6 là hằng, phép toán 4+6 là hằng
- ‘true’ có phải là hằng hay không? Nếu phải - Phải, là hằng xâu, vì true là logic, ‘true’ là
là hằng gì? Vì sao?
hằng xâu
GV: DươngThị Thanh Xuân
Trang 10/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
IV. DĂN DÒ:
- Làm bài tập trong sách bài học và trong sách bài tập đầy đủ
- Chuẩn bị bài 3
V. RÚT KINH NGHIỆM:
GV: DươngThị Thanh Xuân
Trang 11/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
TIẾT CT: 03
BÀI TẬP
I. MỤC TIÊU:
a/ Về kiến thức – kỹ năng
- Hệ thống lại hệ thống kiến thức cơ bản của chương một
c/ Thái độ:
- Phát huy thái độ tích cực học tập của học sinh
II. PHƯƠNG PHÁP VÀ PHƯƠNG TIỆN DẠY – HỌC
a/ Phương pháp: Đặt vấn đề – dẫn dắt – thảo luận – giúp các em liên tưởng từ thực tế để tìm ra
nội dung chính trong bài
b/ Phương tiện:
- Giáo viên: Giao học sinh thực hiện bài tập về nhà theo SGK, bảng, phấn
- Học sinh: sách giáo khoa
III. HOẠT ĐỘNG DẠY – HỌC
- Ổn định lớp
- Dẫn dắt vào nội dung bài tập
Hoạt động của Thầy
Hoạt động của trò
HOẠT ĐỘNG 1:
Cho học sinh chủ động lên giải bài tập SGK
a/ Mục tiêu
- Củng cố kiến thức
b/ Nội dung:
SGK trang 13
Đặt vấn đề:
Suy nghỉ - trả lời
- Câu 1: Tại sao người ta phải xây dựng các - Dễ hiểu
ngôn ngữ lập trình bậc cao?
- Dể chỉnh sửa
- Dể nâng cấp
Phù hợp với nhu cầu nhiều người dùng
Không phụ thuộc vào loại máy
Thuận tiện cho việc mô tả thuật toán
Tổ chức dữ liệu đa dạng
Làm việc với các kiểu dữ liệu khác nhau
- Câu 2: Viết ra 3 tên đúng theo qui cách
Thực hiện trên bảng
Pascal
HOẠT ĐỘNG 2:
Thực hiện câu hỏi trắc nghiệm
a/ Mục tiêu
- Củng cố kiến thức
GV: DươngThị Thanh Xuân
Trang 12/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
b/ Nội dung:
1. Phát biểu nào dưới đây là đúng ?
A. Để biên soạn một chương trình trên ngôn
ngữ bậc cao có thể sử dụng nhiều hệ soạn
thảo văn bản khác nhau.
B. Output của mọi chương trình đều là chương
trình trên ngôn ngữ máy.
C. Chương trình viết bằng hợp ngữ không phải
là Input hay Output của bất cứ chương trình
dịch nào.
D. Chương trình dịch là thành phần chính của
một ngôn ngữ lập trình bậc cao.
Đáp án: A
2. Phát biểu nào dưới đây là đúng ?
A. Chương trình là dãy các lệnh được tổ chức
theo các quy tắc được xác định bởi một ngôn
ngữ lập trình cụ thể.
B. Trong chế độ thông dịch mỗi câu lệnh của
chương trình nguồn được dịch thành một câu
lệnh của chương trình đích.
C. Mọi bài toán đều có chương trình để giải
trên máy tính.
D. Nếu chương trình nguồn có lỗi cú pháp thì
chương trình đích cũng có lỗi cú pháp.
Đáp án: A
3. Đâu là biểu diễn hằng trong những biểu diễn dưới
đây ?
A - begin
B - '65c'
C - 5.8A
D
- integer
Đáp án: B
4. Hãy chọn biểu diễn tên đúng trong những biểu
diễn dưới đây ?
A - '********' B - (2) C - 3GHI
D
- PpPpPp
Đáp án: D
5. Trong những biểu diễn dưới đây, biểu diễn nào là
từ khoá trong Pascal ?
A - Integer
B - END
C
- Real
D - Sqrt
6. Phát biểu nào dưới đây là đúng ?
A. Khi cần thay đổi ý nghĩa của 1 từ khoá nào
đó người lập trình cần khai báo theo ý nghĩa
mới.
B. Tên do người lập trình tự đặt được trùng với
GV: DươngThị Thanh Xuân
Đáp án: B
Đáp án: D
Trang 13/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
từ khoá.
C. Trong chương trình tên gọi cũng là một đối
tượng không thay đổi nên cũng có thể xem
là hằng.
D. Mọi đối tượng có giá trị thay đổi trong
chương trình đều gọi là biến.
7. Trong chế độ biên dịch, một chương trình đã được
Trả lời:
dịch thông suốt, hệ thống không báo lỗi. Có thể
Không thể khẳng định chương
khẳng định rằng ta đã có một chương trình đúng trình đúng vì chương trình có thể vẫn còn
hay chưa ? Tại sao ?
chứa lỗi ngữ nghĩa.
8. Trong chế độ thông dịch, giả sử hai phần ba số
Trả lời:
câu lệnh trong chương trình đã được thực hiện.
Không thể khẳng định. Cú pháp
Có thể khẳng định rằng như vậy chương trình
của các câu lệnh chưa thực hiện chưa
không còn chứa lỗi cú pháp nữa hay không ? Tại
được kiểm tra
sao ?
9. Tại sao phải kiểm tra tính đúng đắn của chương
Trả lời:
trình bằng nhiều bộ dữ liệu thử nghiệm khác nhau
Chương trình có thể có nhiều
?.
nhánh và có nhiều dạng lỗi ngữ nghĩa
khác nhau
Trả lời:
10. Trong một chương trình còn có lỗi cú pháp,
Chương trình biên dịch phát
thông thường chương trình biên dịch hay chương hiện lỗi nhanh hơn vì chương trình
trình thông dịch phát hiện ra lỗi nhanh hơn ? Tại biên dịch kiểm tra cú pháp trước khi
sao ?
dịch. Chương trình thông dịch vừa
dịch vừa thực hiện từng câu lệnh, lỗi
cú pháp chỉ được phát hiện khi thực
hiện tới câu lệnh đó
IV. DĂN DÒ:
- Chuẩn bị bài 3
V. RÚT KINH NGHIỆM:
GV: DươngThị Thanh Xuân
Trang 14/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
Chương 2: CHƯƠNG TRÌNH ĐƠN GIẢN
TIẾT CT: 04
Bài 3: CẤU TRÚC CHƯƠNG TRÌNH
I. MỤC TIÊU:
a/ Về kiến thức:
- Hiểu được chương trình và sự mô tả của thuật toán bằng ngôn ngữ lập trình
- Biết được cấu trúc một chương trình đơn giản
b/ Về kỹ năng:
- Nhận biết được các thành phần của một chương trình đơn giản
c/ Thái độ:
- Ham muốn giải các bài toán đơn giản bằng lập trình.
II. PHƯƠNG PHÁP VÀ PHƯƠNG TIỆN DẠY – HỌC
a/ Phương pháp: Thuyết trình – vấn đáp – lập đề án
b/ Phương tiện:
- Giáo viên: bảng viết, sách, tài liệu minh hoa
- Học sinh: sách giáo khoa
III. HOẠT ĐỘNG DẠY – HỌC
- Ổn định lớp
- Kiểm tra bài cũ:
1. Hãy trình bày các thành phần cơ bản của ngôn ngữ lập trình?
2. Điểm khác nhau giữa tên dành riêng và tên chuẩn?
3. Trình bày các qui tắc đặt tên mà người lập trình phải tuân thủ?
- Giới thiệu chương trình
Hoạt động của Thầy
Hoạt động của trò
HOẠT ĐỘNG 1:
Tìm hiểu cấu trúc của chương trình
a/ Mục tiêu
- Giúp học sinh biết được chương trình có 2 phần
b/ Nội dung
1. Câu trúc chung
- Cấu trúc chương trình có hai phần: Phần khai báo, phần thân
[
]
- Trong một số trường hợp chương trình phần khai báo được lượt bỏ
- Phần thân bắt buộc phải có trong chương trình
GV: DươngThị Thanh Xuân
Trang 15/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
Phát vấn:
- Hãy cho biết một bài tập làm văn thường có
mấy phần? Có thể đảo lộn các phần cho nhau
được không? Tại sao lại phải chia ra như vậy?
Suy nghĩ phát biểu:
- Thường có ba phần: mở bài, thân bài, kết luận
- Các phần phải có thứ tự
- Mạch văn hợp lý, dễ đọc, dễ viết và diễn tả
được nội dung bài văn, mạch lạc, rõ ràng.
- Viết một thuật toán để giải bài toán em - Trình bày hai phần:
thường trình bày thế nào
+ Xác định Input/Output của bài toán
+ Viết thuật toán để giải bài toán
Diễn giải:
Lắng nghe và suy luận
- Lập trình là việc dùng cấu trúc, dữ liệu của
một ngôn ngữ lập trình cụ thể để mô tả, biểu
diễn thuật toán sau cho máy tính hiểu được.
- Kết quả của lập trình ta sẽ được một chương trình
Phát vấn
Nghiên cứu sách giáo khoa em hãy cho biết:
Nghiên cứu sách – phát biểu
- Một chương trình có cấu trúc mấy phần?
- Một chương trình gồm có 2 phần
[]
Diễn giải:
Lắng nghe:
- Với nội dung đặt trong cặp ngoặc [] nghĩa là - Trong một số trường hợp chương trình phần
nội dung đó trong một vài chương trình được khai báo được lượt bỏ
phép bỏ qua => chương trình vẫn đúng
- Phần thân bắt buộc phải có trong chương
- Với nội dung đặt trong cặp ngoặc <> nghĩa là trình
nội dung đó bắt buộc phải có trong chương
trình
Trình bày:
Ghi chép:
- Giáo viên tóm lượt nội dung cấu trúc chương
trình , [], <> và ghi tóm tắt lên bảng
- Dựa theo nội dung tóm lượt học sinh tự ghi
bài
HOẠT ĐỘNG 2:
Tìm hiểu các thành phần của chương trình
a/ Mục tiêu
- Giúp học sinh biết được nội dung hai phần của chương trình
b/ Nội dung
2. Các thành phần của chương trình
a./ Phần khai báo:
Khai báo tên chương trình
Khai báo thư viện
GV: DươngThị Thanh Xuân
program ;
uses ;
Trang 16/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
Khai báo hằng
const = ;
Khai báo biến
var : ;
(và khai báo chương trình con)
b./ Phần thân: Gồm dãy các lệnh được đặt trong cặp dấu hiệu mở đầu và kết thúc
+ Phần mở đầu
Các câu lệnh;
+ Phần kết thúc.
Phát vấn
Nghiên cứu sách giáo khoa em hãy cho biết:
- Trong phần khai báo có những khai báo nào?
Gợi ý vấn đề:
- Phần khai báo: khai báo tên chương trình,
khai báo thư viện, khai báo hằng, khai báo biến
(và khai báo chương trình con)
Trao đổi thảo luận và phát biểu
- Hôm trước chúng ta đã học qua một số từ - Từ Program: khai báo tên chương trình
khoá trong ngôn ngữ Pascal. Hãy chọn từ khoá - Từ Uses: khai báo thư viện
tương ứng để khai báo các đối tượng tương ứng
- Từ Const: khai báo hằng
mà em vừa nêu?
- Từ Var: khai báo biến
Thuyết giảng:
Chú ý lắng nghe – ghi nhớ
- Mỗi đối tượng có một cách khai báo riêng - (Cú pháp phải tuân thủ tuyệt đối khi lập
(hay còn gọi là). Chính vì thế ta cần khai báo trình)
một cách chính xác, nếu không chương trình
không thể thực hiện được
Trình bày các khai báo trong NN Pascal
Ghi chép và lưu ý các nội dung:
- Khai báo tên chương trình
- Từ từ khoá program đến tên chương trình
không có ký tự nào ngoài ký tự trắng. Kết thúc
bằng dấu ;
+ Ví dụ: program Vi_du1;
+ Tên chương trình là tên do người lập
trình đặt
program ;
( cặp ngoặc <> khi viết chương trình không
dùng tới nó)
* Hay:
program ten_ chuong_ trinh ;
- Khai Báo Thư Viện:
Thư Viện Cung Cấp Một Số Chương - Từ từ khoá uses đến tên thư viện không có ký
Trình Thông Dụng Để Dùng Sẳn, Vì Thế Muốn tự nào ngoài ký tự trắng. Kết thúc bằng dấu ;
Sử Dụng Chúng Thì Phải Khai Báo Thư Viện
+ Ví dụ: uses Crt;
Chứa Chúng
uses ;
* Hay
uses ten_thu_vien ;
- Khai báo hằng:
const = ;
GV: DươngThị Thanh Xuân
- Từ khoá const và dấu = là bắt buộc
+ Ví dụ: const Pi = 3.14 ;
Trang 17/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
* Hay
const ten_hang = gia_tri ;
- Khai báo biến:
var : ;
* Hay
var ten_bien : kieu_du_lieu ;
Phát vấn
Nghiên cứu sách giáo khoa em hãy cho biết:
- Phần thân chương trình mang nội dung gì?
Trình bày khai báo phần thân trong NN Pascal:
BEGIN
{}
END.
- (Tương tự cách khai báo thư viện)
- Khác với khai báo hằng là dấu = thì khai báo
biến là dấu :
- Từ khoá var và dấu : là bắt buộc.
+ Ví dụ: var songuyenam: interger;
+ Kiểu dữ liệu là các tên chuẩn
- Phần thân: Gồm dãy các lệnh được đặt trong
cặp dấu hiệu mở đầu và kết thúc
+ Phần mở đầu
Các câu lệnh;
+ Phần kết thúc.
Từ khoá bắt đầu
Các lệnh, câu lệnh
Từ khoá kết thúc
HOẠT ĐỘNG 3:
chương trình pascal đơn giản
a/ Mục tiêu
- Giúp học sinh nhận biết một chương trình và các thành phần trên một chương trình cụ thể
b/ Nội dung
program vi_du1 ;
begin
writeln (‘chao ban den voi Pascal’);
end.
- Xác định các thành phần của chương trình?
- Phần khai báo, phần thân
+ Khai báo tên
+ Thân chương trình
* Thân có 1 dòng lệnh
- Chương trình không có phần khai báo nào?
- Không có phần khai báo thư viện, hằng, biến
- Kết thúc chương trình có gì đặc biệt ?
- Sau từ khoá END luôn có dấu .
HOẠT ĐỘNG 4
Củng cố nội dung kiến thức vừa học
a/ Nội dung:
- Cấu trúc chương trình: Phần khai báo, phần thân. (Phần khai báo có thể có hoặc không)
- Phần khai báo: khai báo tên chương trình, khai báo thư viện, khai báo hằng, khai báo biến (và
khai báo chương trình con)
- Phần thân: Gồm dãy các lệnh được đặt trong cặp dấu hiệu mở đầu và kết thúc
b/ Câu hỏi củng cố
Học sinh thảo luận để củng cố bài
- Điểm giống và khác nhau trong khi khai báo - program Vi_du ;
các đối tượng cuả chương trình?
- uses crt ;
- Tại sao phải khai báo biến
- const max = 100 ;
GV: DươngThị Thanh Xuân
Trang 18/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
- var x : integer ;
IV. DĂN DÒ:
- Học bài, làm bài tập trong sách bài học và trong sách bài tập đầy đủ
- Chuẩn bị bài 4
V. RÚT KINH NGHIỆM:
GV: DươngThị Thanh Xuân
Trang 19/111
TRƯỜNG THPT LONG PHƯỚC
GIÁO ÁN TIN HỌC 11
TIẾT CT: 05
Bài 4 - 5: MỘT SỐ KIỂU DỮ LIỆU CHUẨN – KHAI BÁO BIẾN
I. MỤC TIÊU:
a/ Về kiến thức:
- Biết một số kiểu dữ liệu chuẩn: nguyên, thực, ký tự, chuỗi, logic …
- Hiểu cách khai báo biến
b/ Về kỹ năng:
- Xác định được kiểu cần khai báo của các dữ liệu đơn giản
- Biết khai báo biến đúng
c/ Thái độ:
- Có ý thức cố gắng học tập vượt qua những lúng túng, khó khăn ở giai đoạn bắt đầu lập trình
II. PHƯƠNG PHÁP VÀ PHƯƠNG TIỆN DẠY – HỌC
a/ Phương pháp: Thuyết trình – vấn đáp – lập đề án
b/ Phương tiện:
- Giáo viên: bảng viết, sách, tài liệu minh hoạ, chương trình mẫu
- Học sinh: sách giáo khoa
III. HOẠT ĐỘNG DẠY – HỌC
- Ổn định lớp
- Kiểm tra bài cũ:
1. Hãy trình bày cấu trúc của một chương trình
2. Có các khai báo nào mà em đã học, trình bày nội dung, cú pháp
3. Trình bày 1 chương trình Pascal đơn giản
- Tiến hình hoạt động bài mới
Hoạt động của Thầy
Hoạt động của trò
HOẠT ĐỘNG 1:
Tìm hiểu một số kiểu dữ liệu chuẩn
a/ Mục tiêu
- Giúp học sinh biết được một số kiểu dữ liệu chuẩn ứng với ngôn ngữ lập trình Pascal, giới hạn
biểu diễn của mỗi loại kiểu
b/ Nội dung
- Kiểu số nguyên: Byte, word, Integer, Shortint, Longint …
+ Byte:
(1byte)
0 .. 255
Word :
(2byte)
0 .. 216-1
+ Integer:
(2byte)
-215 .. 215-1
Logint : (4 byte)
-232 .. 232-1
- Kiểu số thực: Real, Single, Double, Extended
+ Real:
(6byte)
0 hoặc 10-38 .. 1038
+ Extended:
(10byte)
0 hoặc 10-4932 .. 104932
- Kiểu ký tự: là các ký tự trong bảng mã ASCII gồm 256 ký tự, đánh số từ 0 – 255
- Kiểu logic: tập gồm 2 giá trị true/false. Là kết quả của phép so sánh.
GV: DươngThị Thanh Xuân
Trang 20/111