Dẫn nhập bài mới - Trong chương trình lớp 10 các em đã được biết đến một số khái niệm: ngônngữ lập trình, chương trình dịch,...Trong bài học hôm nay chúng ta sẽ tập trung làm sáng tỏ hơn
Trang 1Ngày soạn:24/08/2009 Tuần: 1
- Kết hợp phương pháp giảng dạy thuyết trình, vấn đáp
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, tài liệu tham khảo.
2 Chuẩn bị của học sinh: Đọc trước bài mới, vở ghi lý thuyết, SGK.
III Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Giới thiệu chương trình học và dẫn nhập bài mới
2.1 Giới thiệu chương trình học
- Giới thiệu sơ lược chương trình tin học 11
- Giới thiệu sơ lược chương I
2.2 Dẫn nhập bài mới
- Trong chương trình lớp 10 các em đã được biết đến một số khái niệm: ngônngữ lập trình, chương trình dịch, Trong bài học hôm nay chúng ta sẽ tập trung làm sáng
tỏ hơn về chương trình dịch (bao gồm biên dịch và thông dịch)
3 Nội dung bài giảng
Hoạt động 1: Khái niệm lập trình và ngôn ngữ lập trình
GV: Đặt câu hỏi
Em hãy cho biết các bước giải một bài
toán trên máy tính?
HS: Suy nghĩ và trả lời câu hỏi.
GV: Phân tích câu trả lời của học sinh.
Nhắc lại các bước giải bài toán trên máy
tính đã học ở lớp 10
- Mọi bài toán có thuật toán đều có thể giảiđược trên máy tính điện tử Các bước đểgiải 1 bài toán:
+ Xác định bài toán+ Xây dựng được thuật toán khả thi+ Lập trình
- Lập trình là sử dụng cấu trúc dữ liệu và
Trang 2HS: Trả lời câu hỏi của giáo viên.
GV: Chương trình viết bằng ngôn ngữ bậc
cao nói chung không phụ thuộc vào loại
máy, nghĩa là một chương trình có thể thực
hiện trên nhiều máy
Chương trình viết bằng ngôn ngữ
máy có thể được nạp trực tiếp vào bộ nhớ
và thực hiện ngay, còn chương trình viết
bằng ngôn ngữ bậc cao phải được chuyển
đổi thành ngôn ngữ máy mới có thể thực
hiện được
các câu lệnh của một ngôn ngữ lập trình cụthể để mô tả dữ liệu và diễn đạt thuật toán
- Ngôn nghữ lập trình là một phần mềmdùng để diễn đạt thuật toán thành mộtchương trình giúp cho máy tính hiểu đượcthuật toán đó
- Có ba loại ngôn ngữ lập trình: ngôn ngữmáy, hợp ngữ và ngôn ngữ bậc cao
Hoạt động 2: Chương trình dịch
GV: Làm thế nào để chuyển chương trình
viết bằng ngôn ngữ bậc cao sang ngôn ngữ
máy?
HS: Cần phải có một chương trình dịch để
chuyển chương trình được viết bằng các
ngôn ngữ khác thành ngôn ngữ máy
GV: Đưa ra ví dụ
- Em muốn giới thiệu về trường mình cho
du khách quốc tế biết tiếng Anh, có 2 cách
để thực hiện:
+ Cách 1: Cần 1 người biết tiếng Anh, dịch
từng câu nói của em sang tiếng Anh cho
người khách. > Không có vb lưu trữ
+ Cách 2: Em soạn nội dung cần giới thiệu
ra giấy và người phiên dịch dịch toàn bộ
nội dung đó sang tiếng Anh rồi đọc cho du
khách. > Có vb lưu trữ
GV: Thuyết trình về thông dịch, biên dịch
và chương trình dịch Lấy ví dụ về biên
dịch và thông dịch để học sinh có thể hình
dung được mỗi công việc
- Chương trình dịch có chức năng chuyểnđổi chương trình được viết bằng ngôn ngữlập trình bậc cao thành chương trình có thểthực hiện được trên máy tính
Chương trình nguồn > Chương trình dịch > Chương trình đích
- Chương trình dịch có hai loại: biên dịch
Trang 3HS: chú ý lắng nghe và ghi bài.
GV: Đi kèm với các chương trình dịch
thường có các công cụ như soạn thảo
chương trình nguồn, lưu trữ, tìm kiếm,
phát hiện lỗi, thông báo lỗi, ngôn ngữ lập
trình thường chứa tất cả các dịch vụ trên
- Kiểm tra tính đúng đắn của câu lệnh tiếptheo trong chương trình nguồn
- Chuyển đổi các câu lệnh đó thành mộthay nhiều câu lệnh trong ngôn ngữ máy
- Thực hiện các câu lệnh vừa chuyển đổiđược
a Biên dịch (Compiler): Thực hiện theo
các bước sau:
- Duyệt, phát hiện lỗi, kiểm tra tính đúngđắn của các câu lệnh trong chương trìnhnguồn
- Dịch toàn bộ chương trình nguồn thànhmột chương trình đích để có thể thực hiệntrên máy và có thể lưu trữ để sử dụng lại
IV Củng cố bài
- Qua tiết học này, các em đã có khái niệm chính xác hơn về lập trình và ngôn ngữlập trình, về chương trình dịch, phân biệt được hai loại chương trình dịch: biên dịch vàthông dịch
V Bài tập về nhà
- Ôn tập lại bài học, trả lời các câu hỏi cuối bài
-Đọc trước bài 2: “Các thành phần của ngôn ngữ lập trình” chuẩn bị cho tiết học sau
VI Nhận xét rút kinh nghiệm:
Trang 4Ngày soạn:26/08/2009 Tuần: 2
- Kết hợp phương pháp giảng dạy thuyết trình, vấn đáp
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, tài liệu tham khảo.
2 Chuẩn bị của học sinh: Đọc trước bài mới, vở ghi lý thuyết, SGK.
III Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Kiểm tra bài cũ và dẫn nhập bài mới
2.1 Kiểm tra bài cũ:
- Giáo viên nêu lần lượt các câu hỏi, gọi học sinh trả lời, đánh giá cho điểm:+ Câu hỏi 1: Hãy nêu khái niệm ngôn ngữ lập trình và ý nghĩa của nó
+ Câu hỏi 2: Chương trình dịch là gì?
2.2 Dẫn nhập bài mới
- Chúng ta biết rằng ngôn ngữ lập trình là để viết chương trình giải các bài toántrên máy tính Vậy nó bao gồm những thành phần nào? Bài học hôm nay sẽ trả lời câuhỏi đó
3 Nội dung bài giảng
Hoạt động 1: Các thành phần cơ bản
GV: Đặt vấn đề:
Có những yếu tố nào dùng để xây dựng
nên ngôn ngữ tiếng Việt?
Tương tự như vậy các ngôn ngữ lập trình
thường có chung một số thành phần như:
Trang 5dùng những kí hiệu nào để viết chương
trình, viết theo qui tắc nào, viết như vậy có
ý nghĩa là gì Mỗi ngôn ngữ lập trình có
A+B (1) với A,B là các số thực
I+J (2) với I,J là các số nguyên
Khi đó:
Dấu cộng trong (1) là cộng 2 số thực cong
trong (2) là cộng trong 2 số nguyên
GV: đưa ra ví dụ ngôn ngữ tự nhiên cũng
b Cú pháp: là bộ quy tắc dùng để viết
chương trình
c Ngữ nghĩa: xác định ý nghĩa thao tác
cần thực hiện, ứng với tổ hợp kí tự dựa vàongữ cảnh của nó
- Cú pháp cho biết cách viết chương trìnhhợp lệ, ngữ nghĩa xác định ý nghĩa của các
tổ hợp kí tự trong chương trình
Hoạt động 2: Giới thiệu tên
GV: Đặt vấn đề
Trong chúng ta ai cũng đều có một cái tên
để phân biệt mọi người với nhau
GV: Thuyết trình
Trong các NNLT cũng vậy, các đối tượng
sử dụng trong chương trình đều phải được
đặt tên để tiện cho việc sử dụng Việc đặt
tên trong các ngôn ngữ khác nhau là khác
nhau, có ngôn ngữ phân biệt chữ hoa chữ
thường (c++), có ngôn ngữ không phân biệt
Ngôn ngữ nào cũng có 3 loại tên cơ bản
Trong khi soạn thảo chương trình, các
ngôn ngữ lập trình thường hiển thị các tên
2 Một số khái niệm
a Tên
- Mọi đối tượng trong chương trình đềuphải được đặt tên Mỗi NNLT có một quytắc đặt tên riêng
- Trong pascal, phân biệt 3 loại tên:
+ Tên dành riêng(từ khóa): là những tênđược ngôn ngữ lập trình qui định dùng với
ý nghĩa xác định , người lập trình không
Trang 6dành riêng với một màu chữ khác hẳn với
các tên còn lại giúp người lập trình nhận
biết được từ khoá, trong pascal là màu
trắng
GV: Nếu có máy chiếu, mở một chương
trình viết bằng pascal để hs quan sát
GV: thuyết trình
Các NNLT thường cung cấp một số đơn vị
chương trình có sẵn trong thư viện chương
trình giúp người lập trình có thể thực hiện
nhanh một số thao tác thường dùng
Chỉ cho hs một số tên chuẩn trong NNLT
pascal
GV: Đưa ra ví dụ: để viết chương trình
giải phương trình bậc 2 ta cần khai báo các
pascal: program, uses, const, var
c++: main, include, void
+ Tên chuẩn: là những tên được ngôn ngữlập trình qui định dùng với 1 ý nghĩa nhấtđịnh nào đó, người lập trình có thể địnhnghĩa lại để dùng nó với ý nghĩa khác.VD:
pascal: real, integer, sin, cos
c++: cin, cout
+ Tên do người lập trình đặt:
Được xác định bằng cách khai báo trướckhi sử dụng và không trùng với từ khoá Các tên trong chương trình không đượctrùng nhau
+Đại lượng có giá trị ko thay đổi: Pi=3.14
+Đại lượng có giá trị thay đổi:cv,s,r
GV: Hằng được chia làm hai loại: hằng
được đặt tên và hằng không được đặt tên
( là các giá trị được viết trực tiếp khi viết
GV: Biến là đối tượng sử dụng nhiều nhất
trong khi viết chương trình Biến là đại
lượng có thể thay đổi nên thường được
dùng để lưu trữ kết quả, làm trung gian
+ Hằng số học: là các số nguyên hoặc sốthực, có dấu hoặc không dấu
+ Hằng logic: là giá trị đúng (True) hoặcsai (False)
+ Hằng xâu: là một chuỗi kí tự bất kì Khiviết, chuỗi kí tự này được đặt trong cặpdấu nháy
* Biến:
- Biến là đại lượng được đặt tên dùng đểlưu trữ giá trị và giá trị này có thể đượcthay đổi trong quá trình thực hiện chươngtrình Các biến dùng trong chương trìnhđều phải được khai báo
* Chú thích
Trang 7GV: thuyết trình
Khi viết chương trình người lập trình
thường có nhu cầu giải thích 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 NNLT
thường cung cấp cho ta cách để đưa chú
thíc vào trong chương trình
GV: Mở một chương trình hoặc treo bảng
phụ chứa các khái niệm của bài học
- Có thể cài đặt các đoạn chú thích trongchương trình nguồn Chú thích không làmảnh hưởng đến chương trình Dùng để giảithích cho chương trình rõ ràng và dễ hiểu
- Bài học hôm nay các em cần ghi nhớ những nội dung sau:
+ Các thành phần cơ bản của NNLT pascal
+ Một số khái niệm: tên, hằng và biến, chú thích của NNLT pascal và c++
V Bài tập về nhà
- Ôn tập lại bài học hôm nay
- Làm bài tập trong sgk tin học 11 trang 13
- Ôn tập chương I
VI Nhận xét rút kinh nghiệm:
Trang 8Ngày soạn:01/09/2009 Tuần: 3
- Kết hợp phương pháp giảng dạy thuyết trình, vấn đáp
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, SBT, tài liệu tham khảo.
2 Chuẩn bị của học sinh: Đọc trước bài mới, vở ghi lý thuyết, SGK, SBT.
III Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Kiểm tra bài cũ và dẫn nhập bài mới
2.1 Kiểm tra bài cũ:
- Kiểm tra lồng ghép với bài mới
2.2 Dẫn nhập bài mới
- Nêu kế hoặch ôn tập chương I và làm bài tập
3 Hướng dẫn bài tập SGK
Hoạt động 1: Hướng dẫn câu hỏi 1
GV: nêu câu hỏi Yêu cầu hs chuẩn bị câu
- Lập trình bằng ngôn ngữ bậc cao dễ viết
hơn vì các lệnh được mã hoá gần với ngônngữ tự nhiên, thuận tiện cho đông đảongười dùng
- Chương trình viết bằng ngôn ngữ lậptrình bậc cao nói chung không phụ thuộcvào loại máy, cùng 1 chương trình có thểthực hiện trên nhiều loại máy tính khácnhau
- Chương trình viết bằng ngôn ngữ bậc cao
Trang 9dễ hiểu, dễ hiệu chỉnh và dễ nâng cấp hơn.
- NNLT bậc cao cho phép làm việc vớinhiều kiểu DL và cách tổ chức DL đadạng, thuận tiện cho mô tả thuật toán
Hoạt động 2: Hướng dẫn câu 2
GV: nêu câu hỏi Yêu cầu hs chuẩn bị câu
- Cần phải có chương trình dịch để chuyểnchương trình được viết bằng các ngôn ngữkhác thành ngôn ngữ máy thì máy tính mới
có thể hiểu và thực hiên được
Hoạt động 4: Hướng dẫn câu 3
GV: nêu câu hỏi Yêu cầu hs chuẩn bị câu
sử dụng
+ Trình thông dịch lần lựơt dịch từng câulệnh ra ngôn ngữ máy rồi thực hiện ngaycâu lệnh vừa dịch được hoặc báo lỗi nếukhông dịch được
Trong thông dịch không có chương
trình đích để lưu trữ Trong biên dịch cảchương trình nguồn và chương trình đích
có thể lưu trữ lại để sử dụng về sau
Hoạt động 4: Hướng dẫn câu 4
GV: nêu câu hỏi Yêu cầu hs chuẩn bị câu
Câu 5: Hãy viết ra 3 tên đúng theo quy định của pascal?
-Gọi HS lên bảng viết 3 tên đúng và 3 tên sai.
Câu 6:
+ Cho biết những biểu diễn không phải là biểu diễn hằng trong Pascal
a> 150.0 b> -22 c> 6,23
Trang 10d> ‘43’ e> A20 f> 1.06E-15
g> 4+6 h> ‘C i> ‘True’
c, e, g, h, i sai
c: dấu phẩy phải thay bằng dấu chấm
e: là tên chưa có giá trị
g: là biểu thức số học
h: sai qui định về hằng xâu: thiếu nháy đơn
i: là hằng xâu nhưng không phải là hằng logic
IV Củng cố bài
- Bài học hôm nay các em cần ghi nhớ những khái niệm cơ bản
- Làm 1 số bài tập trong SBT
V Bài tập về nhà
- Ôn tập lại bài học hôm nay
- Làm bài tập trong SBT tin học
- Ôn tập chương I
VI Nhận xét rút kinh nghiệm:
Trang 11Ngày soạn:08/09/2009 Tuần: 4
- Giúp học sinh hiểu chương trình là sự mô tả của thuật toán bằng NNLT
- Biết cấu trúc chung của một chương trình
- Kết hợp phương pháp giảng dạy thuyết trình, vấn đáp
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, tài liệu tham khảo, một số chương
trình mẫu
2 Chuẩn bị của học sinh: Đọc trước bài mới, vở ghi lý thuyết, SGK.
III Tiến trìn lên lớp, nội dung bài giảng
3 Nội dung bài giảng
Hoạt động 1: Cấu trúc chung
GV: Đặt vấn đề
Một bài tập làm văn em thường viết có
mấy phần? Các phần có thứ tự không? Vì
sao phải chia ra như vậy?
HS: Lắng nghe và suy nghĩ trả lời:
- Có 3 phần
- Có thứ tự: mở bài, thân bài, kết luận
- Dễ viết, dễ đọc, dễ hiểu nội dung
GV: Trong tin học chương trình được viết
Trang 12khai báo và phần thân.
HS: nghe giảng và chép bài. + Phần thân chương trình bắt buộc phải có.
Hoạt động 2: Các thành phần của chương trình
GV: Phần khai báo sẽ báo cho máy biết
chương trình sẽ sử dụng những tài nguyên
nào của máy
Chúng ta có thể khai báo tên chương trìn,
hằng được đặt tên, chương trình con
Khai báo chương trình có thể có hoặc
không, tên chương trình do người lập trình
tạo nên theo đúng quy tắc đặt tên
HS: nghe giảng và ghi bài.
GV: Thư viện chương trình thường chứa
những đoạn chương trình lập sẵn, các đoạn
chương trình này rất hữu ích cho người lập
trình
HS: nghe giảng và ghi bài.
GV: Thuyết trình
Khai báo hằng là việc đặt tên cho hằng để
tiện khi sử dụng và tránh việc phải viết lại
nhiều lần cùng một hằng trong chương
trình
Khai báo hằng còn tiện dụng hơn khi thay
đổi giá trị của nó trong chương trình
HS: nghe giảng và ghi bài.
GV: Thuyết trình
Khai báo biến là xin máy tính cấp cho
chương trình một vùng nhớ để lưu trữ và
xử lí thông tin trong bộ nhớ trong Chúng
ta sẽ tìm hiểu sâu hơn vấn đề này trong §5.
HS: nghe giảng và ghi bài.
GV: Thuyết trình
Mỗi ngôn ngữ lập trình có cách tổ chức
chương trình khác nhau, thường thì phần
thân chứa các câu lệnh của chương trình
2 Các thành phần của chương trình
a Phần khai báo
* Khai báo tên chương trình:
- ý nghĩa: để ghi nhớ tên bài toán cần giải,phần này có thể có hoặc không
- Cách viết:
Program <Tên CT>;
- VD: Program giaiptb2;
* Khai báo thư viện:
- ý nghĩa: cung cấp 1 số chương trìnhthông dụng đã được lập sẵn
- Cách viết:
Uses <Tên thư viện>;
- VD: Uses crt;
Lệnh khi sử dụng thư viện: Clrscr;
- NNLT c++: #include <tên thư viện>;Lệnh khi sử dụng thư viện: clrscr();
* Khai báo biến:
- Mọi biến trong chương trình đều phảiđược đặt tên và khai báo cho chương trìnhdịch biết để lưu trữ và xử lí
- Biến chỉ nhận một giá trị tại mỗi thờiđiểm th chương trình được gọi là biến đơn.Vd: giải ptb2: ax2+bx+c=0
Begin [<dãy lệnh>]
End.
Trang 13Hoạt động 3: Ví dụ chương trình đơn giản
GV: Yêu cầu học sinh đọc ví dụ đơn giản
trong SGK
Giải thích từng dòng lệnh
Viết lên bảng 1 chương trình đơn giản
trong ngôn ngữ Pascal
- Hỏi: phần khai báo của chương trình?
- Hỏi: phần thân của chương trình?
HS : Suy nghĩ và trả lời.
IV Củng cố bài
- Hôm nay chúng ta đã học xong bài Cấu truc chương trình Với những nội dung sau:
một chương trình gồm có hai phần: phần khai báo và phần thân
+ Phần khai báo: tên chương trình, biến, thư viện, hằng
+ Phần thân: các câu lệnh
V Bài tập về nhà
- Đọc lại bài học và làm các bài tập 1, 2, 3, 4 SGK-tr35
- Nghiên cứu bài 4: “Một số kiểu DL chuẩn” để chuẩn bị cho tiết học sau.
VI Nhận xét rút kinh nghiệm:
Trang 14Ngày soạn:12/09/2009 Tuần: 5
Ngày giảng:15/09/2009 - Lớp: 11A4
- Lớp: 11A5 Tiết: 5
§5 KHAI BÁO BIẾN
I Mục đích, yêu cầu
1 Về kiến thức:
- Biết được một số kiểu dữ liệu chuẩn: nguyên, thực, kí tự, logic
- Xác định được kiểu dữ liệu cần khai báo của dữ liệu đơn giản
- Biết được cấu trúc chung của khai bào biến Biết các khai báo biến đúng
2 Kĩ năng:
- Xác định được kiểu cần khai báo của dữ liệu đơn giản
- Khai báo đúng Nhận biết khai báo sai
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, tài liệu tham khảo, một số VD.
2 Chuẩn bị của học sinh: Đọc trước bài mới, vở ghi lý thuyết, SGK.
III Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Kiểm tra bài cũ và dẫn nhập bài mới
2.1 Kiểm tra bài cũ:
- GV nêu lần lượt các câu hỏi, gọi học sinh trả lời, đánh giá, cho điểm
+ Câu hỏi 1: Hãy nêu các thành phần cơ bản của chương trình?
+ Câu hỏi 2: Em hãy cho biết cấu trúc của một chương trình pascal đơn giản?
2.2 Dẫn nhập bài mới
- Chúng ta biết rằng, trong bất kì chương trình pascal nào cũng luôn bắt đầu bằngphần khai báo, đặc biệt là phần khai báo biến để biết kiểu dữ liệu trả về và kiểu dữ liệu
sẽ tính toán trên máy Để biết được những kiểu dữ liệu hay dùng trong pascal, chúng ta
sẽ nghiên cứu bài học hôm nay
3 Nội dung bài giảng
Hoạt động 1: Một số kiểu dữ liệu chuẩn
GV: Trong toán học để thực hiện được
tính toán cần phải có các tập số Đó là các
tập số nào ?
HS: Tập hợp số tự nhiên, số nguyên, số
thực, kí tự
Trang 15GV: Đó là một số kiểu dữ liệu quen thuộc
trong toán học Cũng tương tự như vậy,
trong ngôn ngữ lập trình thường cung cấp
một số kiểu dữ liệu chuẩn cho biết phạm vi
có thể lưu trữ, dung lượng bộ nhớ cần thiết
để lưu trũ và các phép toán tác động lên dữ
liệu Sau đây ta sẽ đi vào chi tiết từng loại
dữ liệu
GV: Em thấy kiểu nguyên trong máy tính
so với kiểu nguyên trong toán học có hạn
chế gì?
HS: Miền giá trị bị hạn chế, tập số nguyên
là vô hạn, nhưng kiểu nguyên trong máy
trong máy tính cũng là hữu hạn nhưng
miền giá trị được mở rộng hơn so với kiểu
nguyên
GV: Em hãy cho biết kiểu kí tự được dùng
khi nào?
HS: Trả lời
Kiểu kí tự thường dùng khi thông tin là các
kí tự, xâu, hầu hết các NNLT đều có kiểu
kí tự để làm việc với văn bản
GV: Em biết những bảng mã nào?
HS: ASCII và Unicode
GV: Trong lập trình nói chung thì kiểu kí
tự thường là tập các kí tự trong bảng mã kí
tự, mỗi kí tự có mã thập phân tương ứng,
để lưu các giá trị là kí tự thì phải lưu mã
thập phân tương ứng
GV: Kiểu logic là kiểu thường chỉ có 2 giá
trị đúng – sai Mỗi ngôn ngữ khác nhau lại
có cách mô tả kiểu logic khác nhau, pascal
dùng true-false, một số ngôn ngữ khác mô
tả bằng 0-1
1 Kiểu nguyên
Kiểu nguyên bao gồm một số kiểu dữ liệu
cơ bản sau: byte, integer, word, longint.Mỗi giá trị được lưu trữ trong bộ nhớ từ 1đến 4 byte Cụ thể: sgk-tr21
Hoạt động 2: Khai báo biến
- Chúng ta đã làm quen với một số kiểu DL chuẩn như kiểu nguyên, kiểu thực, kiểu logic và kiểu kí tự Mặt khác, mọi biến dùng trong chương trình đều cần khai báo tên và kiểu dữ liệu của biến
GV: Khai báo biến là chương trình báo cho - Trong ngôn ngữ pascal biến đơn được
Trang 16máy biết phải dùng những tên nào trong
Khi khai báo biến cần lưu ý những gì?
HS: Suy nghĩ và trả lời câu hỏi.
GV: Phân tích câu trả lời của HS.
khai báo như sau:
var <DS biến>:<Kiểu DL>;
- Trong đó:
+ var: là từ khoá để khai báo biến Sau từkhoá var có thể có nhiều dòng khai báo.+ DS biến: là tên các biến nếu nhiều biếnthì dùng dấu phẩy để ngăn cách
+ Kiểu DL: là một kiểu DL nào đó củangôn ngữ pascal
V Bài tập về nhà
- Đọc lại bài học và làm các bài tập:
+ Hãy viết khai báo cho bài toán tính chu vi, diện tích hcn với các cạnh nhập từ bànphím
+ Hãy viết khai báo cho bài toán giải phương trình bậc nhất
- Nghiên cứu bài 6: “Phép toán, biểu thức, câu lệnh gán” để chuẩn bị cho tiết học
sau
VI Nhận xét rút kinh nghiệm:
Trang 17Ngày soạn:13/09/2009 Tuần: 5
Ngày giảng:16/09/2009 - Lớp 11A5
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, tài liệu tham khảo, VD.
2 Chuẩn bị của học sinh: Đọc trước bài mới, vở ghi lý thuyết, SGK.
III Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Kiểm tra bài cũ và dẫn nhập bài mới
2.1 Kiểm tra bài cũ:
- GV nêu lần lượt các câu hỏi, gọi học sinh trả lời, đánh giá, cho điểm
+ Câu hỏi 1: Em hãy cho biết một số kiểu dữ liệu chuẩn?
+ Câu hỏi 2: Em hãy cho biết cách khai báo biến trong NNLT pascal?
2.2 Dẫn nhập bài mới
- Trong khi viết chương trình ta thường phải thực hiện các tính toán, thực hiệncác so sánh để đưa ra quyết định xem làm việc gì? Vậy trong chương trình ta viết thếnào? có giống với ngôn ngữ tự nhiên hay không? Tất cả ngôn ngữ có sử dụng chúnggiống nhau hay không? Ta xét các khái niệm này trong ngôn ngữ pascal
3 Nội dung bài giảng
- Các phép toán số học: +,-, *, / Riêngvới số nguyên còn có các phép toánDIV(chia lấy phần nguyên), MOD(chia
Trang 18GV: Nêu các phép toán thường dùng trong
- Các phép toán logic: NOT, OR, AND,thường dùng để tạo các biểu thức logic từcác biểu thức quan hệ đơn giản
Hoạt động 2: Biểu thức số học
GV: Trong toán học biểu thức là gì?
HS: Đưa ra khái niệm.
GV: Đưa ra khái niệm biểu thức trong lập
trình
Đưa ra trình tự thực hiện của biểu thức số
học, so sánh có giống với trình tự biểu
thức trong toán học
HS: Nghe giảng và ghi bài.
GV: yêu cầu hs sử dụng các phép toán số
học, hãy biểu diễn biểu thức toán học sau
thành biểu thức trong ngôn ngữ lập trình
- Là một biến kiểu số hoặc một hằng số
- Là các biến kiểu số và các hằng số liênkết với nhau bởi các phép toán số học
- Dùng cặp dấu ngoặc tròn để qui địnhtrình tự tính toán
- Trình tự thực hiện của biểu thức số họclà: trong ngoặc trước ngoài ngoặc sau,*, /,div, mod, +, -
Hoạt động 3: Hàm số học chuẩn
GV: Trong toán học các em đã được làm
quen với những hàm số học nào?
HS: Hàm khai căn, hàm tính trị tuyệt, hàm
lượng giác,
GV: Để lập trình được dễ dàng, thuận tiện
hơn, pascal có một số hàm hỗ trợ tính giá
trị những hàm toán học thường dùng Các
hàm này gọi là các hàm chuẩn và có tên
gọi riêng Đối số của hàm là một hay nhiều
biểu thức số học và được đặt dấu ngoặc
- Bản thân hàm cũng có thể coi là biểuthức số học
Hoạt động 4: Biểu thức quan hệ
GV: Trong lập trình thường ta phải so sánh
hai giá trị nào đó trước khi thực hiện lệnh
nào đó Biểu thức quan hệ còn được gọi là
biểu thức so sánh 2 giá trị cho kết quả là
đúng hoặc sai (logic)
4 Biểu thức quan hệ
- Hai biểu thức có cùng kiểu dữ liệu được liên kết với nhau bởi phép toán quan hệ cho ta 1 biểu thức quan hệ Biểu thức qh:
<biểu thức 1> <phép toán quan hệ> <biểu
Trang 19VD: 3>5 cho kết quả sai.
GV: Cho biết kết quả của phép toán quan
hệ thuộc kiểu dữ liệu nào đã học?
HS: Kiểu logic
thưc 2>
- Kết quả của biểu thức quan hệ là truehoặc false
Hoạt động 5: Biểu thức Logic
GV: Muốn so sánh nhiều điều kiện đồng
thời ta làm thế nào?
HS: đưa ra ý kiến của mình (và, hoặc )
GV: Thuyết trình bài giảng.
HS: Nghe giảng và chép bài.
GV: Trong toán học ta có biểu thức
5<=x<=7, hãy cho biết dùng phép toán
logic nào để biểu diễn biểu thức này trong
- Phép toán not được viết trước biểu thứccần phủ định Vd: not(x<1)
- Các biểu thức quan hệ thường được đặttrong dấu ngoặc tròn
VD: (5<=x) and (x<=11)
Hoạt động 6: Câu lệnh gán
GV:Giới thiệu 1 ví dụ về lệnh gán trong
Pascal như sau: x:=8+4;
Giải thích: lấy 8 cộng 4, đem kết quả đặt
GV: Minh hoạ một vài lệnh gán bằng một
ví dụ trực quan trên bảng hoặc trên màn
hình
- Lệnh gán là một trong những lệnh cơ bảnnhất của các ngôn ngữ lập trình, thườngdùng để gán giá trị biểu thức cho biến
- Cách viết:
<tên biến>:=<biểu thức>;
- Sự thực hiên của máy:
+ Tính giá trị của biểu thức+ Đặt giá trị vào tên biếnVD: gán công thức tính nghiệm cho x1x1:=(-b+sqrt(b*b-4*a*c))/(2*a);
Trang 20- Về nhà các em cần đọc kĩ lại bài học hôm nay, nắm vững các phép toán, các biểuthức hàm số học và trình tự thực hiện các phép toán trong một biểu thức Điều này rấtcần thiết trong việc viết thuật toán và lập trình các bài toán sau này.
- Nghiên cứu bài học tiếp theo: “Các thủ tục chuẩn vào/ra đơn giản”
VI Nhận xét rút kinh nghiệm:
Ngày giảng:22/09/2009 - Lớp 11A4
- Lớp 11A5 Tiết: 7
- Biết các bước: soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình
- Biết một số công cụ của môi trường Turbo pascal
2 Kĩ năng:
- Viết được một số lệnh vào/ra đơn giản
- Bước đầu sử dụng được chương trình dịch để phát hiện lỗi
- Bước đầu chỉnh sửa được chương trình thông qua thông báo lỗi của chương trìnhdịch và tính hợp lí của các kết quả thu được
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, tài liệu tham khảo,VD.
2 Chuẩn bị của học sinh: Đọc trước bài mới, vở ghi lý thuyết, SGK.
III Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Kiểm tra bài cũ và dẫn nhập bài mới
2.1 Kiểm tra bài cũ:
Trang 21- GV nêu lần lượt các câu hỏi, gọi học sinh trả lời, đánh giá, cho điểm.
+ Câu hỏi 1: Hãy nêu quy tắc cách viết biểu thức số học?
+ Câu hỏi 2: Em hiểu thế nào là hàm số học chuẩn? Nêu một số hàm chuẩn mà
3 Nội dung bài giảng
Hoạt động 1: Nhập dữ liệu từ bàn phím
GV: Thuyết trình
Khi giải quyết một bài toán, ta phải đưa dữ
liệu vào để máy tính xử lý, việc đưa dữ
liệu bằng lệnh gán sẽ làm cho chương trình
chỉ có tác dụng với một bộ dữ liệu cố định
Để chương trình giải quyết được nhiều bộ
dữ liệu hơn, ta phải sử dụng thủ tục nhập
Đưa ra hai ví dụ về chương trình có nhập
thông tin vào từ bàn phím
Chạy chương trình cho học sinh quan sát,
+ Readln có thể ko có tham số dùng để tạmdừng thực hiện chương trình cho ngườidùng quan sát kết quả Enter để chạy tiếp.+ Khi nhập giá trị cho nhiều biến, nhữnggiá trị này phải được gõ cách nhau ít nhấtmột dấu cách hoặc kí tự xuống dòng.VD: Readln(a,b);
Hoạt động 2: Đưa dữ liệu ra màn hình
GV: Trên đây là thủ tục nhập dữ liệu vào
còn xuất ra thì sao?
GV: Giải thích sự khác nhau giữa write,
2 Đưa dữ liệu ra màn hình
- Thủ tục nhập dữ liệu từ bàn phím trongpascal có dạng:
write(A*A+B);write(‘Chao cac ban’);
- Thủ tục write sau khi đưa kết quả ra màn
Trang 22GV: Lấy ví dụ minh hoạ cụ thể bằng
chương trình
- Giải thích VD
- Trong thủ tục write hoặc writeln, có hai
cách viết để trình bày dữ liệu in ra là cách
viết không qui cách và cách viết có qui
cách
- Cách viết không có qui cách như dạng đã
cho trên
- Nêu rõ cách viết có qui cáchnhằm tạo
ra giao diện với người dùng tốt hơn
hình con trỏ không chuyển xuống dòngtiếp theo còn thủ tục writeln con trỏ xuốngđầu dòng tiếp theo
- Writeln không tham số đơn giản chỉ làđặt con trỏ xuống đầu dòng tiếp theo
* Chú ý:
- Trong thủ tục write hoặc writeln, sau mỗikết quả ra có thể có qui cách ra Có dạng:+ Đối với kết quả thực:
:<độ rộng>:<số chữ số phần thập phân>+ Đối với các kết quả khác:
:<độ rộng>
- Trong đó, độ rộng và số chữ số phần thậpphân là số nguyên dương
VD:
writeln(‘x1=’,x1:8:3);
Hoạt động 3: Soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình
GV: Giới thiệu một số tập tin cần thiết để
turbo pascal có thể chạy được, hướng dẫn
các em cách khởi động pascal trên máy
GV : Giới thiệu một số thao tác thường
dùng khi soạn thảo chương trình trong môi
trường soạn thảo turbo pascal
GV : Thực hiện một vài lần các thao tác để
các em nhận thấy mức độ tiện lợi của nó
khi soạn thảo cũng như khi chạy CT
GV : Viết một chương trình VD, thực hiện
các thao tác sửa lỗi
Một số tao tác thường dùng trong pascal:
- Khi soạn thảo muốn xuống dòng nhấn Enter
- Ghi file vào đĩa: F2
V Bài tập về nhà
- Ôn lại bài học hôm nay và ôn lại chương II để chuẩn bị cho tiết thực hành giờ sau
VI Nhận xét rút kinh nghiệm:
Trang 23Ngày soạn:20/09/2009 Tuần: 6
Ngày giảng:23/09/2009 - Lớp 11A5
Bài tập và thực hành 1
I Mục đích, yêu cầu
1 Về kiến thức:
- Biết được một chương trình Pascal hoàn chỉnh đơn giản
- Làm quen với các dịch vụ chủ yếu của Turbo Pascal trong việc soạn thảo, lưuchương trình, dịch chương trình và thực hiện chương trình
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, sắp xếp phòng máy, VD mẫu, máy
tính đã cài sẵn chương trình Turbo Pascal hoặc Free Pascal
2 Chuẩn bị của học sinh: Chuẩn bị nội dung thực hành, SGK, vở bài tập.
III Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Kiểm tra bài cũ và dẫn nhập bài mới
2.1 Kiểm tra bài cũ:
- Kết hợp hỏi bài cũ khi hướng dẫn học sinh thực hành trên máy tính
2.2 Dẫn nhập bài mới
- Qua các bài học lý thuyết các em đã được làm quen với cấu trúc trong mộtNNLT(đặc biệt trong pascal), với một số kiểu dữ liệu chuẩn, 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 đơn giản cũng như việc soạn thảo,dịch, thực hiện và hiệu chỉnh chương trình Bài thực hành hôm nay sẽ giúp các em hoànthiện, khắc sâu những vấn đề đã nêu trên
3 Nội dung thực hành
Hoạt động 1: Hướng dẫn thực hiện bài tập SGK
GV: Yêu cầu học sinh khởi động turbo
pascal, soạn thảo chương trình trong SGK
Trang 24trang 34.
HS: Tự giác nhập chương trình.
GV: Lưu ý học sinh một số điểm khi soạn
thảo chương trình: dấu ;, dấu sau end
GV: Làm mẫu việc lưu CT lên đĩa.
- Nhập giá trị cách nhau dấu cách hoặc
- Quay lại màn hình soạn thảo
GV: Yêu cầu và giảng giải.
end
b Lưu chương trình bằng cách nhấn phím
F2 với tên PTB2.PAS.
c Dịch và sửa lỗi cú pháp với tổ hợp phím
- Thực hiện chương trình với bộ dữ liệu 1 ;
1 ; 1 Thông báo kết quả
>Thông báo lỗi với lý do delta của pt là
số âm
IV Củng cố bài
- Các bước để hoàn thành một chương trình:
Trang 25+ Phân tích bài toán để xác định dữ liệu vào, dữ liệu ra
- Làm lại bài thực hành hôm nay
- Làm các bài tập trong SGK trang 35,36
VI Nhận xét rút kinh nghiệm:
Ngày giảng:29/09/2009 - Lớp 11A5
- Lớp 11A4 Tiết: 9
Bài tập và thực hành 1
I Mục đích, yêu cầu
1 Về kiến thức:
- Biết được một chương trình Pascal hoàn chỉnh đơn giản
- Làm quen với các dịch vụ chủ yếu của Turbo Pascal trong việc soạn thảo, lưuchương trình, dịch chương trình và thực hiện chương trình
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, sắp xếp phòng máy, VD mẫu, máy
tính đã cài sẵn chương trình Turbo Pascal hoặc Free Pascal
2 Chuẩn bị của học sinh: Chuẩn bị nội dung thực hành, SGK, vở bài tập.
III Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
Trang 26- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Kiểm tra bài cũ:
3 Nội dung thực hành
Hoạt động 1: Thực hiện một số bài tập
- Viết chương trình nhập vào độ dài 3 cạnh của một tam giác tính chu vi diện tích của tam giác đó
- Cho chương trình sau:
- Các bước để hoàn thành một chương trình:
+ Phân tích bài toán để xác định dữ liệu vào, dữ liệu ra
- Làm lại bài thực hành hôm nay
- Làm các bài tập trong SGK trang 35,36
- Ôn tập chương II
VI Nhận xét rút kinh nghiệm:
Trang 27Ngày soạn:27/09/2009 Tuần: 7
Ngày giảng:30/09/2009 - Lớp 11A5
BÀI TẬP
I Mục đích, yêu cầu
1 Về kiến thức:
- Nắm được các kiến thức các bài 3,4,5,6,7,8
- Củng cố những nội dung đã đạt được ở tiết thực hành 1
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, SBT, tài liệu tham khảo.
2 Chuẩn bị của học sinh: Đọc trước bài mới, vở ghi lý thuyết, SGK, SBT.
III Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Kiểm tra bài cũ và dẫn nhập bài mới
2.1 Kiểm tra bài cũ:
- Câu hỏi 1: Hãy nêu một số thao tác và phím tắt thường sử dụng để soạn thảo vàthực hiện một chương trình viết bằng pascal
2.2 Dẫn nhập bài mới
- Hôm nay chúng ta sẽ ôn lại toàn bộ chương II
3 Nội dung bài giảng
Hoạt động 1: Giáo viên nhắc lại những vấn đề cần nắm vững trong chương II
Hoạt động 2: Hướng dẫn câu hỏi 1
GV: Nêu câu hỏi, gợi ý câu trả lời cho học
Hoạt động 3: Hướng dẫn câu hỏi 2
Trang 28GV: Nêu câu hỏi, gọi học sinh trả lời.
Đánh giá câu trả lời của học sinh
HS: Tập trung suy nghĩ, tham gia xây
dựng bài
Câu 1: Tại sao phải khai báo biến
- Khai báo biến nhằm các mục đích sau:+Xác định kiểu của biến Trình dịch sẽ biếtcách tổ chức ô nhớ chứa giá trị củabiến.+ Đưa tên biến vào danh sách các đốitượng được chương trình quản lí
+ Trình dịch biết cách truy cập giá trị củabiến và áp dụng thao tác thích hợp chobiến
Hoạt động 4: Hướng dẫn câu hỏi 3
GV: Yêu cầu học sinh đọc câu hỏi, nghiên
cứu sgk tr21,22 để tìm câu trả lời
HS: Tự giác đọc sách, tìm câu trả lời, tham
gia xây dựng bài
Câu 3:
integer, word, longint
Hoạt động 5: Hướng dẫn câu hỏi 4
GV: Yêu cầu học sinh đọc câu hỏi, nghiên
cứu sgk tr21,22, 23 để tìm câu trả lời
HS: Tự giác đọc sách, tìm câu trả lời, tham
gia xây dựng bài
Câu 4:
b và dd tốt hơn
Hoạt động 6: Hướng dẫn câu hỏi 5
GV: Yêu cầu học sinh đọc câu hỏi Đánh
giá câu trả lời của học sinh
HS: Tập trung suy nghĩ, tìm câu trả lời,
tham gia xây dựng bài
Câu 5:
b, c, dc tốt nhất
Hoạt động 7: Hướng dẫn câu hỏi 8
GV: Yêu cầu học sinh đọc câu hỏi Đánh
giá câu trả lời của học sinh
HS: Tập trung suy nghĩ, tìm câu trả lời,
tham gia xây dựng bài
Câu 6:
Hình 2a: (y>=abs(x)) and (y<=1)Hình 2b: (abs(x)<=1) and (abs(y)<=1)
Hoạt động 8: Hướng dẫn câu hỏi 9
GV: Yêu cầu học sinh đọc câu hỏi Đánh
giá câu trả lời của học sinh
HS: Tập trung suy nghĩ, tìm câu trả lời,
tham gia xây dựng bài
Câu 6:
Var a:real;
BeginWrite(‘nhap gia tri a (a>0):’);readln(a);Write(‘dien tich phan gach cheo la:’, a*a*pi/2:8:3);
Readln;
End
Uses crt;
Const g=9.8;
Trang 29Hoạt động 9: Hướng dẫn câu hỏi 10
GV: Yêu cầu học sinh đọc câu hỏi Đánh
giá câu trả lời của học sinh
HS: Tập trung suy nghĩ, tìm câu trả lời,
tham gia xây dựng bài
Câu 10:
Var v,h:real;
BeginClrscr;
Write(‘nhap do cao cua vat h=’); readln(h);V:=sqrt(2*g*h);
Writeln(‘Van toc khi cham dat la v=’,v:10:2,’ m/s’);
ReadlnEnd
IV Củng cố bài
V Bài tập về nhà
- Làm lại bài tập hôm nay và làm thêm bài tập SBT
- Đọc trước bài 9 chương III
VI Nhận xét rút kinh nghiệm:
Ngày giảng:06/10/2009 - Lớp 11A5
Ngày giảng:09/10/2009 - Lớp 11A4
Ngày giảng: /10/2009 - Lớp 11A
Ngày giảng: /10/2009 - Lớp 11A
Ngày giảng: /10/2009 - Lớp 11A
- Hiểu nhu cầu cần sử dụng cấu trúc rẽ nhánh trong biểu diễn thuật toán
- Hiểu câu lệnh rẽ nhánh (dạng thiếu và dạng đủ)
Trang 30- Giải quyết bài toán một cách cẩn thận, chu đáo, có sáng tạo, không thoả mãn vớikết quả ban đầu đạt được.
II Phương pháp
- Kết hợp phương pháp giảng dạy thuyết trình, vấn đáp
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, tài liệu tham khảo, máy chiếu, máy
tính, chương trình mẫu giải ptb2
2 Chuẩn bị của học sinh: Đọc trước bài mới, vở ghi lý thuyết, SGK.
III Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Giới thiệu chương trình học và dẫn nhập bài mới
2.1 Giới thiệu chương trình học
- Giới thiệu sơ lược chương III
2.2 Dẫn nhập bài mới
- Chúng ta đã làm quen với cấu trúc chương trình, các kiểu dữ liệu, phép toán,câu lệnh gản, tổ chức vào/ra đơn giản và cách thực hiện chương trình trong môi trườngpascal Bài học hôm nay chúng ta sẽ nghiên cứu một cấu trúc lệnh thường dùng trong
NNLT pascal là “Cấu trúc rẽ nhánh”.
3 Nội dung bài giảng
Hoạt động 1: Rẽ nhánh
GV: Thường ngày chúng ta có những công
việc chỉ được thực hiện khi một điều kiện
cụ thể nào đó được thoả mãn
VD1: Chiều mai nếu trời không mưa thì
châu sẽ đến nhà Ngọc
GV: Yêu cầu HS đưa ra cấu trúc chung
của câu điều kiện trên?
HS: Chú ý lắng nghe và trả lời.
GV: Đưa ra VD2: Chiều mai nếu trời
không mưa thi Ngọc sẽ đến nhà châu, nếu
mưa thì sẽ gọi điện cho châu để trao đổi.
GV: Yêu cầu HS đưa ra cấu trúc chung
của câu điều kiện trên?
HS: Chú ý lắng nghe và trả lời.
GV: Yêu cầu HS nêu các bước để kết luận
nghiệm của phương trình bậc 2:
+ Dạng đủ: Nếu … thì…nếu không thì…
- Cấu trúc dùng để mô tả các mệnh đề nhưtrên được gọi là cấu trúc rẽ nhánh thiếu vàđủ
Hoạt động 2: Câu lệnh if-then
GV: Thuyết trình. 2 Câu lệnh if-then
Trang 31Mọi ngôn ngữ lập trình đều có các câu
lệnh để mô tả cấu trúc rẽ nhánh Để mô tả
cấu trúc rẽ nhánh, pascal dùng câu lệnh
if-then Tương ứng với hai dạng thiếu và đủ
nói ở trên
GV: Đưa ra cấu trúc lệnh rẽ nhánh trong
pascal Nhắc nhở học sinh đây là cấu trúc
quan trọng, nó sẽ được sử dụng rất nhiều
trong các chương trình sau này
GV: Lưu ý các em sau then và sau else chỉ
- Câu lệnh là 1 câu lệnh của Pascal
*Ý nghĩa: Nếu điều kiện đúng thì câu lệnh
được thực hiện, ngược lại thì câu lệnh sẽ bị
*Ý nghĩa: Nếu điều kiện đúng thì thực
hiện câu lệnh 1, nếu điều kiện sai thì thựchiện câu lệnh 2
*VD: if b<>0 then T:=a/b else write(‘Mẫu
số =0 không chia được’);
Hoạt động 3: Câu lệnh ghép
GV: Muốn thực hiện nhiều lệnh sau if
hoặc sau then thì làm thế nào?
HS: Phát biểu ý kiến của mình.
GV: Nếu trong cấu trúc rẽ nhánh, sau Then
có từ 2 lệnh trở lên thì gộp thành câu lệnh
ghép, đặt các lệnh đó trong cặp từ khoá
Begin…end; với Pascal
GV: Nếu có máy chiếu, chiếu chương trình
soạn sẵn có chứa lệnh ghép Yêu cầu hs
chỉ ra lệnh ghép
Nếu có nhiều thời gian, gv có thể gõ từng
lệnh, giải thích và hướng dẫn cách gõ
Trang 32then-else để đỡ nhầm lẫn trong khi lập
HS: Lên bảng viết chương trình hoặc nếu
có máy chiếu gõ vào máy tính
V Bài tập về nhà
- Ôn tập lại bài học, trả lời các câu hỏi cuối bài
- Làm bài tập 1,2 và 4 trang 50
- Chuẩn bị trước nội dung bài tập và thực hành 2
VI Nhận xét rút kinh nghiệm:
Trang 33Ngày soạn:07/10/2009 Tuần: 9
Ngày giảng: / /2009 - Lớp 11A
Ngày giảng: / /2009 - Lớp 11A
Ngày giảng: / /2009 - Lớp 11A
Ngày giảng: / /2009 - Lớp 11A
Ngày giảng: / /2009 - Lớp 11A
II Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, SBT, tài liệu tham khảo.
2 Chuẩn bị của học sinh: Làm bài tập được giao, vở ghi, SGK, SBT.
III Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Kiểm tra bài cũ và dẫn nhập bài mới
2.1 Kiểm tra bài cũ:
- Kiểm tra trong quá trình làm bài tập
2.2 Dẫn nhập bài mới
- Hôm nay chúng ta sẽ làm một số bài tập giúp các em củng cố được kiến thứcbài 9: cấu trúc rẽ nhánh
3 Nội dung bài giảng
Hoạt động 1: Củng cố kiến thức chương I, II, III chuẩn bị cho tiết sau kiểm tra
Hoạt động 2: Hướng dẫn bài tập 4-sgk-tr51
Trang 34Tỡm nghiệm của phương trỡnh bậc nhất
ax+b=0 Xỏc định input, output của bài
toỏn và lập trỡnh chương trỡnh tỡm nghiệm
cho bài toỏn
HS: Chộp đề và làm bài
Hoạt động 4: Kiểm tra 15 phỳt
IV Củng cố bài
V Bài tập về nhà
- Làm lại bài tập hụm nay và làm thờm bài tập SBT
- ễn kỹ lý thuyết và làm nhiều bài tập để chuẩn bị giờ sau kiểm tra 1tiết
VI Nhận xột rỳt kinh nghiệm:
KIỂM TRA 15 PHÚT
I Mục tiờu đỏnh giỏ
- Đỏnh giỏ kết quả tiếp thu kiến thức để viết được một chương trỡnh đơn giản trong
ngụn ngữ lập trỡnh pascal
II Yờu cầu của đề
- Biết cỏch khai bỏo biến
- Biết cỏch viết biểu thức trong pascal
Khoanh tròn phơng án A, B, C, D mà bạn cho là đúng nhất.
Câu 1 : Trong NNLT Pascal để viết xâu kí tự "Chao cac ban" ta viết nh sau:
A “Chao ban” B “Chao ban’ C “Chao ban “ D ’Chao ban’ Câu 2 : Với a: real; b: real; khi nhập giá trị cho a, b từ bàn phím ứng với lệnh
Readln(a, b) ta đánh nh sau:
A 2.5 , 3 ↵ B 2.5 – 3↵ C 2.5 va 3 ↵ D 2.5 3 ↵
Câu 3 : Để thông báo giá trị của biến S (với khai báo var S : integer) ta viết
lệnh sau:
Trang 35Câu 7 : Trong ngôn ngữ lập trình Pascal, mệnh đề a ≠ 0 và d >0 đợc viết là
A a≠0 and d > 0 B a<>0 and d > 0
C (a <> 0) and (d > 0) D (a >< 0) and (d > 0)
Câu 8 : Với giá trị của a := 1.345 thì lệnh Write(a:4:2) cho kết quả trên màn
hình là:
Câu 9 : Trong Pascal để khai báo biến x là số nguyên, y số thực là viết:
A Const x = 1; y = 2.5; B Var x: real; y: integer;
C Var x: integer; y: Real; D Type x = integer; y = real;
Câu 10 : Trong NNLT Pascal phát biểu nào đúng khi nói về lệnh rẽ nhánh?
A Nếu sau THEN muốn thực hiện nhiều lệnh thì phải đặt các lệnh đó giữa
Begin và End;
B Nếu sau THEN muốn thực hiện nhiều lệnh thì phải đặt các lệnh đó giữa hai
dấu ngoặc đơn
C Nếu sau THEN muốn thực hiện nhiều lệnh thì phải đặt câu lệnh rẽ nhánh IF
giữa Begin và End;
D Nếu sau THEN muốn thực hiện nhiều lệnh thì phải thêm Else
Trang 36Ngày soạn: Tuần:10
KIỂM TRA 1 TIẾT
I Mục tiờu đỏnh giỏ
- Đỏnh giỏ kết quả tiếp thu cỏc bài 1,2,3,4,5,6,7,8,9 đó học.
II Yờu cầu của đề
- Biết cỏc ngụn ngữ lập trỡnh
- Biết phõn biệt cấu trỳc một chương trỡnh, phộp toỏn, biểu thức, cõu lệnh gỏn
- Biết cấu trỳc if-then
- Biết viết một chương trỡnh đơn giản
Khoanh tròn phơng án A, B, C, D mà bạn cho là đúng nhất.
Câu 1 : Chơng trình viết bằng ngôn ngữ bậc cao có u điểm:
A Ngắn gọn dễ hiểu, dễ hiệu chỉnh và nâng cấp, ít phụ thuộc vào loại máy
B Tốc độ thực hiện nhanh hơn so với chơng trình viết bẳng ngôn ngữ máy.
C Khai thác đợc tối đa các khả năng của máy.
D Viết dài, mất nhiều thời gian hơn so với viết chơng trình bằng ngôn ngữ máy Câu 2 : Cách khai báo biến nào đúng trong các cách khai báo sau:
A Var x,i: integer; B Var <x,y>: Real;
C Var x;i: char; D Var x i: boolean;
Câu 3: Cho A,B,X là các biến thực Trong số các lệnh sau, câu lệnh nào là đúng:
A IF A<B; THEN X:=X+1;
B IF A<B THEN X:=A+B;
C IF A<B THEN X=A ELSE X=B;
D IF A<B THEN X:=A; ELSE X:=B;
Câu 4 : Kết quả của phép chia 7 div 4:
Câu 5 : Trong ngôn ngữ lập trình Pascal, mệnh đề a ≠0 và a mod 2<>0 đợc viết là
A a≠0 and a mod 2<>0 B a<>0 and a mod 2<>0
C (a <> 0) and (a mod 2<>0) D (a >< 0) and (a mod 2<>0)
Câu 6 : Muốn nhập vào giá trị ba cạnh a,b,c của một tam giác ta phải sử dụng
Trang 37A sqrt(x) B sqr(x) C exp(x) D abs(x) Câu 8 : Trong ngôn ngữ lập trình Pascal, biểu thức −x+ y2 đợc viết là:
A -x+sqrt(y2) B -x + sqr ( y)
Câu 9 : Khai báo hằng bắt đầu bằng từ khoá:
Câu 10 : Cho đoạn chơng trình sau:
Trang 38write('Nhap canh a,b:'); readln(a,b);
if (a<0) and (b<0) then write('Yeu cau nhap a,b>0') else
Trang 39Ngày soạn:25/10/2009 Tuần: 11
I Mục đích, yêu cầu
1 Về kiến thức:
- Hiểu ý nghĩa của cấu trúc lặp.
- Hiểu nhu cầu cần sử dụng cấu trúc lặp trong biểu diễn thuật toán
- Hiểu đúng hai dạng lệnh lặp FOR trong NNLT pascal
- Kết hợp phương pháp giảng dạy thuyết trình, vấn đáp
III Chuẩn bị của giáo viên và học sinh
1 Chuẩn bị của giáo viên: Soạn giáo án, SGK, tài liệu tham khảo, máy chiếu, máy
tính, chương trình minh hoạ
2 Chuẩn bị của học sinh: Đọc trước bài mới, vở ghi lý thuyết, SGK.
IV Tiến trìn lên lớp, nội dung bài giảng
1 Ổn định lớp
- Ổn định lớp.
- Yêu cầu lớp trưởng báo cáo sĩ số
2 Kiểm tra bài cũ và dẫn nhập bài mới
2.1 Kiểm tra bài cũ
Câu hỏi: Cho biết kết quả của doạn chương trình sau
đó bằng các cấu trúc lặp Bài học hôm nay bài 10: “Cấu trúc lặp”.
3 Nội dung bài giảng
Hoạt động 1: Lặp
Trang 40GV: Đưa ra bài toán, yêu cầu học sinh tìm
cách để lập trình giải quyết bài toán này
1 Tính tổng của 10 số tự nhiên đầu tiên
2 Tính tổng của n số tự nhiên đầu tiên với
n <=10
Chia HS làm 3 nhóm để viết thuật toán
giải 2 bài toán trên
HS: Đưa ra cách giải của mình (có thể
cách giải của mỗi em là khác nhau)
GV: Tương tự xem bài toán SGK-42.
Xét 2 bài toán như sau với a>2 là số
1
1
+ + +
+
+
=
N a a
a
S
Cho đến khi 1 < 0 0001
+N a
GV: Phân tích và nhận xét.
-BT1: Việc tăng giá trị cho biến S được
lặp đi lặp lại 100 lầnLặp với số lần biết
trước
-BT2: Việc tăng giá trị cho biến S được
lặp đi lặp lại cho đến khi 1 < 0 0001
+N a
Lặp với số lần chưa biết trước
GV: Từ VD trên và nghiên cứu thêm ở
SGK hãy cho biết có mấy loại cấu trúc
- 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 chưa biết trước
Hoạt động 2: Lặp với số lần biết trước và câu lệnh for-do
GV: Đưa ra 2 thuật toán khác nhau để giải
B4: S= S + n rồi quay lai b2
2 Lặp với số lần biết trước và câu lệnh for-do
* Dạng lặp tiến:
- Cấu trúc:
FOR <biến đếm>:= <giá trị đầu> TO
<giá trị cuối> DO <câu lệnh>;