giáo án tin 11 từ tuần 1 đến tuần 10 giáo án tin 11 từ tuần 1 đến tuần 10 giáo án tin 11 từ tuần 1 đến tuần 10 giáo án tin 11 từ tuần 1 đến tuần 10 giáo án tin 11 từ tuần 1 đến tuần 10 giáo án tin 11 từ tuần 1 đến tuần 10
Trang 1Ngày soạn : 25/8/2016Tiết PPCT : 1
Chương I: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH Bài 1: KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
I MỤC TIÊU:
1 Kiến thức:
- Học sinh nhận biết được có ba lớp ngôn ngữ lập trình và các mức của ngôn ngữ lậptrình : ngôn ngữ máy, hợp ngữ và ngôn ngữ bậc cao.
- Biết dược vai trò của chương thình dịch.
2 Kĩ năng: Phân biệt được hai khái niệm biên dịch và thông dịch, phân biệt được các loại
ngôn ngữ lập trình
3 Thái độ: Thấy được sự cần thiết và tiện lợi khi sử dụng các ngôn ngữ lập trình bậc cao.
Liên hệ được với quá trình giao tiếp trong đời sống
II PHƯƠNG TIỆN DẠY HỌC:
1 Giáo viên: Một số ví dụ về ngôn ngữ lập trình
2 Học sinh: Tìm hiểu một số loại ngôn ngữ giao tiếp thông dụng
III HOẠT ĐỘNG DẠY HỌC:
1) Ổn định tổ chức: Kiểm tra sĩ số lớp.
2) Kiểm tra bài cũ: Nếu chỉ có thuật toán thì máy đã thực hiện được các bài toán mà
chúng ta đã giải hay chưa ?
Mở bài: Tất cả các bài toán sau khi chúng ta
đã xây dựng được thuật toán( Cách giải) thìchúng ta chọn một ngôn ngữ để viết ra thuậttoán đó làm cho máy tính có thể hiểu được.Việc dùng ngôn ngữ viết ra bằng lời đóđược gọi là lập trình Để hiểu sâu hơn kháiniệm này chúng ta đi vào bài 1:
Hoạt động 1:
Một số KN cơbản
? Thế nào được gọi là lập trình?
? Có những loại ngôn ngữ lập trình nào?.? Phân biệt ngôn ngữ bậc cao với các ngônngữ lập trình khác ở những nội dung nào?.? Thế nào được gọi là chương trình dịch?.GV : Gọi một học sinh nhắc lại các kháiniệm : ngôn ngữ máy, hợp ngữ và ngôn ngư
Ngôn ngữ máy: Là ngôn ngữ duy nhất mà máy tínhcó thể trực tiếp hiểu và xử lý đựơc.
Hợp ngữ: Là loại ngôn ngữ sử dụng một số từ đểthực hiện lệnh trên thanh ghi.
Ngôn ngữ bậc cao: Là loại ngôn ngữ gần với ngônngữ tự nhiên, ít phụ thuộc vào loại máy.
Chương trình dịch là chương trình đặc biệt, có chứcnăng chuyển đổi chương trình đợc viết bằng ngônngữ lập trình bậc cao sang ngôn ngữ máy
Trang 2bậc cao.
Các loại ngôn ngữ lập trình như: Tubopascal 7.0, Tubo C++, Visual Pascal 2.1,Visual C++
Ngôn ngữ lập trình bậc cao khác với cácngôn ngữ lập trình khác ở chỗ:
+ Chương trình viết bằng ngôn ngữ lậptrình bậc cao không phụ thuộc vào loại máy.+ Nó phải được dịch sang ngôn ngữ máymới có thể thực hiện được.
? Thế nào là thông dịch?.? Thế nào là biên dịch?.
? Các bước của thông dịch và biên dịchđược tiến hành ntn?.
Thông dịch là: Quá trình dịch và thực hiệncác câu lệnh luân phiên nhau, nó lần lượtdịch và thực hiện từng câu lệnh.
B Biên dịch là: Quá trình dịch toàn bộ
chương trình và nó có thể lưu trữ được cảchương trình nguồn và chương trình đích.* Các bước của biên dịch và thôngdịch( SGK)
HS: Trả lời câu hỏi.
GV : Để chuyển đổi chương trình viết bằngngôn ngữ lập trình bậc cao sang ngôn ngữmáy cần phải có gì?
HS : Đó là chương trình dịch.
KN Chương trình dịch: Là chương trình cóchức năng chuyển đổi chương trình viếtbằng ngôn ngữ lập trình bậc cao thànhchương trình thực hiện được trên máy tính.
GV : Cho ví dụ từ thực tế : “ Người phóngviên chỉ biết một ngôn ngữ là tiếng việtphóng vấn một chính khách nước ngoài ”thông qua người phiên dịch.
GV : Như vậy có hai cách để người phóng
Dùng máy chiếu diễn giải hai tình huống này.Kết luận :
Biên dịch (Compiler): được thực hiện qua hai bước
- Duyệt, phát hiện lỗi, kiểm tra tính đúng đắn củacá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 ơng trình đích có thể thực hiện trên máy và có thể l-ưu trữ để sử dụng lại khi cần thiết
ch-Thông dịch (Interpreter) đợ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 theotrong chương trình nguồn
- Chuyển đổi câu lệnh đó thành một hay nhiều câulệnh tương ứng trong
Trang 3viên có thể thực hiện công việc của mình :biên dịch và thông dịch
Khái niệm lập trình? Chương trình dịch là gì? Khái niệm ngôn ngữ lập trình?GV Hướng dẫn HS xem bài tiết sau
*Các thành phần cơ bản của ngôn ngữ lập trình.
? Ngôn ngữ lập trình có mấy thành phần cơ bản, đó là những thành phần nào+3 thành phần cơ bản
+ Bảng chữ cái: Là tập cac kí tự để viết chương trình Cú pháp:
Là bộ quy tắc để viết chương trình.(cho biết cách viết 1 chương trình hợp lệ).+ Ngữ nghĩa: Xác định ý nghĩa thao tác cần phải thực hiện, ứng với tổ hợp kí tựdựa vào ngữ cảnh đó
HS đọc bài đọc thêm 1
Trang 4Ngày soạn : 20/08/2016Tiết PPCT : 2
Bài 2 CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH.I MỤC TIÊU
1 Kiến thức:
+ Biết một số khái niệm: tên, tên chuẩn, tên dành riêng, hằng và biến
+ Học sinh ghi nhớ được các quy định về tên, hằng và biến trong một ngôn ngữ lập trình.
2 Kĩ năng:
+ Phân biệt được tên, hằng và biến.
+ Biết cách đặt tên chúng và nhận biết được tên viết sai quy tắc.
3 Thái độ: Rèn luyện cho HS tính nguyên tắc, chặt chẽ trong lập trình
II PHƯƠNG TIỆN DẠY HỌC:
1 Giáo viên: Soạn giáo án, nghiên cứu sách giáo khoa, sách bài tập, tài liệu tham
khảo Máy tính cá nhân và máy chiếu ( nếu có).
2 Học sinh: Đọc trước ở nhà Sách giáo khoa.
III HOẠT ĐỘNG DẠY HỌC:
1) Ổn định tổ chức: Kiểm tra sĩ số lớp.
Câu hỏi :
1 Chương trình dịch là gì?
2 Biên dịch và thông dịch khác nhau như thế nào?
Kiểm tra bài cũ
Câu hỏi: Trình bày khái niệm ngôn ngữ lập trình, chương trình dịch, phân biệt giữa biêndịch và thông dịch
- Nhận xét cho điểm
Mở bài: Khi làm một bài toán lập trình có những phần chúng ta phải tuân thủ theo quy
ước của nó, có những phần người lập trình có thể tự làm theo cách của mình Những điềuđó là gì?
Trang 51.Các thành phần cơ bản
? Ngôn ngữ lập trình có mấy thành phần cơ bản, đó là những thành phần
+ Ngữ nghĩa: Xác định ý nghĩa thao tác cần phải thực hiện, ứng với tổ hợp kí tự dựa vào ngữ cảnh đó.
GV: Gọi HS trả lời ý nghĩa của việc đặttên?
HS: Tại chỗ trả lời.
GV: Nhận xét và đưa ra kết luận.HS: Chú ý và ghi bài.
GV: Mọi đối tượng trong chương trìnhđều phải được đặt tên theo quy tắc củangôn ngữ lập trình và từng chương trìnhdịch cụ thể.
GV: Trong Pascal, khi soạn thảo, têndành riêng có màu trắng phân biệt vớicác tên khác
GV: Gọi HS phát biểu về tên chuẩn.HS: Tại chỗ trả lời
GV: Viết một số tên chuẩn HS: Ghi bài,
BẢNG CHỮ CÁI, CÚ PHÁP,
* Tên dành riêng:
- Là tên được dùng với ý nghĩa riêng xác định.- Tên dành riêng còn được gọi là từ khoá.
Trang 6GV: Lấy ví dụ khi giải phương trình bậchai thì cần dùng các biến nào?
HS: Khi giải PTBH ta cần dùng cácbiến: a,b,c, x1, x2, Delta để biểu diễnnội dung của hệ số của phương trình;các nghiệm của phương trình và biệt sốdelta
GV: Vậy các tên đó là tên do người lậptrình đặt.
GV: Nêu khái niệm hằng trong ngônngữ lập trình.
HS: Tại chỗ trả lời.
GV: Lấy ví dụ cả ví dụ đúng và ví dụ saivề hằng cho học sinh nhận biết.
HS: Nhận biết tên hằng đúng và tênhằng sai.
HS: Chú ý lắng nghe và ghi bài.
GV: Ví dụ một chương trình Pascal đơngiản minh họa.
+ Hằng lôgic: Là giá trị đúng (True)hoặc sai (False).+ Hằng xâu: Là chuỗi kí tự trong bộ mã ASCII, đặttrong cặp dấu nháy.
Biến
- Là đại lượng được đặt tên, dùng để lưu trữ giá trị vàgiá trị có thể được thay đổi trong quá trình thực hiệnchương trình.
c Chú thích
- Các chú thích không làm ảnh hưởng đến chương trình.- Trong Pascal chú thích được đặt trong {} hoặc (*và*).- Trong C++ chú thích đặt trong /* và */ hoặc //.
4) CỦNG CỐ : Nhắc lại quy tắc đặt tên trong Pascal và khái niệm 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 và sự khác nhau giữa hằng và biến
Hướng dẫn làm bài tập 5 và bài tập 6.
- Bài 6: Các hằng số: a,b,f,g; Các hằng xâu: d,i.
Trang 7Tuần dạy: 4Ngày soạn : 05/9/2016Tiết PPCT : 9
BÀI TẬP I MỤC TIÊU
1 Kíến thức:
+ Củng cố lại cho HS những kiến thức đã học về lập trình, ngôn ngữ lập trình bậc cao, ngônngữ máy, chương trình dịch, thông dịch, biên dịch qua các bài tập trắc nghiệm.
2 Kĩ năng:
+ Xác định được tên đúng, tên sai, tên chuẩn, từ khoá.
+ Biết viết hằng và tên đúng trong một ngôn ngữ lập trình cụ thể.
3 Thái độ:
+ Nhận thức được quá trình phát triển của ngôn ngữ lập trình gắn liền với quá trình phát
triển của tin học.
+ Ham muốn học một ngôn ngữ lập trình cụ thể để có khả năng giải các bài toán bằng máytính điện tử.
II PHƯƠNG TIỆN DẠY HỌC:
1 Giáo viên: Soạn giáo án, nghiên cứu sách giáo khoa, sách bài tập, tài liệu tham
khảo Máy tính cá nhân và máy chiếu ( nếu có).
2 Học sinh: Làm bài tập trước ở nhà.
III HOẠT ĐỘNG DẠY HỌC:
- Đối tượng HS kiểm tra: HS trung bình.
3) Giảng bài mới:
GV: Gọi HS đọc câu hỏi 1, cả lớp suynghĩ trả lời.
Trang 8GV: Gọi HS đứng tại chổ trả lời.
GV: Gọi HS khác bổ sung Sau đó GVnhận xét câu trả lời và ghi đáp án.
HS: Chữa bài tập vào vở.
GV: Gọi HS đọc câu hỏi 2 và trả lời câuhỏi 2.
HS: Tại chỗ trả lời và nêu khái niệmchương trình dịch.
GV: Nêu Input và Output của chươngtrình dịch để gợi ý cho HS vai trò củachương trình dịch.
GV: Gợi ý cho HS bằng cách gọi 1 HSnêu quy tắc đặt tên trong Pascal và tênđược đặt không quá ngắn, hay quá dàimà nên đặt sao cho gợi nhớ ý nghĩa đốitượng mang tên đó.
HS: Tại chỗ đọc câu hỏi.HS: Lên bảng làm.GV: Chữa bài.
Câu2: Chương trình dịch là gì? Tại sao cần phải cóchương trình dịch
- Chương trình dịch là chương trình đặc biệt, có chứcnăng chuyển đổi chương trình được viết trên ngôn ngữbậc cao thành một chương trình đích có thể thực hiệntrên máy.
- Để một chương trình viết bằng ngôn ngữ bậc cao máycó thể hiểu và thực hiện được thì phải có chương trìnhdịch dịch sang ngôn ngữ máy.
Câu3: Biên dịch và thông dịch khác nhau như thếnào?
- Trình biên dịch duyệt, kiểm tra, phát hiện lỗi, xác địnhchương trình nguồn có dịch được không và dịch toàn bộthành một chương trình đích có thể thực hiện trên máyvà có thể lưu trữ được.
- Trình thông dịch lần lượt dịch từng câu ra ngôn ngữmáy rồi thực hiện và không lưu lại trên máy.
Câu4: Hãy cho biết điểm khác nhau giữa tên dànhriêng và tên chuẩn? - Tên dành riêng không được
dùng khác với ý nghĩa đã xác định, tên chuẩn có thểdùng với ý nghĩa khác.
Câu5: Hãy tự viết ra ba tên đúng theo quy tắc củaPascal.
3 tên đúng trong Pascal:abc; vidu3; _15a.
Câu6: Hãy cho biết những biểu diễn nào dưới đây
không phải là biểu diễn hằng trong Pascal và chỉ rõ lỗitrong từng trường hợp
a) 150.0; b) -22; c) 6,23; d) ‘43’ ; e) A20;
Trang 9GV: Gọi HS đọc câu hỏi 6
GV: Từng câu a,b,…, i gọi lần lượt từngHS: Trả lời:
- c) không phải là hằng vì dấu phẩy phảithay bằng dấu chấm.
- e) là tên chưa rõ giá trị.
- h) thiếu dấu nháy đơn ơ cuối
f)1.06E-15
g) 4+6 ; h) ‘c ; i) ‘True’.
- Các biểu diễn không phải là hằng: c), e), h).
- Rèn luyện kĩ năng đặt tên, biến.
- Hiểu và nắm vững khái niệm chương trình dịch, hằng và biến,…
- Hướng dẫn HS làm các bài tập trong SBT: BT 1.9; BT 1.10; BT 1.11; BT 1.12.
Trang 10Tuần dạy: 5Ngày soạn : 8/9/2016Tiết PPCT : 3
CHƯƠNG II: CHƯƠNG TRÌNH ĐƠN GIẢNBài 3 CẤU TRÚC CHƯƠNG TRÌNHI MỤC TIÊU
+ Nhận biết được các thành phần của một chương trình đơn giản.
+ Xác định kiểu cần khai báo của dữ liệu đơn giản.
3 Thái độ:
+ Xác định thái độ nghiêm túc trong học tập khi làm quen với nhiều qui định nghiêmngặt trong lập trình.
II PHƯƠNG TIỆN DẠY HỌC:
1 Giáo viên: Soạn giáo án, nghiên cứu sách giáo khoa, sách bài tập, tài liệu tham
khảo Máy tính cá nhân và máy chiếu ( nếu có).
2 Học sinh: tham khảo trước tài liệu ở nhà.
III HOẠT ĐỘNG DẠY HỌC:
Đối tượng kiểm tra: HS trung bình.
GV: Một ngôn ngữ lập trình bậc cao thườngcó hai phần.
GV: Với quy ước: Các diễn giải bằng ngônngữ tự nhiên được đặt trong cặp < và >
[ ] : Biểu diễn có thể có hoặc không.
I Cấu trúc chương trình1 Cấu trúc chung
- Cấu trúc chung: [<phần khai báo>] <phần thân>
Trang 11HS: Phần thân chương trình nhất thiết phải có,phần khai báo có thể có hoặc không tuỳ theotừng chương trình dịch cụ thể.
GV: Nêu cấu trúc chung của một chương trìnhPascal đơn giản:
HS: Lắng nghe và ghi bài.
GV: Chúng ta tìm hiểu từng thành phần củachương trình
GV: Phần này có thể có hoặc không VớiPascal, nếu có phải khai báo theo đúng quytắc.
HS: Lên bảng
GV: Gọi HS lấy ví dụ về khai báo tên chươngtrình đúng.
HS: Lên bảngGV: Nhận xét.
GV: Mỗi ngôn ngữ lập trình thường có sẵnmột số thư viện cung cấp một số chương trìnhthông dụng đã được lập sẵn Để sử dụng cácchương trình đó cần khai báo thư viện chứanó.
GV: Trong Pascal, khai báo thư viện phải luônđặt đầu tiên, ngay sau dòng khai báo
GV: Những gía trị xuất hiện nhiều lần trongchương trình thì thường được khai báo hằng HS: Lắng nghe
GV: Khai báo hằng sẽ tạo điều kiện thuận lợicho việc chỉnh sửa lại giá trị của hằng trongtoàn bộ chương trình.
GV: Lấy ví dụ.
GV: - Biến chỉ nhận một giá trị tại mỗi thờiđiểm thực hiện chương trình được gọi là biếnđơn
GV: Khi cần viết chương trình quản lí học
- Trong Pascal:Phần khai báo:
Program < tên chương trình>;Uses < tên các thư viện>;
Const <tên hằng>=<giá trị của hằng>;Var < tên biến>: <kiểu dữ liệu>;Procedure …; <khai báo thủ tục>Function …; <khai báo hàm>…
* Khai báo thư viện.
- Khai báo thư viện trong Pascal:
Uses crt; {Thư viện crt chứa các hàm vào/ra
chuẩn làm việc với màn hình và bàn phím}
Uses graph; {Thư viện graph chứa các hàm đồ
- Để xoá những gì trên màn hình sau khi khai báo
crt thì dùng lệnh clrscr.
- Trong C++:#include <stdio.h>;#include <conio.h>;
* Khai báo hằng:
- Trong Pascal:
Const MaxN = 1000; PI = 3.1416;
* Khai báo biến: - Trong Pascal:
Var <danh sách biến>:<kiểu dữ liệu>;
Trang 12sinh ta cần xử lí thông tin ở những dạng nào?
HS: Suy nghỉ và 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 và đưa
ra một vài thông tin ở dạng như sau:
- Họ tên học sinh là những thông tin ở dạngvăn bản và dạng kí tự
- Điểm của học sinh là thông tin ở dạng sốthực.
- Số thứ tự của học sinh là thông tin ở dạng sốnguyên.
3.VÍ DỤ CHƯƠNG TRINH ĐƠN GIẢNGV giới thiệu các chương trình mẫu cho HSnhận biết
Ví dụ: Giải phương trình bậc hai:
- Trong Pascal, được bắt đầu và kết thúc bởiBegin… End.
[<Dãy lệnh>];End.
Trang 13Tuần dạy: 5 Ngày soạn : 12/9/2016
Tiết PPCT : 4
Bài 4 KIỂU DỮ LIỆU CHUẨN§5 KHAI BÁO BIẾNI MỤC TIÊU
+ Nhận biết được các thành phần của một chương trình đơn giản.
+ Xác định kiểu cần khai báo của dữ liệu đơn giản.
3 Thái độ:
+ Xác định thái độ nghiêm túc trong học tập khi làm quen với nhiều qui định nghiêmngặt trong lập trình.
II PHƯƠNG TIỆN DẠY HỌC:
1 Giáo viên: Soạn giáo án, nghiên cứu sách giáo khoa, sách bài tập, tài liệu tham
khảo Máy tính cá nhân và máy chiếu ( nếu có).
2 Học sinh: tham khảo trước tài liệu ở nhà.
III HOẠT ĐỘNG DẠY HỌC:1.Ổn định tổ chức: Kiểm tra sĩ số lớp.
2.Kiểm tra bài cũ
Đối tượng kiểm tra: HS trung bình.
3 Giảng bài mới:
GV: Những gía trị xuất hiện nhiều lần trongchương trình thì thường được khai báo hằng
HS: Lắng nghe Kiểu dữ liệu chuẩn1 Kiểu nguyên
Trang 14GV: Khai báo hằng sẽ tạo điều kiện thuận lợicho việc chỉnh sửa lại giá trị của hằng trongtoàn bộ chương trình.
GV: Lấy ví dụ.
GV: - Biến chỉ nhận một giá trị tại mỗi thờiđiểm thực hiện chương trình được gọi là biếnđơn
GV: Khi cần viết chương trình quản lí học
sinh ta cần xử lí thông tin ở những dạng nào?
HS: Suy nghỉ và 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 và đưa
ra một vài thông tin ở dạng như sau:
- Họ tên học sinh là những thông tin ở dạngvăn bản và dạng kí tự
- Điểm của học sinh là thông tin ở dạng sốthực.
- Số thứ tự của học sinh là thông tin ở dạng sốnguyên.
GV: Phân tích câu đưa ra một vài thông tin ở
GV: Thuyết trình đưa ra một số bổ sung sau:
- Ngông ngữ lập trình nào cũng đưa ra một sốkiểu dữ liệu chuẩn đơn giản, từ những kiểuđơn giản này ta có thể xây dựng thành nhữngkiểu dữ liệu phức tạp hơn.
- Kiểu dữ liệu nào cũng có miền giới hạn củanó Máy tính không thể lưu tất cả các số trêntrục số nhưng nó có thể lưu trữ với độ chínhxác cao.
- Tuỳ thuộc vào ngôn ngữ lập trình mà têncủ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 cũng khác nhau.
3 Kiểu kí tự
- Tn kiểu: Char
- Miền gi trị l cc gi trị trong bảng m ASCII gịm256 kí tự Mỗi kí tự cĩ 1 m tương ứng trong phạmvi từ 0 đến 255
- Cc kí tự cĩ quan hệ so snh, việc so snh dựa trnm của từng kí tự.
4 Kiểu Logic
- Tn kiểu: Boolean
- Miền giá trị: Chỉ có 2 giá trị là True (đúng) hoặcFalse (sai).