Giáo án tin học 11 với toàn bộ các bài kiểm tra và thực hành được soạn đầy đủ, giáo án gồm 3 cột hoạt động của giáo viên, hoạt động của học sinh và nội dung bài dạy Phần các bài kiểm tra được soạn kỹ lưỡng nhất
Trang 1Giáo án tin học 11 CHƯƠNG I – MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH Giáo viên: Lê Hoàn Chân
CHƯƠNG I – MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
§1 – KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
Tiết phân phối chương trình: 1
Ngày soạn: «Ngày_1»
Tuần: 1 - «Tuần_1»
I MỤC TIÊU
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Trình bày được thế nào là chương trình dịch
Phân biệt được thông dịch và biên dịch
2 Kỹ năng
Nhận biết được các môi trường thông dịch và biên dịch
3 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
II PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
III CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
4 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
IV TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
5 Kiểm tra bài cũ: Không kiểm tra
6 Giảng bài mới
Giới thiệu bài mới
Trong chương trình tin học lớp 10 chúng ta đã được tìm hiểu qua về cấu trúc của máy tính, cách giải các bàitoán trong tin học cũng như tìm hiểu cách sử dụng một số ứng dụng cơ bản trên máy tính Trong chươngtrình tin học lớp 11 này chúng ta sẽ được tìm hiểu cụ thể việc xây dựng chương trình máy tính để giải các bàitoán cơ bản trên máy tính Hôm nay chúng ta sẽ bắt đầu tìm hiểu công cụ để chúng ta làm việc đó Ta vào bàimới Khái niệm lập trình và ngôn ngữ lập trình
Tiến trình giảng bài mới
Hoạt động 1: Tìm hiểu chương trình con là gì.
Cho học sinh thảo luận theo nhóm bàn và trả lời
các câu hỏi:
- Nêu các bước giải bài toán trên máy tính?
- Thuật toán được mô tả dưới các dạng nào?
- Nếu muốn diễn tả thuật toán đó cho người
nước ngoài hiểu thì làm cách nào?
- Làm thể nào để diễn tả thuật toán cho máy tính
Chính xác hoá các câu trả lời của học sinh và
giới thiệu khái niệm lập trình Theo dõi, ghi bài
Đặt câu hỏi:
- Ngôn ngữ lập trình có mấy loại?
- Cho ví dụ các ngôn ngữ lập trình?
Trả lời câu hỏi
Chính xác hoá câu trả lời của học sinh và nêu lý
do cần phải có chương trình dịch Lắng nghe, ghi bài
1
Trang 2Giáo án tin học 11 CHƯƠNG I – MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH Giáo viên: Lê Hoàn Chân
Hoạt động 2: Phân loại chương trình dịch
Đặt câu hỏi:
- “Dịch” có nghĩa là gì?
- Có các cách “dịch” nào trong thực tế?
Trả lời câu hỏi
Chương trình dịch có 2 loại:
Biên dịch (Compiler): Dịch toàn bộ chương trình ra một file thực thi và chạy nó
Thông dịch (Interpreter): Dịch và chạy lần lượt từng câu lệnh
Chính xác hoá câu trả lời của học sinh và cho ví
dụ về khái niệm thông dịch và biên dịch trong
thực tế
Lắng nghe
Đặt câu hỏi:
- Chương trình dịch có các loại nào?
- Mỗi loại có đặc điểm ra sao?
Trả lời câu hỏi
Chính xác hoá câu trả lời của học sinh và phân
biệt chương trình thông dịch và chương trình
biên dịch đồng thời cho ví dụ minh hoạ cụ thể
Theo dõi, ghi bài
Giới thiệu các môi trường phát triển ứng dụng
dựa trên chương trình dịch cũng như nhưng dịch
vụ kèm theo mà nó cung cấp
Lắng nghe
Giới thiệu sự kết hợp giữa thông dịch và biên
dịch trong các môi trường phát triển ứng dụng
hiện đại
Theo dõi
7 Củng cố bài
Hỏi học sinh các câu hỏi về những nội dung chính của bài học:
1 Chương trình dịch là gì?
2 Có mấy loại chương trình dịch? Đặc điểm của mỗi loại ra sao?
8 Dặn dò
Dặn dò học sinh về nhà chuẩn bị bài tiếp theo
V RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
3
Trang 3Giáo án tin học 11 CHƯƠNG I – MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH Giáo viên: Lê Hoàn Chân
§2 – CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH
Tiết phân phối chương trình: 2
Ngày soạn: «Ngày_2»
Tuần: 2 - «Tuần_2»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Phân biệt được lỗi cú pháp và lỗi ngữ nghĩa
Trình bày được các loại tên trong ngôn ngữ lập trình
Mô tả được hằng, biến và chú thích trong ngôn ngữ lập trình
9 Kỹ năng
Đặt tên theo đúng các quy tắc cho trước
Nhận biết các tên bị đặt sai
10 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
11 Năng lực hướng tới
Năng lực giải quyết vấn đề: nhận biết các loại tên, xác định đúng các hằng và biến trong bài toán cụ thể
VI PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
VII CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
12 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
VIII TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
13 Kiểm tra bài cũ
Phương pháp kiểm tra: Vấn đáp.
Số học sinh dự kiến sẽ kiểm tra: 1 học sinh.
Câu hỏi kiểm tra
14 Giảng bài mới
Giới thiệu bài mới
Ở bài học trước chúng ta đã tìm hiểu các khái niệm cơ bản về lập trình và ngôn ngữ lập trình Ở bài học hômnay chúng ta sẽ tiếp tục tìm hiểu các thành phần của ngôn ngữ lập trình
Tiến trình giảng bài mới
5
Trang 4Giáo án tin học 11 CHƯƠNG I – MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH Giáo viên: Lê Hoàn Chân
Hoạt động 1: Tìm hiểu các thành phần cơ bản của ngôn ngữ lập trình.
Giới thiệu các thành phần cơ bản của ngôn ngữ
lập trình Lắng nghe 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:
Bảng chữ cái: Là tập các ký hiệu dùng đểviết chương trình
Cú pháp: Là bộ quy tắc dùng để viết chươngtrình
Ngữ nghĩa: Xác định ý nghĩa thao tác cầnthực hiện ứng với tổ hợp ký tự dựa vào ngữcảnh của nó
Cho học sinh thảo luận theo nhóm bàn và trả lời
các câu hỏi:
- Ngôn ngữ tự nhiên có các thành phần này
không?
- Phân biệt cú pháp và ngữ nghĩa?
- Lỗi cú pháp khác gì với lỗi ngữ nghĩa?
Chia nhóm, thảoluận và trả lời câuhỏi
Chính xác hoá câu trả lời của học sinh và cho ví
dụ minh hoạ cú pháp và ngữ nghĩa Theo dõi, ghi bài
Hoạt động 2: Tìm hiểu về các khái niệm cơ bản trong ngôn ngữ lập trình
Giới thiệu khái niệm tên trong ngôn ngữ lập
Tên chuẩn: Là những tên được ngôn ngữ lậptrình dùng với ý nghĩa nào đó trong các thưviện của nó, tuy nhiên người lập trình có thể
sử dụng với ý nghĩa khác
Tên do người lập trình tự đặt: Được xác địnhbằ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
Trong Turbo Pascal: Tên là dãy liên tiếp
không quá 127 ký tự bao gồm chữ cái, chữ số, dấu gạch dưới và bắt đầu bằng chữ cái hoặc dấu gạch dưới.
Cho học sinh thảo luận theo nhóm bàn và trả lời
các câu hỏi:
- Tên dành riêng là gì?
- Cho ví dụ các tên dành riêng trong ngôn ngữ
lập trình Pascal?
- Tên chuẩn khác gì so với tên dành riêng? - Cho
ví dụ tên chuẩn trong ngôn ngữ lập trình Pascal?
- Tên do người dùng tự đặt có thể trùng với tên
chuẩn không? Có thể trùng với tên dành riêng
không?
Chia nhóm, thảoluận và trả lời câuhỏi
Chính xác hoá các câu trả lời của học sinh và
giới thiệu quy tắc đặt tên trong Pascal Theo dõi, ghi bài
Cho một số ví dụ về tên, cho học sinh phân biệt
tên nào đúng, tên nào sai so với quy tắc của
- Cho ví dụ minh hoạ từng loại
Trả lời câu hỏi
Chính xác hoá câu trả lời của học sinh và giới
thiệu khái niệm biến
Lắng nghe, ghi bàiLưu ý: Hằng và biến đều phải có tên và do
người sử dụng đặt, chúng phải được khai báo cụ
thể trước khi sử dụng
Giới thiệu phương pháp đặt tên hằng và biến để
thuận tiện trong việc lập trình và đọc chương
trình
Theo dõi
Giới thiệu khái niệm chú thích Lắng nghe c Chú thích
Chú thích giúp chương trình dễ hiểu hơn vàđược bỏ qua bởi chương trình dịch
Cú pháp chú thích:
Pascal: { } hoặc (* *)C++: /* */ hoặc //
Đặt câu hỏi: Hãy cho biết cú pháp chú thích
trong ngôn ngữ lập trình Pascal và C++ Trả lời câu hỏi
Giới thiệu thêm về tác dụng của chú thích cũng
như tầm quang trọng của nó trong lập trình Lắng nghe, ghi bài
7
Trang 5Giáo án tin học 11 CHƯƠNG I – MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH Giáo viên: Lê Hoàn Chân
15 Củng cố bài
Hỏi học sinh các câu hỏi về những nội dung chính của bài học:
1) Phân biệt lỗi cú pháp và lỗi ngữ nghĩa?
2) Có các loại tên nào trong ngôn ngữ lập trình?
3) Trong các ngôn ngữ lập trình, hằng là gì? Biến là gì? Chú thích là gì?
16 Dặn dò
Dặn dò học sinh về nhà chuẩn bị bài tiếp theo
IX RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
9
Trang 6Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN
§3 – CẤU TRÚC CHƯƠNG TRÌNH
Tiết phân phối chương trình: 3
Ngày soạn: «Ngày_3»
Tuần: 3 - «Tuần_3»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Trình bày được cấu trúc chung của một chương trình
Giải thích được vì sao phần khai báo có thể xuất hiện hoặc không
Mô tả được chức năng của các phần trong một chương trình
17 Kỹ năng
Viết được một chương trình đơn giản
Đọc và sử dụng được các ký hiệu mô tả cú pháp của ngôn ngữ lập trình
18 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
XII TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
20 Kiểm tra bài cũ: Không kiểm tra
21 Giảng bài mới
Giới thiệu bài mới
Ở chương trước chúng ta đã tìm hiểu các khái niệm cơ bản về lập trình Bắt đầu từ chương này chúng ta sẽchính thức bắt tay vào xây dựng các chương trình của chính mình bằng ngôn ngữ lập trình Pascal Chúng taqua chương mới Chương II – Chương trình đơn giản, §3 – Cấu trúc chương trình
Tiến trình giảng bài mới
Hoạt động 1: Tìm hiểu cấu trúc chung.
Giới thiệu cấu trúc chung của chương trình Theo dõi
1 Cấu trúc chung
[<Phần khai báo>]
<Phần thân>
Đặt câu hỏi: Hãy cho biết ý nghĩa của các ký
hiệu < > và [ ] trong cấu trúc trên? Trả lời câu hỏi
Chính xác hoá câu trả lời của học sinh và giải
thích vì sao phần khai báo có thể không xuất
hiện trong một số chương trình
Lắng nghe
Hoạt động 2: Tìm hiểu các thành phần của chương trình
Cho học sinh thảo luận theo nhóm bàn và trả lời
các câu hỏi:
- Phần khai báo gồm các thành phần nào?
- Các thành phần đó có chức năng là gì?
- Dựa vào SGK, cho ví dụ từng thành phần?
- Phần thân chương trình có gì đặc biệt?
- Phần khai báo có thể được đưa vào bên trong
Chia nhóm, thảoluận và trả lời câuhỏi
2 Các thành phần
a Phần khai báo
Tên chương trình: Program ViDu;
Thư viện: Uses CRT;
Hằng: Const Max = 200; Pi = 3.14;
Biến: Var Index: integer;
11
Trang 7Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
phần thân chương trình không?
b Phần thân chương trình
Begin [<Dãy các lệnh>]
End.
Chính xác hoá các câu trả lời của học sinh và
giới thiệu thêm một số thành phần nữa có thể
xuất hiện trong phần khai báo
Theo dõi
Giới thiệu thêm về các ngôn ngữ lập trình hiện
đại đã bỏ đi sự tách biệt giữa phần khai báo và
thân chương trình
Lắng nghe
Hoạt động 3: Ví dụ chương trình đơn giản
Giới thiệu một chương trình Pascal đơn giản Theo dõi
3 Ví dụ chương trình đơn giản
Program ViDu;
Begin Writeln(‘Xin chao cac ban’);
End.
Đặt câu hỏi: Hãy cho biết ý nghĩa của các dòng
Chính xác hoá câu trả lời của học sinh và lưu ý
sự không cần thiết của dòng lệnh khai báo tên
chương trình
Lắng nghe
22 Củng cố bài
Hỏi học sinh các câu hỏi về những nội dung chính của bài học:
1) Một chương trình có các cấu trúc như thế nào?
2) Mô tả các thành phần trong một chương trình?
3) Vì sao phần khai báo không bắt buộc phải có?
23 Dặn dò
Dặn dò học sinh về nhà chuẩn bị bài tiếp theo
XIII RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
13
Trang 8Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
§4 – MỘT SỐ KIỂU DỮ LIỆU CHUẨN
§5 – KHAI BÁO BIẾN
Tiết phân phối chương trình: 4
Ngày soạn: «Ngày_4»
Tuần: 4 - «Tuần_4»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Liệt kê được các kiểu dữ liệu chuẩn
Phân loại được các kiểu dữ liệu chuẩn
Trình bày được cách khai báo biến
24 Kỹ năng
Khai báo biến chính xác tên và kiểu dữ liệu
Nhận biết các cách khai báo biến sai
Tính được bộ nhớ cần sử dụng từ một khai báo biến
25 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
26 Năng lực hướng tới
Năng lực giải quyết vấn đề: biết cách đặt tên và khai báo các biến trong một số bài toán phức tạp, lựa chọnkiểu dữ liệu phù hợp nhất cho từng biến
XIV PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
XV CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
27 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
XVI TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
28 Kiểm tra bài cũ
Phương pháp kiểm tra: Vấn đáp.
Số học sinh dự kiến sẽ kiểm tra: 1 học sinh.
Câu hỏi kiểm tra
1) Một chương trình có các cấu trúc như thế nào?
2) Mô tả các thành phần trong một chương trình?
3) Vì sao phần khai báo không bắt buộc phải có?
29 Giảng bài mới
Giới thiệu bài mới
Ở các bài học trước chúng ta đã tìm hiểu cấu trúc một chương trình và thử viết một chương trình đơn giản Ởbài học hôm nay chúng ta sẽ tìm hiểu các kiểu dữ liệu chuẩn trong Pascal và cách dùng chúng để khai báobiến để sẵn sàng sử dụng trong thân chương trình
Tiến trình giảng bài mới
15
Trang 9Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
Hoạt động 1: Tìm hiểu các kiểu dữ liệu chuẩn.
Giới thiệu các loại dữ liệu chuẩn trong các ngôn
b Kiểu thực
Real 1 byte -1038 → 1038Extended 4 byte -104932 → 104932
Boolean 1 byte True hoặc False
Cho học sinh thảo luận theo nhóm bàn, trả lời
câu hỏi và cử đại diện lên bảng điền vào bảng
- Vì sao cùng một loại dữ liệu mà Pascal hỗ trợ
nhiều kiểu dữ liệu như vậy?
- Hãy cho biết các kiểu dữ liệu này được sử
dụng trong các trường hợp tưng ứng nào?
Chia nhóm, thảoluận, trả lời câu hỏi
và cử đại diện lênbảng điền thông tin
Chính xác hoá câu trả lời của học sinh và giải
thích tầm quan trọng của các kiểu dữ liệu cơ bản
trong lập trình
Theo dõi
Hoạt động 2: Tìm hiểu cách khai báo biến
Đặt câu hỏi: Hãy trình bày cú pháp để khai báo
2 Khai báo biến
Var Index, DoDai: byte;
Count, KetQua: integer;
Tich: real;
Check: boolean;
Cho ví dụ minh hoạ cụ thể các trường hợp khai
báo biến với kiểu dữ liệu và biến khác nhau Theo dõi
Đặt ra các yêu cầu dữ liệu khác nhau, cho học
sinh lên bảng khai báo các biến tương ứng
Lên bảng khai báobiến theo yêu cầuChính xác hoá các câu trả lời của học sinh và
cho học sinh thử tính toán bộ nhớ cần phải sử
dụng với các khai báo biến đó
Tính toán bộ nhớtheo các khai báoLưu ý cách khai báo biến sao cho dễ đọc, dễ
theo dõi, dễ thực hiện khi lập trình Lắng nghe
30 Củng cố bài
Hỏi học sinh các câu hỏi về những nội dung chính của bài học:
1) Kể tên các loại dữ liệu cơ bản và liệt kê các kiểu dữ liệu mà Pascal hỗ trợ cho loại dữ liệu đó?
2) Trình bày cú pháp khai báo biến trong Pascal? Cho ví dụ cụ thể khai báo biến?
31 Dặn dò
Dặn dò học sinh về nhà chuẩn bị bài tiếp theo
XVII RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
17
Trang 10Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
§6 – PHÉP TOÁN, BIỂU THỨC, CÂU LỆNH GÁN (TIẾT 1)
Tiết phân phối chương trình: 5
Ngày soạn: «Ngày_5»
Tuần: 5 - «Tuần_5»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Liệt kê được các phép toán được hỗ trợ trong các ngôn ngữ lập trình bậc cao
Kể tên được các phép toán số học và các hàm chuẩn được Pascal hỗ trợ
Trình bày được sự giống và khác nhau giữa phép toán so sánh và phép toán logic
Mô tả được cú pháp và ý nghĩa câu lệnh gán trong Pascal
32 Kỹ năng
Chuyển đổi được biểu thức toán học trong toán học sang biểu thức toán học trong lập trình và ngược lại
Sử dụng được phép gán để giải một số bài toán đơn giản
33 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
34 Năng lực hướng tới
Năng lực giải quyết vấn đề: có thể lập được biểu thức tính toán trong một bài toán cụ thể
XVIII PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
XIX CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
35 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
XX TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
36 Kiểm tra bài cũ
Phương pháp kiểm tra: Vấn đáp.
Số học sinh dự kiến sẽ kiểm tra: 1 học sinh.
Câu hỏi kiểm tra
1) Trình bày cú pháp khai báo biến trong Pascal?
2) Hãy khai báo các biến theo yêu cầu sau:
- 2 biến nhận các giá trị là số nguyên từ -100 đến 100
- 1 biến nhận giá trị True hoặc False
- 2 biến nhận giá trị là số thực
- 1 biến nhận giá trị là số nguyên không âm < 1000
Đáp án câu hỏi
1) Cú pháp khai báo biến:
Var <Danh sách biến>: <Kiểu dữ liệu>;
<Danh sách biến>: <Kiểu dữ liệu>;
2) Var Num1, Num2: Integer;
Check: Boolean;
R1, R2: Real;
Index: Word;
37 Giảng bài mới
Giới thiệu bài mới
Ở bài học trước chúng ta đã tìm hiểu các kiểu dữ liệu chuẩn cũng như cách khai báo chúng để chuẩn bị sửdụng Ở bài học hôm nay chúng ta sẽ cùng tìm hiểu cách thức sử dụng chúng như thế nào Chúng ta qua bàihọc mới §6 – Phép toán, biểu thức, câu lệnh gán
Tiến trình giảng bài mới
19
Trang 11Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
Hoạt động 1: Tìm hiểu các phép toán trong các ngôn ngữ lập trình bậc cao.
Dẫn dắt: Cũng như toán học, ngôn ngữ lập trình
được tạo ra với mục đích chính là tính toán, bởi
vậy chúng hỗ trợ hầu hết các phép toán cơ bản
trong toán học như phép toán số học, quan hệ,
phép toán logic nào?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và
lưu ý các kiểu dữ liệu trả về của các phép toán Theo dõi
Hoạt động 2: Tìm hiểu các loại hàm và biểu thức trong Pascal
Cho học sinh thảo luận theo nhóm bàn và trả lời
Toán hạng: hằng, biến, số
Toán tử: +, -, *, /, mod, div
Thứ tự thực hiện:
Ưu tiên: ( ) *, / mod, div +,
Thực hiện từ trái sang phải
Không được bỏ qua dấu nhân *
Chính xác hoá các câu trả lời của học sinh và
cho ví dụ minh hoạ các biểu thức trong toán học,
yêu cầu học sinh viết thành các biểu thức số học
biểu diễn trong các ngôn ngữ lập trình
Theo dõi và lênbảng viết kết quả
Chính xoá hoá các kết quả, lưu ý về kiểu dữ liệu
của các biểu thức cũng như nên sử dụng các biến
trung gian để đơn giản hoá các biểu thức phức
tạp
Theo dõi
Đặt vấn đề là một ví dụ về biểu thức toán học
nhưng không thể viết chỉ bởi các phép toán cơ
bản Sự cần thiết của các hàm số học Giới
thiệu cú pháp chung của các hàm số học chuẩn
- Hãy kể tên các hàm số học chuẩn trong Pascal?
- Cho biết ý nghĩa của chúng?
- Các hàm này cho kết quả thuộc kiểu dữ liệu
nào?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và
cho một số ví dụ minh hoạ về sử dụng các hàm
số học chuẩn trong biểu thức
Theo dõi
38 Củng cố bài
Hỏi học sinh các câu hỏi về những nội dung chính của bài học:
21
Trang 12Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
1) Các ngôn ngữ lập trình bậc cao hỗ trợ các phép toán nào?
2) Liệt kê các hàm số học chuẩn trong Pascal và ý nghĩa của nó?
3) Biểu thức so sánh và biểu thức logic có gì giống và khác nhau?
39 Dặn dò
Dặn dò học sinh về nhà chuẩn bị bài tiếp theo
XXI RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
23
Trang 13Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
§6 – PHÉP TOÁN, BIỂU THỨC, CÂU LỆNH GÁN (TIẾT 2)
Tiết phân phối chương trình: 6
Ngày soạn: «Ngày_6»
Tuần: 6 - «Tuần_6»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Liệt kê được các phép toán được hỗ trợ trong các ngôn ngữ lập trình bậc cao
Kể tên được các phép toán số học và các hàm chuẩn được Pascal hỗ trợ
Trình bày được sự giống và khác nhau giữa phép toán so sánh và phép toán logic
Mô tả được cú pháp và ý nghĩa câu lệnh gán trong Pascal
40 Kỹ năng
Chuyển đổi được biểu thức toán học trong toán học sang biểu thức toán học trong lập trình và ngược lại
Sử dụng được phép gán để giải một số bài toán đơn giản
41 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
42 Năng lực hướng tới
Năng lực giải quyết vấn đề: có thể lập được biểu thức tính toán trong một bài toán cụ thể
XXII PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
XXIII CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
43 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
XXIV TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
44 Kiểm tra bài cũ
Phương pháp kiểm tra: Vấn đáp.
Số học sinh dự kiến sẽ kiểm tra: 1 học sinh.
Câu hỏi kiểm tra
1) Trình bày cú pháp khai báo biến trong Pascal?
2) Hãy khai báo các biến theo yêu cầu sau:
- 2 biến nhận các giá trị là số nguyên từ -100 đến 100
- 1 biến nhận giá trị True hoặc False
- 2 biến nhận giá trị là số thực
- 1 biến nhận giá trị là số nguyên không âm < 1000
Đáp án câu hỏi
1) Cú pháp khai báo biến:
Var <Danh sách biến>: <Kiểu dữ liệu>;
<Danh sách biến>: <Kiểu dữ liệu>;
2) Var Num1, Num2: Integer;
Check: Boolean;
R1, R2: Real;
Index: Word;
45 Giảng bài mới
Giới thiệu bài mới
Ở bài học trước chúng ta đã tìm hiểu các kiểu dữ liệu chuẩn cũng như cách khai báo chúng để chuẩn bị sửdụng Ở bài học hôm nay chúng ta sẽ cùng tìm hiểu cách thức sử dụng chúng như thế nào Chúng ta qua bàihọc mới §6 – Phép toán, biểu thức, câu lệnh gán
Tiến trình giảng bài mới
25
Trang 14Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
Hoạt động 1: Tìm hiểu biểu thức so sánh và logic trong Pascal
Giới thiệu và giải thích cú pháp biểu thức so
sánh trong các ngôn ngữ lập trình Theo dõi 4 Biểu thức so sánh
1
Cú pháp:
<BT1> < phép toán so sánh > <BT2>
BT1 và BT2 phải cùng kiểu
Kết quả thuộc kiểu logic (True/False)
VD: 2 > 3 False
Đặt câu hỏi: Hãy cho một số ví dụ minh hoạ về
Lưu ý về kết quả và kiểu dữ liệu của biểu thức
Giới thiệu và giải thích cú pháp biểu thức logic
trong các ngôn ngữ lập trình Theo dõi
5 Biểu thức logic
Cú pháp:
- <BT1> and <BT2>
- <BT1> or <BT2>
- not(BT1)
BT1 và BT2 phải thuộc kiểu logic
Kết quả thuộc kiểu logic (True/False)
VD: Cho 3 số a, b, c Viết điều kiện xác định a,
b, c là độ dài 3 cạnh của 1 tam giác
(a + b > c) and (b + c > a) and (a + c > b)
Đặt câu hỏi: Hãy cho một số ví dụ minh hoạ về
Lưu ý về kết quả và kiểu dữ liệu của biểu thức
logic và sự liên quan chặt chẽ của biểu thức so
sánh và biểu thức logic
Theo dõi
Hoạt động 2: Tìm hiểu câu lệnh gán trong Pascal
Giới thiệu câu lệnh gán trong Pascal Theo dõi
6 Câu lệnh gán
Cú pháp: <Tên biến>≔ <Biểu thức>;
Cho một số ví dụ minh hoạ lệnh gán và hỏi học
sinh ý nghĩa của các lệnh gán đó
Trình bày ý nghĩa các lệnh gán Kết hợp với khai báo biến, trình bày cách giải
toán đơn giản bằng lệnh gán Theo dõi
46 Củng cố bài
Hỏi học sinh các câu hỏi về những nội dung chính của bài học:
1) Các ngôn ngữ lập trình bậc cao hỗ trợ các phép toán nào?
2) Liệt kê các hàm số học chuẩn trong Pascal và ý nghĩa của nó?
3) Biểu thức so sánh và biểu thức logic có gì giống và khác nhau?
47 Dặn dò
Dặn dò học sinh về nhà chuẩn bị bài tiếp theo
XXV RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
1 Ở đây dùng “biểu thức so sánh” và “phép toán so sánh” thay vì “biểu thức quan hệ” và “phép toán quan hệ” như trong SGK vì để tránh nhầm lẫn với các thuật ngữ trong đại số quan hệ (relational algebra) được sử dụng phổ biến trong lý thuyết cơ sở dữ liệu quan hệ
27
Trang 15Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
§7 – CÁC THỦ TỤC CHUẨN VÀO / RA ĐƠN GIẢN
Tiết phân phối chương trình: 7
Ngày soạn: «Ngày_7»
Tuần: 7 - «Tuần_7»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Trình bày được cú pháp của các lệnh nhập dữ liệu từ bàn phím và xuất dữ liệu ra màn hình
Giải thích được sự khác nhau giữa Read và Readln
Giải thích được sự khác nhau giữa Write và Writeln
Nêu được ý nghĩa của lệnh Writeln và Readln không có đối số
Mô tả được phương pháp định dạng dữ liệu khi xuất ra màn hình
48 Kỹ năng
Sử dụng chính xác các câu lệnh nhập xuất theo yêu cầu nhập xuất cho trước
Viết chính xác danh sách đối số trong lệnh xuất
Kết hợp được các lệnh nhập xuất trong chương trình để tăng tính thân thiện với người dùng
49 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
50 Năng lực hướng tới
Năng lực giải quyết vấn đề: nhập/xuất trên nhiều kiểu dữ liệu khác nhau
Năng lực sáng tạo: tạo giao diện đẹp
Năng lực giao tiếp: có văn hóa xuất/nhập dữ liệu
Năng lực sử dụng CNTT-TT: xuất dữ liệu ra có quy cách
XXVI PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
XXVII CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
51 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
XXVIII TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
52 Kiểm tra bài cũ
Phương pháp kiểm tra: Vấn đáp.
Số học sinh dự kiến sẽ kiểm tra: 1 học sinh.
Câu hỏi kiểm tra
1) Các ngôn ngữ lập trình bậc cao hỗ trợ các phép toán nào?
2) Hãy chuyển biểu thức toán học sau thành biểu thức được viết khi lập trình?
Đáp án câu hỏi
1) Các ngôn ngữ lập trình bậc cao hỗ trợ các phép toán:
- Phép toán số học: +, -, *, /, Mod, Div
- Phép toán so sánh: <, >, >=, <=, =, <>
- Phép toán logic: And, Or, Not2) Biểu thức: x ≔ (-b + sqrt(sqr(b) – 4*a*c))/(2*a);
53 Giảng bài mới
Giới thiệu bài mới
Ở bài học trước chúng ta đã tìm hiểu các phép toán, biểu thức và câu lệnh gán trong ngôn ngữ lập trìnhPascal Ở bài học hôm nay chúng ta sẽ học về phương pháp xây dựng một chương trình máy tính hoàn chỉnhbằng ngôn ngữ lập trình Pascal với đầy đủ chức năng nhập dữ liệu, tính toán và xuất kết quả
Tiến trình giảng bài mới
29
Trang 16Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
Hoạt động 1: Tìm hiểu cách nhập dữ liệu từ bàn phím.
Giới thiệu lệnh Read và Readln Theo dõi 1 Nhập dữ liệu từ bàn phím
Read(<danh sách các biến vào>);
Nhập giá trị cho các biến trong danh sách (cácphần tử cách nhau bởi dấu phẩy), mỗi giá trịnhập vào cách nhau bởi dấu cách trắng Tab2hoặc dấu Enter
Readln(<danh sách các biến vào>);
Chức năng giống như lệnh Read, tuy nhiên sẽdừng và chờ dấu Enter trước khi đọc giá trị cácbiến vào
Ví dụ:
Read(a); Readln(b, c); 12_14_15
Readln(a); Readln(b, c); 12 14_15
Đặt câu hỏi:
- Cho biết ý nghĩa của lệnh Read?
- Danh sách các biến vào là gì?
- Khi nhập giá trị, thì các giá trị phân cách bởi
các dấu nào?
- Có gì khác biệt giữa Read và Readln?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và
cho ví dụ minh hoạ cụ thể các sử dụng và sự
khác biệt trong việc sử dụng Read và Readln
Theo dõi
Hoạt động 2: Tìm hiểu cách đưa dữ liệu ra màn hình
Giới thiệu lệnh Write và Writeln Theo dõi
2 Đưa dữ liệu ra màn hình
Write(<danh sách kết quả ra>);
Đưa các giá trị trong danh sách kết quả (cácphần tử có thể là biểu thức, hằng hoặc biến,cách nhau bởi dấu phẩy) ra màn hình
Writeln(<danh sách kết quả ra>);
Chức năng giống như lệnh Write, tuy nhiên sẽđưa con trỏ sang đầu dòng tiếp theo khi kếtthúc lệnh
- Có gì khác biệt giữa Write và Writeln?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và
cho ví dụ minh hoạ cụ thể cách sử dụng và sự
khác biệt giữa Write và Writeln
Theo dõiLưu ý khả năng sai sót khi sử dụng danh sách
các kết quả và chỉ ra phương pháp để ghi danh
sách kết quả một cách hiệu quả và tránh sai sót
54 Củng cố bài
Hỏi học sinh các câu hỏi về những nội dung chính của bài học:
1) Trình bày cú pháp của các câu lệnh nhập xuất trong Pascal và ý nghĩa của nó?
2) Mô tả sự khác nhau giữa Read và Readln, Write và Writeln?
3) Lệnh Writeln và Readln không có đối số thực hiện công việc gì?
4) Mô tả phương pháp định dạng dữ liệu khi xuất ra màn hình?
5) Mô tả môi trường lập trình Turbo Pascal và trình bày quá trình lập trình một chương trình bằng Turbo Pascal?
55 Dặn dò
Dặn dò học sinh về nhà chuẩn bị bài tiếp theo
XXIX RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
2 Bổ sung Tab vào các ký tự dùng để ngăn cách giá trị các biến nhập bởi lệnh Read, nội dung này được tham khảo từ phần giải thíchcác chức năng của câu lệnh Read trong Turbo Pascal (Ctrl + F1)
31
Trang 17Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
§8 – SOẠN THẢO, DỊCH, THỰC HIỆN VÀ HIỆU CHỈNH CHƯƠNG TRÌNH
Tiết phân phối chương trình: 8
Ngày soạn: «Ngày_8»
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
XXXII TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
59 Kiểm tra bài cũ (15 phút)
Phương pháp kiểm tra: Viết.
Số học sinh dự kiến sẽ kiểm tra: Cả lớp
Câu hỏi kiểm tra
1) Hãy cho biết sự khác nhau giữa Read và Readln, Write và Writeln?
2) Viết chương trình tính diện tích hình chữ nhật có chiều rộng và chiều dài được nhập từ bàn phím?
Write(‘Chieu dai = ’); Readln(Dai);
Write(‘Chieu rong = ’); Readln(Rong);
Write(‘Dien tich hinh chu nhat la: ’, Dai * Rong);
Readln End.
60 Giảng bài mới
Giới thiệu bài mới
Ở bài học trước chúng ta đã tìm hiểu các phép toán, biểu thức và câu lệnh gán trong ngôn ngữ lập trìnhPascal Ở bài học hôm nay chúng ta sẽ học về phương pháp xây dựng một chương trình máy tính hoàn chỉnhbằng ngôn ngữ lập trình Pascal với đầy đủ chức năng nhập dữ liệu, tính toán và xuất kết quả
Tiến trình giảng bài mới
33
Trang 18Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
Hoạt động 1: Tìm hiểu môi trường lập trình Turbo Pascal thông qua ví dụ một chương trình cụ thể và một số
trường hợp đặc biệt của câu lệnh nhập và xuất.
Giới thiệu môi trường lập trình Turbo Pascal Theo dõi §8 – Soạn thảo, dịch, thực hiện và hiệu
chỉnh chương trình
Turbo Pascal
- Lưu chương trình: F2
- Mở chương trình có trong đĩa: F3
- Biên dịch lỗi cú pháp: bấm Alt+F9
- Đóng cửa sổ soạn thảo: bấm Alt+F3
- Thoát khỏi Turbo Pascal: Alt+X
Ví dụ:
Var a, b, c: Integer;
Begin Writeln(‘Nhap lan luot a, b, c’);
Readln(a, b, c);
Write(‘a + b = ’, a, ‘ + ’, b, ‘ = ’, a + b); Writeln;
Writeln(‘b/c = ’, b, ‘/’,c, ‘ = ’, b/c:0:23); Readln;
End
Readln; - Chờ phím Enter được nhấn
Writeln; - Đưa con trỏ xuống dòng mới
Định dạng dữ liệu xuất ra:
- Khởi động, thoát Turbo Pascal
- Soạn thảo một ví dụ nhập xuất đơn giản
- Lưu, mở chương trình
- Biên dịch, chạy chương trình
Giới thiệu một số trường hợp đặc biệt của các
lệnh nhập xuất như Writeln và Readln không có
tham số, định dạng dữ liệu xuất ra
Quan sát và ghichép lại các thaotác của giáo viên
Cho học sinh thảo luận theo nhóm bàn, quan sát
quá trình diễn trình làm mẫu và trả lời các câu
hỏi:
- Khởi động Turbo Pascal bằng cách nào?
- Mô tả quá trình lập trình bằng Turbo Pascal?
- Trình bày các phím tắt thường dùng trong
Pascal và công dụng của nó?
- Lệnh Readln và Writeln không có tham số
được sử dụng trong trường hợp nào?
- Khi nào cần phải định dạng dữ liệu xuất ra?
Thảo luận nhóm vàtrả lời các câu hỏi
Chính xác hoá các câu trả lời của học sinh và
giới thiệu một số môi trường lập trình Pascal
khác (Free Pascal, V-Pascal, PascalGUI…)
Theo dõi
61 Củng cố bài
Hỏi học sinh các câu hỏi về những nội dung chính của bài học:
1) Trình bày cú pháp của các câu lệnh nhập xuất trong Pascal và ý nghĩa của nó?
2) Mô tả sự khác nhau giữa Read và Readln, Write và Writeln?
3) Lệnh Writeln và Readln không có đối số thực hiện công việc gì?
4) Mô tả phương pháp định dạng dữ liệu khi xuất ra màn hình?
5) Mô tả môi trường lập trình Turbo Pascal và trình bày quá trình lập trình một chương trình bằng Turbo Pascal?
62 Dặn dò
Dặn dò học sinh về nhà chuẩn bị bài tiếp theo
XXXIII RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
3 Ở đây dùng định dạng :0:2 nhằm mục đích chỉ định dạng số lượng chữ số thập phân là 2 còn các chữ số phần nguyên thì để kiểuđịnh dạng mặc định
35
Trang 19Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
BÀI TẬP VÀ THỰC HÀNH 1
Tiết phân phối chương trình: 9
Ngày soạn: «Ngày_9»
Tuần: 9 - «Tuần_9»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Trình bày được các bước tiến hành giải một bài toán đơn giản
Mô tả được các bước thực hiện lập trình trên môi trường Turbo Pascal
63 Kỹ năng
Phân tích được đầu ra, đầu vào và các bước tiến hành giải một bài toán đơn giản
Lựa chọn được kiểu dữ liệu cho các biến một cách hợp lí
Thực hiện được việc soạn thảo, lưu trữ, dịch và thực hiện chương trình
Thực hiện được quá trình kiểm tra, xác định và gỡ lỗi bằng các công cụ có sẵn
64 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
XXXIV PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
XXXV CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
65 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
XXXVI TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
66 Kiểm tra bài cũ:
Phương pháp kiểm tra: Vấn đáp.
Số học sinh dự kiến sẽ kiểm tra: 2 học sinh (mỗi học sinh trả lời 1 câu hỏi).
Câu hỏi kiểm tra
1) Viết chương trình tính tuổi một người khi biết năm sinh và năm hiện tại?
2) Viết chương trình tính số tiền phải trả khi biết giá đơn hàng và số tiền khách đưa?
Đáp án câu hỏi
1) Chương trình:
Var NamSinh, HienTai: Word;
Begin Writeln(‘Chuong trinh tinh tuoi!’);
Write(‘Nam sinh: ’); Readln(NamSinh);
Write(‘Nam hien tai: ’); Readln(HienTai);
Write(‘Tuoi tinh duoc la: ’, HienTai - NamSinh);
Readln End.
2) Chương trình:
Var GiaDonHang, TienKhachDua: Word;
Begin Writeln(‘Chuong trinh tinh tien!’);
Write(‘Gia don hang: ’); Readln(GiaDonHang);
Write(‘Tien khach dua: ’); Readln(TienKhachDua);
Write(‘So Tien: ’, TienKhachDua - GiaDonHang);
Readln End.
67 Giảng bài mới
Giới thiệu bài mới
Ở các bài học trước chúng ta đã tìm hiểu các thành phần cơ bản nhất của các chương trình Pascal cũng nhưmôi trường để lập trình nên chúng Bài học hôm nay chúng ta sẽ tự tay lập trình nên chương trình của chínhmình
Tiến trình giảng bài mới
37
Trang 20Giáo án tin học 11 CHƯƠNG II – CHƯƠNG TRÌNH ĐƠN GIẢN Giáo viên: Lê Hoàn Chân
Hoạt động 1: Tìm hiểu và phân tích bài toán.
- Đầu ra và đầu vào của chương trình là gì?
- Chương trình cần sử dụng các biến nào?
- Các biến đó sẽ cần thuộc kiểu dữ liệu nào?
- Trình bày các bước giải bài toán?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và
trình bày cụ thể hướng giải bài toán Theo dõi
Hoạt động 2: Tìm hiểu cách khai báo biến
Giới thiệu mã nguồn tối giản của chương trình Theo dõi
hỗ trợ từ giáo viênnếu gặp khó khăn
Theo dõi quá trình thực hành, hướng dẫn những
học sinh gặp khó khăn Lưu ý việc trình bày
chương trình và sử dụng dấu chấm phẩy để ngăn
cách các lệnh
Cho học sinh chạy thử và nhận xét độ thân thiện
với người dùng của chương trình
Chạy thử chươngtrình và nhận xétCho học sinh sửa lại chương trình sao cho thân
thiện hơn với người dùng:
Sử dụng thêm thư viện Crt và lệnh Clrscr
-Dùng Write và Writeln để thông báo
- Định dạng kết quả S xuất ra
Sửa chương trìnhtheo hướng dẫnTheo dõi và gợi ý sửa đổi chương trình
Cho học sinh tiến hành kiểm thử chương trình
bằng các bộ test: 3,4,56; 5,5,612; 5;5;812;
4,13,1524; 10,13,13;60…
Kiểm thử chươngtrình
68 Củng cố bài
Nhận xét tiết thực hành và nhắc lại phương pháp phân tích và giải các bài toán, cách sử dụng Write và Clrscr đểxây dựng chương trình thân thiện với người dùng, cách kiểm tra và gỡ lỗi chương trình
69 Dặn dò
Dặn dò học sinh về nhà xem trước các câu hỏi và bài tập ở trang 35 + 36, chuẩn bị cho tiết bài tập tiếp theo
XXXVII RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
39
Trang 21Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶP
§9 – CẤU TRÚC RẼ NHÁNH
Tiết phân phối chương trình: 10
Ngày soạn: «Ngày_10»
Tuần: 10 - «Tuần_10»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Trả lời được câu hỏi vì sao cần sử dụng cấu trúc rẽ nhánh trong lập trình
Trình bày được cú pháp lệnh If trong Pascal
Mô tả được các dạng của lệnh If
Nêu được cách chương trình xử lý khi chạy lệnh If
Giải thích được lý do cần sử dụng câu lệnh ghép
70 Kỹ năng
Viết được một chương trình đơn giản có sử dụng câu lệnh If
Sử dụng được tất cả các dạng của lệnh If để điều hướng xử lý cho chương trình
Tránh được một số lỗi thường gặp khi viết lệnh If
71 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
72 Năng lực hướng tới
Năng lực giải quyết vấn đề: Mô hình hóa các tình huống thực tiễn xảy ra phụ thuộc vào điều kiện theo cấutrúc rẽ nhánh trong tin học
Năng lực sáng tạo: HS vận dụng câu lệnh rẽ nhánh dạng If-Then kết hợp với các lệnh khác đã học để viếtđược chương trình hoàn chỉnh
Năng lực sử dụng CNTT-TT: diễn tả thuật toán cấu trúc rẽ nhánh trên ngôn ngữ lập trình
XXXVIII PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
XXXIX CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
73 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
XL TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
74 Kiểm tra bài cũ
Phương pháp kiểm tra: Vấn đáp.
Số học sinh dự kiến sẽ kiểm tra: 2 học sinh (mỗi học sinh trả lời 1 câu hỏi).
Câu hỏi kiểm tra
1) Viết chương trình tính diện tích và chu vi hình tròn với bán kính được nhập từ bàn phím?
2) Viết chương trình tính cạnh huyền của tam giác vuông với 2 cạnh góc vuông được nhập từ bàn phím?
Đáp án câu hỏi
1) Chương trình:
Var R: Real;
Begin Writeln(‘Chuong trinh dien tich hinh tron ban kinh R!’);
Write(‘Nhap R = ’); Readln(R);
Write(‘Dien tich hinh tron la: ’, R*R*Pi:0:2);
Write(‘Chu vi hinh tron la: ’, 2*R*Pi:0:2);
Readln End.
41
Trang 22Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
2) Chương trình:
Var a, b: Word;
Begin Writeln(‘Chuong trinh tinh canh huyen tam giac vuong!’);
Write(‘Canh goc vuong thu nhat a = ’); Readln(a);
Write(‘Canh goc vuong thuc hai b = ’); Readln(b);
Write(‘Do dai canh huyen c = ’, sqrt(a*a + b*b):0:2);
Readln End.
75 Giảng bài mới
Giới thiệu bài mới
Như vậy chúng ta đã có thể viết được một chương trình Pascal cơ bản với phần nhập, xuất và tính toán đơngiản Tuy nhiên một số trường hợp chúng ta cần thực hiện các câu lệnh theo một điều kiện cho trước chẳnghạn như kiểm tra nếu như người dùng nhập dữ liệu đầu và đúng thì mới thực hiện tính toán Ở bài học hômnay chúng ta sẽ học cách làm điều đó Chúng ta qua bài mới §9 – Cấu trúc rẽ nhánh
Tiến trình giảng bài mới
Hoạt động 1: Tìm hiểu cấu trúc rẽ nhánh.
Nhắc lại cấu trúc rẽ nhánh đã được tiếp xúc khi
1 Cấu trúc rẽ nhánh
Cấu trúc rẽ nhánh là cấu trúc cho phép ngônngữ lập trình lựa chọn thao tác cần thực hiệndựa vào 1 điều kiện cho trước
Dạng thiếu: Nếu … thì …
Dạng đủ: Nếu… thì…, nếu không thì…
Đặt câu hỏi:
- Cấu trúc rẽ nhánh có các dạng nào?
- Hãy đặt câu có mệnh đề nếu … thì …?
- Hãy đặt câu có mệnh đề nếu … thì … nếu
không thì …?
- Thành phần nằm giữa nếu và thì là gì?
- Thành phần nằm phía sau thì là gì?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và
nhấn mạnh lý do vì sao cần phải sử dụng cấu
trúc rẽ nhánh trong lập trình
Theo dõi
Hoạt động 2: Tìm hiểu câu lệnh If
Giới thiệu cú pháp của câu lệnh If
else Writeln(‘S = ’, R*R*Pi:0:2);
Cho một ví dụ cụ thể về cách sử dụng lệnh if
trong việc kiểm tra dữ liệu đầu vào
Cho 2 học sinh lên bảng, viết câu lệnh if tìm ra
số bé nhất trong 2 số bằng 2 dạng của lệnh If
Lên bảng viết câulệnh theo yêu cầu
Chính xác hoá các đáp án của học sinh và đặt
câu hỏi: Có thể dùng một lệnh If dạng thiếu để
tìm được số bé nhất trong 2 số không?
Theo dõi
Giới thiệu cách sử dụng một lệnh if dạng thiếu
để giải quyết bài toán tìm số bé nhất trong 2 số
lưu ý về sự linh hoạt khi sử dụng các cú pháp
của lệnh if theo các trường hợp tu duy khác nhau
Lắng nghe Ví dụ: Tìm số bé hơn trong 2 số a và b
If a < b then min≔ a;
If b <= a then min≔ b;
Hoặc
If a < b then min≔ a else min≔ b;
4 Ở đây bổ sung thêm điều kiện có thể là hằng hoặc biến logic để tránh cho học sinh hiểu lầm rằng điều kiện chỉ có thể là biểu thứclogic và hiểu rõ hơn cấu trúc lệnh If
43
Trang 23Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
If a > c then Max≔ a else Max≔ c;
Lưu ý: Câu lệnh trước từ khoá else không
Nhắc lại cú pháp của lệnh If, lưu ý và giải thích
vì sao câu lệnh trước từ khoá else không kết thúc
bằng dấu chấm phẩy
Lắng nghe
Giới thiệu định nghĩa câu lệnh ghép và giải thích
lý do vì sao cần tạo ra câu lệnh ghép The dõi
- Hãy chỉ ra và giải thích sự khác biệt giữa cặp
từ khoá Begin … End dùng để đánh dấu thân
chương trình và câu lệnh ghép?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và
cho ví dụ minh hoạ cụ thể việc sử dụng câu lệnh
ghép trong lệnh If
Theo dõi
Hoạt động 3: Luyện tập sử dụng câu lệnh If
Giới thiệu bài toán ở ví dụ 1: giải phương trình
Write(‘b = ’); Readln(b);
If a <> 0 then Writeln(‘X = ’, -b/a:0:2) else
If b <> 0 then Writeln(‘Vo nghiem’) else
Writeln(‘Nghiem tuy y’);
End.
Ví dụ 2: Tìm số ngày của một năm
Var Nam: Word;
DK1, DK2: Boolean;
Begin Write(‘Nhap vao 1 nam: ’);
else Writeln(‘Nam ’, Nam, ‘co 365 ngay’);
- Cần khai báo các biến nào?
- Hãy trình bày hướng giải quyết bài toán?
Chia nhóm, thảoluận và trả lời cáccâu hỏi
Chính xác hoá các câu trả lời của học sinh và
cho một học sinh lên bảng viết chương trình
Lắng nghe và lênbảng viết chươngtrình
Kiểm tra, sửa lỗi và đánh giá bài làm của học
Giới thiệu bài toán ở ví dụ 2: tìm số ngày của
Cho học sinh thảo luận theo nhóm bàn và trả lời
các câu hỏi:
- Xác định dữ liệu đầu vào và đầu ra?
- Có các loại năm nào? Làm sao để xác định
được nó?
Chia nhóm, thảoluận và trả lời cáccâu hỏi
Chính xác hoá các câu trả lời của học sinh, giải
thích thêm từ đâu có công thức tính năm nhuận
và giới thiệu mã nguồn của chương trình Theo dõi
Giới thiệu phương pháp dùng biến trung gian để
đơn giản hoá biểu thức điều kiện trong lệnh If
76 Củng cố bài
Hỏi học sinh các câu hỏi về những nội dung chính của bài học:
1) Vì sao cần sử dụng cấu trúc rẽ nhánh trong lập trình?
2) Hãy trình bày cú pháp của lệnh If?
3) Câu lệnh ghép là gì? Khi nào ta cần sử dụng nó?
77 Dặn dò
Dặn dò học sinh về nhà chuẩn bị bài tiếp theo
45
Trang 24Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
XLI RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
47
Trang 25Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
BÀI TẬP VÀ THỰC HÀNH 2 (TIẾT 1)
Tiết phân phối chương trình: 11
Ngày soạn: «Ngày_11»
Tuần: 11 - «Tuần_11»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Mô tả được phương pháp gỡ lỗi chương trình bằng cách chạy từng bước
Trình bày được cách theo dõi giá trị các biến khi tiến hành gỡ lỗi từng bước
78 Kỹ năng
Viết được một chương trình đơn giản có sử dụng câu lệnh If
Đưa ra được lựa chọn có sử dụng biến trung gian hay không khi viết biểu thức điều kiện cho lệnh If
Sử dụng được công cụ gỡ lỗi từng bước để kiểm tra chương trình
Theo dõi được giá trị các biến khi tiến hành gỡ lỗi từng bước
79 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
XLII PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
XLIII CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
80 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
XLIV TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
81 Kiểm tra bài cũ
Phương pháp kiểm tra: Vấn đáp.
Số học sinh dự kiến sẽ kiểm tra: 2 học sinh (mỗi học sinh trả lời 1 câu hỏi).
Câu hỏi kiểm tra
1) Viết chương trình nhập vào 2 số nguyên dương, kiểm tra xem chúng có bằng nhau không, nếu không thìcho biết số nào lớn hơn?
2) Viết chương trình nhập vào 2 số nguyên dương, kiểm tra xem có số nào là ước của số còn lại không?
Đáp án câu hỏi
1) Chương trình:
Var a, b: Word;
Begin Writeln(‘Chuong trinh so sanh 2 so!’);
Write(‘Nhap a = ’); Readln(a);
Write(‘Nhap b = ’); Readln(b);
If a = b then Write(‘Hai so bang nhau’) else
If a > b then Write(a, ‘ lon hon ’, b) else
Write(b, ‘ lon hon ’, a);
Readln End.
2) Chương trình:
Var a, b: Word;
Begin Writeln(‘Chuong trinh kiem tra uoc so!’);
49
Trang 26Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
51
Trang 27Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
82 Giảng bài mới
Giới thiệu bài mới
Ở bài học trước chúng ta đã tìm hiểu về câu lệnh rẽ nhánh để điều khiển hướng xử lý của chương trình Ở bàithực hành hôm nay chúng ta sẽ dùng câu lệnh rẽ nhánh này xây dựng một bài toán kiểm tra số đơn giản vàtìm hiểu cách sử dụng công cụ gỡ lỗi từng bước của Pascal
Tiến trình giảng bài mới
Hoạt động 1: Xây dựng chương trình có cấu trúc rẽ nhánh.
Giới thiệu bài toán bộ số Pi-ta-go Lắng nghe
Bài toán: Viết chương trình kiểm tra xem 3
số a, b, c có là bộ số Pi-ta-go (bộ số có thể là 3cạnh 1 tam giác vuông) không?
Ý tưởng: kiểm tra có đẳng thức nào trong 3
đẳng thức sau xảy ra không:
Write(‘Khong la bo so Pitago’);
End.
Đặt câu hỏi:
- Cho biết đầu ra và đầu vào của bài toán?
- Làm thế nào để kiểm tra 3 số a, b, c có là bộ số
Pi-ta-go hay không?
Trả lời câu hỏi
Cho một học sinh lên bảng chuyển 3 đẳng thức
kiểm tra sang dạng biểu thức logic
Lên bảng viết biểuthức
Chính xác hoá đáp án của học sinh và đặt tên
cho 3 biểu thức logic (DK1, DK2, DK3) Theo dõi
Đặt câu hỏi:
- Bộ số Pi-ta-go sẽ thoả mãn cả 3 biểu thức hay
chỉ thoả mãn 1 biểu thức logic trên?
- Như vậy câu lệnh If cần phải viết là gì?
Trả lời câu hỏi, lênbảng viết câu lệnhIf
Giới thiệu mã nguồn hoàn chỉnh của chương
trình và hướng dẫn học sinh thực hành:
- Mở Turbo Pascal
- Gõ mã nguồn vào
- Lưu (F2) chương trình
- Kiểm tra chương trình (Alt +F9)
- Sửa lỗi (nếu có)
- Chạy chương trình
- Kiểm thử chương trình
Theo dõi mã nguồn
và tiến hành thựchành theo hướngdẫn, nhờ giáo viêntrợ giúp nếu gặpkhó khăn
Giải đáp thắc mắc của học sinh (nếu có)
Hoạt động 2: Làm quen với việc hiệu chỉnh chương trình
Diễn trình làm mẫu phương pháp gỡ lỗi theo
từng dòng lệnh và sử dụng cửa sổ Watch để theo
dõi giá trị các biến khi gỡ lỗi
Theo dõi từng bướcthực hiện và ghi lạicác thao tác
Gỡ lỗi từng dòng lệnh và theo dõi giá trị
Write(‘a = ’); Readln(a);
Write(‘b = ’); Readln(b);
Write(‘c = ’); Readln(c);
If (a*a = b*b + c*c) or (b*b = a*a + c*c) or (c*c = b*b + a*a) then Write(‘La bo so Pitago’) else
Write(‘Khong la bo so Pitago’);
End
Cho học sinh thực hành gỡ lỗi từng dòng lệnh và
theo dõi giá trị các biến DK1, DK2, DK3
Gỡ lỗi chươngtrình theo hướngdẫn
Đặt câu hỏi:
- Nếu không sử dụng các biến trung gian DK1,
DK2, DK3 thì biểu thức logic dùng trong lệnh If
sẽ là gì?
- Hãy nhận xét chương trình khi dùng và không
dùng biến trung gian?
Trả lời câu hỏi
Cho học sinh tiến hành:
- Sửa đổi chương trình không cần dùng các biến
trung gian
- Tiến hành gỡ lỗi từng bước và theo dõi biểu
thức trong lệnh If bằng cách nhập trực tiếp biểu
thức vào cửa sổ Watch
Sửa đổi lệnh If và
gỡ lỗi chương trìnhtheo hướng dẫn
83 Củng cố bài
53
Trang 28Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
Hỏi học sinh các câu hỏi về những nội dung chính của bài học:
1) Việc sử dụng các biến trung gian trong chương trình có tác dụng gì?
2) Vì sao cần phải tiến hành gỡ lỗi theo từng bước và theo dõi giá trị các biến?
84 Dặn dò
Dặn dò học sinh về nhà chuẩn bị bài tiếp theo
XLV RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
55
Trang 29Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
ÔN TẬP
Tiết phân phối chương trình: 12
Ngày soạn: «Ngày_12»
Tuần: 12 - «Tuần_12»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Trình bày được một số khái niệm đơn giản
Mô tả được cấu trúc chương trình Pascal
Trình bày được cú pháp các lệnh nhập, xuất, khai báo biến, gán biến, câu lệnh If
Nêu được phương pháp sử dụng môi trường lập trình Turbo Pascal
85 Kỹ năng
Đặt tên đúng và khai báo biến phù hợp với nhu cầu sử dụng
Phân biệt được các dạng của những thủ tục chuẩn vào ra
Viết được các biểu thức toán học, logic từ mẫu cho trước
Viết được chương trình Pascal đơn giản
86 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
XLVI PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
XLVII CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
87 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
XLVIII TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
88 Kiểm tra bài cũ
Phương pháp kiểm tra: Vấn đáp.
Số học sinh dự kiến sẽ kiểm tra: 2 học sinh (mỗi học sinh trả lời 1 câu hỏi).
Câu hỏi kiểm tra
1) Viết chương trình tính diện tích và chu vi hình tròn với bán kính được nhập từ bàn phím?
2) Viết chương trình tính cạnh huyền của tam giác vuông với 2 cạnh góc vuông được nhập từ bàn phím?
Đáp án câu hỏi
1) Chương trình:
Var R: Real;
Begin Writeln(‘Chuong trinh dien tich hinh tron ban kinh R!’);
Write(‘Nhap R = ’); Readln(R);
Write(‘Dien tich hinh tron la: ’, R*R*Pi:0:2);
Write(‘Chu vi hinh tron la: ’, 2*R*Pi:0:2);
Readln End.
2) Chương trình:
Var a, b: Word;
Begin Writeln(‘Chuong trinh tinh canh huyen tam giac vuong!’);
Write(‘Canh goc vuong thu nhat a = ’); Readln(a);
Write(‘Canh goc vuong thuc hai b = ’); Readln(b);
Write(‘Do dai canh huyen c = ’, sqrt(a*a + b*b):0:2);
Readln End.
57
Trang 30Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
89 Giảng bài mới
Giới thiệu bài mới
Như vậy chúng ta đã có thể viết được một chương trình Pascal cơ bản với phần nhập, xuất và tính toán đơngiản Tuy nhiên một số trường hợp chúng ta cần thực hiện các câu lệnh theo một điều kiện cho trước chẳnghạn như kiểm tra nếu như người dùng nhập dữ liệu đầu và đúng thì mới thực hiện tính toán Ở bài học hômnay chúng ta sẽ học cách làm điều đó Chúng ta qua bài mới §9 – Cấu trúc rẽ nhánh
Tiến trình giảng bài mới
Hoạt động 1: Nhắc lại các khái niệm cơ bản.
Đặt câu hỏi:
- Chương trình dịch là gì?
- So sánh thông dịch và biên dịch?
- Nêu các thành phần của NNLT?
- So sánh lỗi cú pháp và lỗi ngữ nghĩa?
- Chương trình có cấu trúc như thế nào?
- Ngôn ngữ lập trình Pascal hỗ trợ các kiểu dữ
liệu chuẩn nào?
- Khai báo biến trong Pascal như thế nào?
- Pascal hỗ trợ các phép toán, các biểu thức và
câu lệnh gán như thế nào?
- Trình bày các thủ tục chuẩn vào ra của Pascal?
- Trong Pascal câu lệnh If có cấu trúc như thế
nào?
- Hãy nêu những thao tác quan trọng trong môi
trường lập trình Turbo Pascal
Trả lời câu hỏi
Các khái niệm cơ bản:
- Chương trình dịch, thông dịch, biên dịch
- Các thành phần của ngôn ngữ lập trình, lỗi cúpháp và lỗi ngữ nghĩa
- Cấu trúc chương trình
- Các kiểu dữ liệu chuẩn
- Cách khai báo biến
- Phép toán, biểu thức, câu lệnh gán
- Các thủ tục chuẩn vào ra
- Câu lệnh If
- Môi trường lập trình Turbo Pascal
Chuẩn hoá các câu trả lời và nhấn mạnh các đặc
điểm quan trọng cần nhớ Theo dõi, ghi bài
Hoạt động 2: Nhắc lại một số lưu ý và kỹ thuật lập trình
Cho học sinh xem các đoạn chương trình tối ưu
và chưa tối ưu, trình bày tốt cũng như các thành
phần không cần thiết
Rút ra các lư ý cần thiết khi lập trình
Theo dõi, ghi bài
- Phần khai báo tên chương trình không nhấtthiết phải có
- Phần sử dụng thư viện Crt và lệnh Clrscr đểxoá màn hình không nhất thiết phải có
- Cần thụt lề các lệnh trong Block (Bắt đầubằng begin, kết thúc bằng end) để dễ đọc
- Cần khái báo biến đúng kiểu dữ liệu, tiếtkiện bộ nhớ càng tốt
- Nên sử dụng Readln thay thì Read
- Sử dụng Write và Readln để giúp người dùngnhập dữ liệu dễ dàng và thân thiện
- Nên sử dụng các biến trung gian để đơn giảnhoá các biểu thức dài và phức tạp
- Cần thụt lề các lệnh con của If để tránh nhầmlẫn
- Không sử dụng dấu chấm phẩy đối với câulệnh trước else
59
Trang 31Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
90 Củng cố bài
Hỏi học sinh các câu hỏi trắc nghiệm, ôn tập lại toàn bộ kiến thức cũ:
Câu 1: Dùng hàm số học chuẩn biểu diễn biểu thức sau
đây trong Pascal:
Câu 4: Giả sử x và y là hai biến nguyên điều kiện xác định
x và y đồng thời chia hết cho 5 là:
A (x mod 5 <> 0) or (y mod 5 <> 0)
B (x mod 5 <> 0) and (y mod 5 <> 0)
C (x mod 5 = 0) or (y mod 5 = 0)
D (x mod 5 = 0) and (y mod 5 = 0)
Câu 5: Trong các khai báo sau khai báo nào sai?
A Program _PTB2; B Program TP2;
C Program PT_B2; D Program PT B2;
Câu 6: Cho x ≔ 12.41235 Để hiện lên màn hình nội dung
"x = 12.41" cần dùng câu lệnh nào sau đây?
Câu 8: Trong các khai báo sau khai báo nào đúng:
A Const Min : 50; B Const Min = 50;
C Const Min ≔ 50 D Const Min ≔ 50;
Câu 9: Biểu thức nào có giá trị TRUE?
D Sin x * Sin x + cos x * cos x = 1
Câu 11: Khai báo nào sau đây là khai báo đúng?
A Var X, Y: Real; B Var X, Y: Real
C Var X, Y = Real; D Var X, Y = Real
Câu 12: Để nhập giá trị cho hai biến a và b từ bàn phím ta
dùng lệnh:
A Read ('a, b'); B Readln (a, b);
C Real (a, b); D Write (a, b);
Câu 13: 2 < x < 5 được biểu diễn trong Pascal là:
A (x > 2) and (x < 5) B 2 < x < 5
C (x < 2) and (x < 5) D (2 < x) and (x > 5) Câu 14: Cú pháp là:
A Tập các kí hiệu được viết trong chương trình.
B Bộ quy tắc để viết chương trình.
C Tập các kí hiệu được dùng trong bảng chữ cái.
D Ý nghĩa của câu lệnh cần thực hiện.
Câu 15: Trong Pascal, cho đoạn chương trình:
Begin a≔ 3;
B Còn được gọi là từ khóa.
C Là tên được ngôn ngữ lập trình quy định dùng với ý
Câu 19: Hãy cho biết giá trị của a, b sau thi thực hiện đoạn
Dặn dò học sinh về nhà học bài cẩn thận, tiết sau kiểm tra 1 tiết
XLIX RÚT KINH NGHIỆM
61
Trang 32Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
63
Trang 33Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
KIỂM TRA 1 TIẾT
Tiết phân phối chương trình: 13
Ngày soạn: «Ngày_13»
Nhận biết được các khái niệm cơ bản trong lập trình
Phân biệt được các nhận xét, đúng, sai về những đối tượng, khái niệm cơ bản
Đọc hiểu được các chương trình Pascal cơ bản
Lập trình được chương trình Pascal đơn giản có sử dụng câu lệnh IF
2 Thái độ
Rèn luyện tính cẩn thận, chính xác
Nghiêm túc, tuân thủ nội quy kiểm tra
I PHƯƠNG PHÁP DẠY HỌC
Kiểm tra 1 tiết có 70% trắc nghiệm khách quan và 30% tự luận
II CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
C Ngôn ngữ bậc cao D Ngôn ngữ máy và hợp ngữ.
Câu 2: Biến x cần nhận được giá trị số nguyên tối đa là
2x109, khai báo x với kiểu dữ liệu nào sau đây là phù
hợp?
A Integer B Boolean C Real D LongInt
Câu 3: Biểu thức 7 div 2 + 5 mod 3 * 2 – 1 cho kết quả:
Câu 7: Giả sử x và y là hai biến nguyên điều kiện xác định
x và y đồng thời chia hết cho 5 là:
A (x mod 5 <> 0) or (y mod 5 <> 0)
B (x mod 5 <> 0) and (y mod 5 <> 0)
C (x mod 5 = 0) or (y mod 5 = 0)
D (x mod 5 = 0) and (y mod 5 = 0)
Câu 8: Chọn phát biểu sai:
A Chương trình không chạy được nếu mắc lỗi cú pháp.
B Chương trình vẫn chạy được nếu mắc lỗi ngữ nghĩa.
C Chương trình tính ra đáp số sai khi mắc lỗi cú pháp.
D Chương trình tính ra đáp số sai khi mắc lỗi ngữ nghĩa Câu 9: Trong các khai báo sau khai báo nào sai?
A Program _PTB2; B Program TP2;
C Program PT_B2; D Program PT B2;
Câu 10: Cho x≔ 12.41235 Để hiện lên màn hình nội dung
"x = 12.41" cần dùng câu lệnh nào sau đây?
Trang 34Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
Câu 12: Trong các khai báo sau khai báo nào đúng:
A Const Min : 50; B Const Min = 50;
C Const Min ≔ 50 D Const Min ≔ 50;
Câu 13: Chương trình dịch không có khả năng nào?
A Phát hiện lỗi ngữ nghĩa.
B Phát hiện lỗi cú pháp.
C Thông báo lỗi cú pháp.
D Tạo được chương trình dịch.
Câu 14: Biểu thức nào có giá trị TRUE?
D Sin x * Sin x + cos x * cos x = 1
Câu 16: Khai báo nào sau đây là khai báo đúng?
A Var X, Y: Real; B Var X, Y: Real
C Var X, Y = Real; D Var X, Y = Real
Câu 17: Chọn câu trả lời đúng:
A Chương trình sẽ trực tiếp chạy được nếu viết bằng ngôn
A Read (‘a, b’); B Readln (a, b);
C Real (a, b); D Write (a, b);
Câu 19: Cú pháp là:
A Tập các kí hiệu được viết trong chương trình.
B Bộ quy tắc để viết chương trình.
C Tập các kí hiệu được dùng trong bảng chữ cái.
D Ý nghĩa của câu lệnh cần thực hiện.
Câu 20: Trong Pascal, cho đoạn chương trình:
B Còn được gọi là từ khóa.
C Là tên được ngôn ngữ lập trình quy định dùng với ý
A Nhấn phím F2
B Nhấn tổ hợp phím Ctrl+F2
C Nhấn tổ hợp phím Shift + F2
D Nhấn tổ hợp phím Alt + F2
Câu 24: Hãy cho biết kết quả in ra màn hình sau thi thực
hiện đoạn chương trình sau:
Write(a, b);
A 012 B 150 C 1215 D 1512
Câu 25: Trong Pascal tên nào sau đây là tên chuẩn?
A Type B Var C Uses D Extended
Câu 26: 2 < x < 5 được biểu diễn trong Pascal là:
A (x > 2) and (x < 5) B 2 < x < 5
C (x < 2) and (x < 5) D (2 < x) and (x > 5)
Câu 27: Hãy cho biết kết quả in ra màn hình sau thi thực
hiện đoạn chương trình sau:
Write(2 > 1);
A 1 > 2 B 2 > 1 C True D False
67
Trang 35Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶP Giáo viên: Lê Hoàn Chân
II Tự luận (3 điểm)
1 Viết chương trình tính tổng 2 số nguyên dương do người dùng nhập vào từ bàn phím? (1 điểm)
2 Viết chương trình kiểm tra 3 số nguyên dương do người dùng nhập vào có phải là độ dài 3 cạnh của một tam giáckhông? Biết 3 cạnh của tam giác thoả điều kiện tổng độ dài của 2 cạnh bất kì luôn lớn hơn độ dài cạnh còn lại!
Trang 36Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
If d1 and d2 and d3 Then
Write(‘La do dai 3 canh cua mot tam giac’)
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
Trang 37Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶP Giáo viên: Lê Hoàn Chân
§10 – CẤU TRÚC LẶP (TIẾT 1)
Tiết phân phối chương trình: 14
Ngày soạn: «Ngày_14»
Tuần: 14 - «Tuần_14»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Giải thích được lí do cần sử dụng cấu trúc lặp trong việc biểu diễn thuật toán
Mô tả được cấu trúc chung của lệnh lặp FOR trong ngôn ngữ lập trình Pascal
92 Kỹ năng
Viết được một chương trình đơn giản có sử dụng câu lệnh FOR
93 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
LII PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
LIII CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
94 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
LIV TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
95 Kiểm tra bài cũ: Không kiểm tra
96 Giảng bài mới
Giới thiệu bài mới
Ở các bài học trước chúng ta đã tìm hiểu về cách viết một chương trình đơn giản với các bước xử lý tuần tựhoặc là có sử dụng cấu trúc rẽ nhánh để lựa chọn thao tác cần thực hiện Ở bài học hôm nay chúng ta cùngtìm hiểu một cấu trúc mới, kết hợp với cấu trúc tuần tự và cấu trúc lặp để giải quyết tất cả các bài toán trênmáy tính Chúng ta cùng tìm hiểu bài mới §10 – CẤU TRÚC LẶP
Tiến trình giảng bài mới
Hoạt động 1: Tìm hiểu khái niệm lặp
Giới thiệu các bài toán không thể giải quyết
bằng cấu trúc tuần tự và cấu trúc rẽ nhánh Theo dõi 1 Khái niệm lặp
Xét các bài toán:
BT 1: Nhập x và N, tính Q = xn
BT 2: Nhập N, tính S = 1 + 2 + 3 + … + N
BT 3: Nhập số 0 ≤ k ≤ 1, TínhHướng giải:
BT1: Cho Q = 1 và nhân lần lượt N số x vàoQ
BT2: Cho S = 0 và cộng lần lượt các số từ 1đến N và S
BT3: Cho T = 1 và Cộng lần lượt các phân sốvào T với i nhận giá trị từ 2 và tăng dần chođến khi: k không còn đúng nữa
Cho học sinh thảo luận theo nhóm bàn và trả lời
các câu hỏi:
- Trình bày ý tưởng giải các bài toán trên?
- Hãy cho biết với cấu trúc tuần tự và cấu trúc rẽ
nhánh có thể giải các bài toán trên không?
Chia nhóm, thảoluận và trả lời câuhỏi
Chính xác hoá các câu trả lời của học sinh và
giải thích lí do không thể giải quyết các bài toán
đã cho bằng cấu trúc tuần tự và cấu trúc lặp
Theo dõi, ghi bài
Giới thiệu cấu trúc lặp và phân loại nó Theo dõi, ghi bài Trong lập trình, cấu trúc mô tả những thao tác
lặp lại nhiều lần gọi là cấu trúc lặp.
Trang 38Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
Lặp thường có 2 loại:
Lặp với số lần biết trước
Lặp với số lần không biết trước.Ngôn ngữ lập trình nào cũng cung cấp một sốcâu lệnh để mô tả các cấu trúc lặp
Hoạt động 2: Tìm hiểu cấu trúc vòng lặp FOR trong Pascal
Giới thiệu cấu trúc của vòng lặp for trong Pascal
2 Lặp có số lần biết trước và câu lệnh for – do
Biến là tên 1 biến kiểu rời rạc (số nguyên,
ký tự …), biến này thường được gọi là biếnđếm hoặc biến chạy Khi vòng lặp hoạt động,biến này sẽ được tự động tăng/giảm giá trị mỗilần lặp
GT đầu, GT cuối là các biểu thức, hằng,biến, hàm cùng kiểu với biến chạy
Tương ứng với mỗi giá trị của biến chạy, câu
lệnh sau DO được thực hiện 1 lần.
Ví dụ:
Var i, N: byte;
Begin Write(‘Nhap N: ’); Readln(N);
For i≔ 1 to N do Writeln(‘i = ’, i);
- Vòng lặp FOR hoạt động như thế nào?
- Câu lệnh sau DO sẽ được thực hiện bao nhiêu
lần?
- Nếu cần thực hiện nhiều lệnh sau DO thì phải
làm sao?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh Lắng nghe
Giới thiệu ví dụ về một chương trình cụ thể sử
dụng vòng lặp for và kết quả khi chạy chương
trình
The dõiGiải thích cách vòng lặp for hoạt động:
B1: Gán giá trị của i = 1
B2: Kiểm tra i > N nếu có thì dừng vòng lặp
B3: Thực hiện lệnh Writeln(‘i = ’, i);
B4: Tăng i lên 1 đơn vị và quay lại B2
Thay For i≔ 1 to N do
thành For i≔ N downto 1 do
và đặt câu hỏi:
- Chương trình sẽ cho ra kết quả là gì?
- Khi nào cần sử dụng vòng lặp for downto do?
Theo dõi và trả lờicâu hỏi
Chính xác hoá các câu trả lời của học sinh The dõi, ghi bài
97 Củng cố bài
Hỏi học sinh các câu hỏi về những nội dung chính của bài học:
1) Việc sử dụng các biến trung gian trong chương trình có tác dụng gì?
2) Vì sao cần phải tiến hành gỡ lỗi theo từng bước và theo dõi giá trị các biến?
98 Dặn dò
Dặn dò học sinh về nhà chuẩn bị bài tiếp theo
LV RÚT KINH NGHIỆM
Xác nhận của tổ trưởng / nhóm trưởng
(Ký và ghi rõ họ tên)
Trang 39Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶP Giáo viên: Lê Hoàn Chân
§10 – CẤU TRÚC LẶP (TIẾT 2)
Tiết phân phối chương trình: 15
Ngày soạn: «Ngày_15»
Tuần: 15 - «Tuần_15»
Sau khi học xong bài này, học sinh có khả năng:
1 Kiến thức
Trình bày được cấu trúc của câu lệnh lặp FOR trong ngôn ngữ lập trình Pascal
Giải thích được cách biến chạy hoạt động với vòng lặp FOR
99 Kỹ năng
Viết được chương trình đơn giản có sử dụng câu lệnh FOR
Tận dụng được sự thay đổi của biến chạy khi sử dụng câu lệnh FOR
100 Thái độ
Tăng độ hứng thú khi học môn học này
Rèn luyện tính tỉ mỉ khi làm việc
Tăng khả năng phân tích, và khả năng kết hợp các kỹ thuật, kỹ năng khi làm việc
Tích cực học tập, chăm chú nghe giảng
LVI PHƯƠNG PHÁP DẠY HỌC
Sử dụng các phương pháp, dạy học cơ bản sau một cách linh hoạt nhằm giúp học sinh tìm tòi, phát hiện, chiếm lĩnhtri thức: gợi mở vấn đáp, thảo luận; phát hiện và giải quyết vấn đề; đan xen hoạt động nhóm
LVII CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH
1 Giáo viên
Giáo án, phấn, máy tính, máy chiếu (nếu có)
101 Học sinh
Sách giáo khoa, học bài cũ, chuẩn bị bài mới
LVIII TIẾN TRÌNH BÀI DẠY
1 Ổn định lớp
102 Kiểm tra bài cũ: Không kiểm tra
103 Giảng bài mới
Giới thiệu bài mới
Ở bài học trước chúng ta đã tìm hiểu về câu lệnh rẽ nhánh để điều khiển hướng xử lý của chương trình Ở bàithực hành hôm nay chúng ta sẽ dùng câu lệnh rẽ nhánh này xây dựng một bài toán kiểm tra số đơn giản vàtìm hiểu cách sử dụng công cụ gỡ lỗi từng bước của Pascal
Tiến trình giảng bài mới
Hoạt động 1: Sử dụng vòng for lặp lại một việc đơn giản
Nhắc lại các kiến thức quan trọng cần phải lưu ý
khi sử dụng vòng lặp FOR: Cấu trúc vòng lặp
FOR, cách vòng lặp FOR hoạt động
Write(‘Nhap N: ’); Readln(N);
Q≔ 1;
For i≔ 1 to N do Q≔ Q * x;
- xN được tính như thế nào?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và chỉ
ra công việc cần phải lặp lại
Theo dõi, ghi bàiTừng bước xử lý bài toán bằng chương trình cụ
thể sử dụng vòng lặp FOR
Hoạt động 2: Sử dụng vòng for với việc tận dụng giá trị biến chạy
Trang 40Giáo án tin học 11 CHƯƠNG III – CẤU TRÚC RẼ NHÁNH VÀ LẶPGiáo viên: Lê Hoàn Chân
Giới thiệu bài toán tính tổng S Theo dõi
Bài toán 2: Tính S = 1 + 2 + 3 + … + N
Var i, N: integer;
S: longint;
Begin Write(‘Nhap N: ’); Readln(N);
S≔ 0;
For i≔ 1 to N do S≔ S + i;
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và chỉ
ra công việc cần phải lặp lại Lắng nghe
Đặt câu hỏi:
- Công việc được lặp lại bao nhiêu lần?
- Vòng lặp FOR có biến chạy nhận giá trị từ đâu
đến đâu?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và
từng bước xử lý bài toán bằng chương trình cụ
thể sử dụng vòng lặp FOR
Theo dõi, ghi bài
Giới thiệu bài toán đếm các số lẻ trong khoản từ
Write(‘Nhap N: ’); Readln(N);
Count≔ 0;
For i≔ M to N do
If i mod 2 = 0 then Count≔ Count + 1;
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và chỉ
ra công việc cần phải lặp lại Lắng nghe
Đặt câu hỏi:
- Công việc được lặp lại bao nhiêu lần?
- Vòng lặp FOR có biến chạy nhận giá trị từ đâu
đến đâu?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và
từng bước xử lý bài toán bằng chương trình cụ
thể sử dụng vòng lặp FOR
Theo dõi, ghi bài
Giới thiệu bài toán tính tổng kèm điều kiện Theo dõi
Bài toán 4: Viết chương trình tính tổng các sốchia hết cho 3 nằm trong khoản từ M đến N
Var i, M, N: integer;
S: longint;
Begin Write(‘Nhap M: ’); Readln(M);
Write(‘Nhap N: ’); Readln(N);
S≔ 0;
For i≔ M to N do
If i mod 3 = 0 then S≔ S + i;
- Việc tính được tổng các số chia hết cho 3 cần
thực hiện các thao tác nào?
Trả lời câu hỏi
Chính xác hoá các câu trả lời của học sinh và chỉ
ra công việc cần phải lặp lại Lắng nghe
Từng bước xử lý bài toán bằng chương trình cụ
thể sử dụng vòng lặp FOR Theo dõi, ghi bài
104 Củng cố bài
Cho học sinh áp dụng các giải thuật từ những ví dụ trong bài học để giải các bài toán tương tự:
1) Tính
2) Tính