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/2016 Tiế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ật
toá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ái
niệ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ôn
ngữ 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ái
niệ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ính
có 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ư: Tubo
pascal 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ác
ngôn ngữ lập trình khác ở chỗ:
+ Chương trình viết bằng ngôn ngữ lập
trì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áy
mới có thể thực hiện được
VD: Một người mông và một người kinh
nói chuyện với nhau trong khi đó người
mông không biết tiếng kinh, người kinh
không biết tiếng mông Để hiểu được 2
người nói gì chúng ta cần có một người
phiên dịch biết cả 2 thứ tiếng
? 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ện
các câu lệnh luân phiên nhau, nó lần lượt
dị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ông
dịch( SGK)
HS: Trả lời câu hỏi
GV : Để chuyển đổi chương trình viết bằng
ngôn ngữ lập trình bậc cao sang ngôn ngữ
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-
ch-ưu trữ để sử dụng lại khi cần thiết
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
HS đọc bài đọc thêm 1
Trang 4+ 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
+ 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ự
GV: Mọi đối tượng trong chương trình
đều phải được đặt tên theo quy tắc của
loại tên cơ bản: tên dành riêng, tên
chuẩn và tên do người lập trình đặt
HS: Đọc SGK và trình bày về tên dành
riêng
GV: Trong Pascal, khi soạn thảo, tên
dành riêng có màu trắng phân biệt với
+ Để gợi nhớ nội dung của đối tượng
- Qui tắc đặt tên trong Pascal:
Tên là một dãy liên tiếp không quá 127 kí tự bao gồmcá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
* 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ậc
hai thì cần dùng các biến nào?
HS: Khi giải PTBH ta cần dùng các
biến: a,b,c, x1, x2, Delta để biểu diễn
nộ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ố
về hằng cho học sinh nhận biết
HS: Nhận biết tên hằng đúng và tên
hằng sai
Ví dụ: 123, ‘123’, ‘TRUE, 2+3,…
GV: Các biến được dùng trong chương
trình phải được khai báo
GV: Khi viết chương trình người lập
trình có nhu cầu giải thích cho những
câu lệnh mình viết để khi đọc lại được
thuận tiện hoặc người khác đọc có thể
hiểu được chương trình mình viết, do
vậy các ngôn ngữ lập trình thường cung
cấp cho chúng ta cách đưa vào các đoạn
chú thích trong chương trình
HS: Chú ý lắng nghe và ghi bài
GV: Ví dụ một chương trình Pascal đơn
giản minh họa
Ví dụ: Trong Pascal:
Program, uses, var, type, const, begin, end, array, type,
…Trong C++: main, include, if, while, void
* Tên chuẩn
- Được dùng với ý nghĩa nhất định nào đó, dùng riêngthì phải khai báo
Ví dụ:
Trong Pascal: abs, sqr, sqrt, cos, sin,…
Trong C++: cin, cout, getchar
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: 4 Ngày soạn : 05/9/2016 Tiết PPCT : 9
+ 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:
1) Ổn định tổ chức: Kiểm tra sĩ số lớp.
2) Kiểm tra bài cũ ( 7 ‘)
Câu hỏi :
1 Nêu các thành phần cơ bản của ngôn ngữ lập trình?
2 Nêu quy tắc đặt tên trong Turbo Pascal?
Đáp án:
1 Ngôn ngữ lập trình có ba thành phần cơ bản: bảng chữ cái, cú pháp và ngữ nghĩa
- Bảng chữ cái: Là tập các kí tự được dùng để viết chương trình
- Cú pháp: Là bộ quy tắc để viết chương trình
- Ngữ nghĩa: Xác định ý nghĩa của các tổ hợp kí tự
2 Quy tắc đặt tên trong Pascal:
- Đố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 suy
Trang 8GV: Gọi HS đứng tại chổ trả lời.
GV: Gọi HS khác bổ sung Sau đó GV
nhậ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âu
hỏi 2
HS: Tại chỗ trả lời và nêu khái niệm
chương trình dịch
GV: Nêu Input và Output của chương
trình dịch để gợi ý cho HS vai trò của
chương trình dịch
HS: Tại chỗ trả lời
GV: Gọi HS trả lời câu hỏi 3
HS: Tại chỗ đọc câu hỏi
GV: Gọi HS khác nhận xét câu trả lời,
GV: Gọi HS đọc câu hỏi 5
GV: Gợi ý cho HS bằng cách gọi 1 HS
nêu quy tắc đặt tên trong Pascal và tên
được đặt không quá ngắn, hay quá dài
mà nên đặt sao cho gợi nhớ ý nghĩa đối
tượng mang tên đó
HS: Tại chỗ đọc câu hỏi
- Ngôn ngữ bậc cao cho phép làm việc với nhiều kiểu
dữ liệu và cách tổ chức dữ liệu đa dạng, thuận tiện choviệc mô tả thuật toán
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áy
có 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áy
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ừng
HS: Trả lời:
- c) không phải là hằng vì dấu phẩy phải
thay 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: 5 Ngày soạn : 8/9/2016 Tiết PPCT : 3
CHƯƠNG II: CHƯƠNG TRÌNH ĐƠN GIẢN Bài 3 CẤU TRÚC CHƯƠNG TRÌNH
I MỤC TIÊU
1 Kiến thức:
+ Hiểu chương trình là sự mô tả của thuật toán bằng một ngôn ngữ lập trình
+ Biết cấu trúc của một chương trình đơn giản: cấu trúc chung và các thành phần
+ Biết một số kiểu dữ liệu chuẩn: kiểu nguyên, thực, kí tự, logic và miền con
2 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
+ 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ường
có hai phần
GV: Với quy ước: Các diễn giải bằng ngôn
ngữ tự nhiên được đặt trong cặp < và >
[ ] : Biểu diễn có thể có hoặc không
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ỳ theo
từng chương trình dịch cụ thể
GV: Nêu cấu trúc chung của một chương trình
Pascal đơ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ủa
chương trình
GV: Phần này có thể có hoặc không Với
Pascal, nếu có phải khai báo theo đúng quy
GV: Mỗi ngôn ngữ lập trình thường có sẵn
một số thư viện cung cấp một số chương trình
thông dụng đã được lập sẵn Để sử dụng các
chương trình đó cần khai báo thư viện chứa
nó
GV: Trong Pascal, khai báo thư viện phải luôn
đặt đầu tiên, ngay sau dòng khai báo
program.
GV: Những gía trị xuất hiện nhiều lần trong
chươ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ợi
cho việc chỉnh sửa lại giá trị của hằng trong
toà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 đồ
* 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ạng
3.VÍ DỤ CHƯƠNG TRINH ĐƠN GIẢN
GV giới thiệu các chương trình mẫu cho HS
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ẾN
I MỤC TIÊU
1 Kiến thức:
+ Hiểu chương trình là sự mô tả của thuật toán bằng một ngôn ngữ lập trình
+ Biết cấu trúc của một chương trình đơn giản: cấu trúc chung và các thành phần
+ Biết một số kiểu dữ liệu chuẩn: kiểu nguyên, thực, kí tự, logic và miền con
2 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
+ 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
3 Giảng bài mới:
GV: Những gía trị xuất hiện nhiều lần trong
chươ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ợi
cho việc chỉnh sửa lại giá trị của hằng trong
toà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ạng
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ững
kiểu dữ liệu phức tạp hơn
- Kiểu dữ liệu nào cũng có miền giới hạn của
nó Máy tính không thể lưu 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 cao
- Tuỳ 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 cũng khác nhau
Real 6 2.9e- 39 1.7e38Single 4 1.5e- 45 3.4e- 38Double 8 5.4e- 325 1.7e- 308Extended 10 3.4e- 4932 1.2e4932
3 Kiểu kí tự
- Tn kiểu: Char
- Miền gi trị l cc gi trị trong bảng m ASCII gịm
256 kí tự Mỗi kí tự cĩ 1 m tương ứng trong phạm