Theo di cc cu hỏi của gio vin v suy nghĩ thức đ được học trả lời - Cách khai báo kiểu mảng, khai báo + Đối với mảng một chiều biến kiểu mảng và tham chiếu đến từng Type tnkiểu=Array[chỉ [r]
Trang 1Thấy được sự cần thiết và tiện lợi khi sử dụng các ngôn ngữ lập trình bậc cao Liên
hệ được với quá trình giao tiếp trong đời sống
II PHƯƠNG TIỆN
- Giáo viên: Giáo án, sách giáo khoa, bảng, phấn, tài liệu,
- Học sinh: Vở ghi, sách giáo khoa tin học 11, bút,
III TIẾN TRÌNH TIẾT DẠY
1 Kiểm tra bài cũ
2 Kết nối:
GV: Có mấy cách mô tả thuật toán?
HS: Có 3 cách mô tả thuật toán:
- Mô tả bằng ngôn ngữ tự nhiên
- Mô tả bằng sơ đồ khối
- Mô tả bằng ngôn ngữ lập trình
GV: Mô tả thuật toán bằng ngôn ngữ tự
nhiên và bằng sơ đồ khối thì máy có thể
hiểu và thực hiện được không?
HS: Máy không thể hiểu và thực hiện
được
GV: Để máy có thể hiểu và thực hiện
được thì chúng ta phải mô tả thuật toán
bằng một ngôn ngữ lập trình cụ thể nào
đó
GV: Hoạt động để diễn đạt thuật toán
thông qua một ngôn ngữ lập trình được
gọi là lập trình
GV: Hãy phát biểu đầy đủ khái niệm lập
trình
HS: Xem SGK trả lời câu hỏi.
GV: Hãy phát biểu đầy đủ khái niệm
- Ngôn ngữ lập trình: là một phần mềm
dùng để diễn đạt thuật toán thành mộtchương trình giúp cho máy hiểu đượcthuật toán đó
Trang 2HS: - Gần gủi với ngôn ngữ tự nhiên.
- Có thể thực hiện được trên nhiều
loại máy
GV: Máy tính có thể trực tiếp hiểu và
thực hiện được chương trình viết bằng
ngôn ngữ lập trình bậc cao hay không?
HS: Không.
GV: Vậy làm thế nào để máy tính có thể
hiểu và thực hiện được chương trình viết
bằng ngôn ngữ bậc cao?
HS: Cần có một chương trình dịch để
dịch chương trình viết bằng ngôn ngữ
bậc cao sang ngôn ngữ máy sao cho máy
có thể hiểu và thực hiện được
GV: Chương trình dịch là gì?
HS: Dựa vào SGK khái niệm chương
trình dịch
GV: Bạn chỉ biết tiếng Việt, người
khách du lịch chỉ biết tiếng Anh, vậy thì
để giới thiệu về trường mình cho người
*) Thông dịch: Lần lượt dịch và thực
hiện từng câu lệnh
*) Biên dịch: Kiểm tra, phát hiện lỗi
và dịch toàn bộ chương trình nguồnthành một chương trình thực hiện trênmáy
3 Củng cố:
- Khái niệm lập trình và ngôn ngữ lập trình
- Có ba loại ngôn ngữ lập trình: Ngôn ngữ máy, hợp ngữ và ngôn ngữ lập trìnhbậc cao
- Khái niệm chương trình dịch
- Có 2 loại chương trình dịch: Thông dịch và biên dịch
4 Bài tập về nhà:
Học bài và làm bài tập ở cuối bài học
Trang 3- Biết một số khái niệm: tên, tên chuẩn, tên dành riêng, hằng và biến
- Học sinh ghi nhớ được các quy định về tên, hằng và biến trong một ngôn ngữ lậptrình
2 Kĩ năng:
- Phân biệt được tên, hằng và biến
- Biết cách đặt tên chúng và nhận biết được tên viết sai quy tắc
3 Thái độ: Rèn luyện cho HS tính nguyên tắc, chặt chẽ trong lập trình
II PHƯƠNG TIỆN
- Giáo viên: Giáo án, sách giáo khoa, bảng, phấn, tài liệu,
- Học sinh: Vở ghi, sách giáo khoa tin học 11, bút,
III TIẾN TRÌNH TIẾT DẠY
1 Kiểm tra bài cũ:
Câu hỏi: Khái niệm lập trình, ngôn ngữ lập trình?
Câu trả lời:
- Lập trình: là sử dụng cấu trúc dữ liệu và các câu lệnh của ngôn ngữ lập trình cụ
thể để mô tả dữ liệu và diễn đạt các thao tác của thuật toán
- Ngôn ngữ lập trình: là một phần mềm dùng để diễn đạt thuật toán thành một
chương trình giúp cho máy hiểu được thuật toán đó
2 Kết nối:
GV: Có những yếu tố nào dùng để xây
dựng nên ngôn ngữ tiếng Việt?
- Bảng chữ cái tiếng Việt, số, dấu
- Cách ghép các kí tự thành từ, ghép
các từ thành câu
- Ngữ nghĩa của từ và câu
GV: Trong ngôn ngữ lập trình cũng vậy,
nó cũng gồm 3 thành phần: Bảng chữ cái,
cú pháp và ngữ nghĩa
GV: Bảng chữ cái tiếng Anh gồm những
kí tự nào?
HS: Thảo luận theo nhóm trả lời câu hỏi.
GV: Hệ thập phân cần bao nhiêu chữ số
a) Bảng chữ cái: Bảng chữ cái các ngôn
ngữ lập trình nói chung không khácnhau nhiều Sau đây là bảng chữ cái củangôn ngữ Pascal:
- Các chữ cái thường và chữ cái hoacủa bảng chữ cái tiếng Anh:
a b c d ….z và A B C D … Z
- 10 chữ số thập phân: 0 1 2 3 4 5 6
7 8 9
- Các kí tự đặc biệt: + - * / = > <[ ] , ; # ^ $ @ & ( ) : ‘ _ (dấu
Trang 4GV: Hầu hết các ngôn ngữ đều sử dụng
dấu cộng (+) để chỉ phép cộng Giã thiết
A, B là đại lượng nhân giá trị nguyên và
X, Y là đại lượng nhận giá trị thực Khi
đó dấu “+” trong biểu thức A+B là cộng
2 số nguyên, còn trong biểu thức X+Y là
cộng 2 số thực
GV: Hãy cho biết phát biểu sau đây đúng
hay sai? Vì sao? “Chương trình nguồn bị
lỗi cú pháp thì chương trình đích cũng bị
lỗi cú pháp”
HS: Trả lời câu hỏi.
GV: Một chương trình mà chương trình
dịch không còn báo lỗi thì chương trình
đó đã đảm bảo hoàn toàn đúng hay chưa?
HS: Trả lời câu hỏi.
GV: Trình bày những hiểu biết của em
về tên dành riêng, cho ví dụ
HS: Tham khảo sách giáo khoa trả lời
câu hỏi
GV: Trình bày những hiểu biết của em
về tên chuẩn, cho ví dụ
HS: Tham khảo sách giáo khoa trả lời
câu hỏi
GV: Trình bày những hiểu biết của em
về tên do người lập trình tự đặt, cho ví
dụ
HS: Tham khảo sách giáo khoa trả lời
câu hỏi
GV: Cho biết các tên do người lập trình
tự đặt sau đây tên nào đúng và tên nào
c) Ngữ nghĩa xác định ý nghĩa thao tác
cần phải thực hiện, ứng với tổ hợp kí tựdựa vào ngữ cảnh của nó
* Ghi chú:
- Các lỗi cú pháp được chương trìnhdịch phát hiện và thông báo cho ngườilập trình biết Chỉ có các chương trìnhkhông còn lỗi cú pháp mới được dịchsang ngôn ngữ máy
- Các lỗi ngữ nghĩa khó phát hiện hơn.Chương trình dịch chỉ phát hiện được lỗi
cú pháp chứ không phát hiện được lỗingữ nghĩa Phần lớn các lỗi ngữ nghĩachỉ phát hiện khi thực hiện chương trìnhtrên dữ liệu cụ thể
2 Một số khái niệm:
a) Tên:
+) Tên dành riêng: là những tên được
ngôn ngữ lập trình quy định với ý nghĩariêng xác định (còn gọi là từ khoá),người dùng không được dùng với ýnghĩa khác
+) Tên chuẩn: là tên được ngôn ngữ lập
trình dùng với ý nghĩa riêng nào đó,người lập trình có thể định nghĩa lại đểdùng với ý nghĩa khác
+) Tên do người lập trình tự đặt: Tên
được đặt tuỳ ý, nhưng phải tuân thủ cácquy tắc sau:
- Không được dài quá 127 kí tự(Turbo pascal) và không dài quá 255
kí tự (Free Pascal)
- Không được chứa khoảng trắng(dấu cách)
- Không được bắt đầu bằng chữ số
- Không được chứa các kí tự đặcbiệt
- Không được trùng với tên dànhriêng
b) Hằng và biến:
- Hằng là đại lượng có giá trị không thay
Trang 5GV: Phần chú thích có ảnh hưởng đến
nội dung của chương trình không? Và có
phần chú thích để làm gì?
HS: Trả lời câu hỏi.
đổi trong quá trình thực hiện chươngtrình, gồm có hằng số học, hằng logic,hằng chuỗi
- Biến là đại lượng được đặt tên, dùng đểlưu trữ giá trị và giá trị có thể được thayđổi trong quá trình thực hiện chươngtrình
c) Ghi chú: Phần chú thích không ảnh
hưởng đến nội dung của chương trình vàgiúp người đọc hiểu chương trình dễhơn Pascal đoạn chú thích được đặttrong cặp dấu hoặc cặp dấu (* *) C++được đặt trong cặp dấu /* */
Trang 62 Kĩ năng:
- Xác định được tên đúng, tên sai, tên chuẩn, từ khoá
- Biết viết hằng và tên đúng trong một ngôn ngữ lập trình cụ thể
II PHƯƠNG TIỆN
- Giáo viên: Giáo án, sách giáo khoa, bảng, phấn, tài liệu,
- Học sinh: Vở ghi, sách giáo khoa tin học 11, bút,
III TIẾN TRÌNH TIẾT DẠY
1 Kiểm tra bài cũ
Câu hỏi: Hằng là gì? Biến là gì? Có những đại lượng hằng nào?
GV: Ghi câu hỏi lên bảng và gọi 1
HS lên bảng trả lời câu hỏi
HS: Lên bảng trả lời câu hỏi.
GV: Nhận xét, đánh giá và cho
điểm
GV: Ghi câu hỏi lên bảng và gọi 1
HS lên bảng trả lời câu hỏi
HS: Lên bảng trả lời câu hỏi.
- Chương trình viết bằng ngôn ngữ lậptrình bậc cao chạy được trên nhiều loạimáy
- Chương trình viết bằng ngôn ngữ lậptrình bậc cao dễ đọc hiểu, dễ hiệu chỉnh và
dễ nâng cấp
- Ngôn ngữ bậc cao cho phép làm việcvới nhiều kiểu dữ liệu và cách tổ chức dữliệu đa dạng, thuận tiện cho mô tả thuậttoán
Câu 2: Chương trình dịch là gì? Tại sao phải
Trang 7GV: Hãy cho biết Input và Output
của chương trình dịch?
HS: Tra lời câu hỏi.
GV: Ghi câu hỏi lên bảng và gọi 1
HS lên bảng trả lời câu hỏi
HS: Lên bảng trả lời câu hỏi.
GV: Nhận xét, đánh giá và cho
điểm
GV: Ghi câu hỏi lên bảng và gọi 1
HS lên bảng trả lời câu hỏi
HS: Lên bảng trả lời câu hỏi.
GV: Nhận xét, đánh giá và cho
điểm
GV: Ghi câu hỏi lên bảng và gọi 1
HS lên bảng trả lời câu hỏi
HS: Lên bảng trả lời câu hỏi.
GV: Nhận xét, đánh giá và cho
điểm
GV: Ghi câu hỏi lên bảng và gọi 1
HS lên bảng trả lời câu hỏi
có chương trình dịch?
Đáp án:
- Chương trình dịch là chương trình có chứcnăng chuyển đổi chương trình viết bằngngông ngữ lập trình bậc cao thành chươngtrình thực hiện được trên máy
- Vì máy tính không thể hiểu và thực hiệnđược chương trình viết bằng ngôn ngữ bậccao, vì vậy cần có chương trình dịch để dịchchương trình viết bằng ngôn ngữ bậc caosang chương trình thực hiện được trên máy
Câu 3: Thông dịch và biên dịch khác nhau
như thế nào?
Đáp án:
- Trình biên dịch duyệt, kiểm tra, phát hiệnlỗi, xác định chương trình nguồn có dịchđược không, dịch toàn bộ chương trình nguồnthành chương trình đích có thể thực hiện trênmáy và có thể lưu trữ lại để sử dụng về saukhi cần thiết
- Trình thông dịch lần lượt dịch từng câu lệnh
ra ngôn ngữ máy rồi thực hiện ngay câu lệnhvừa dịch được hoặc báo lỗi nếu không dịchđược
Câu 4: Hãy cho biết điểm khác nhau giữa tên
chuẩn và tên dành riêng? Kể ra 3 tên chuẩn
và 3 tên dành riêng trong ngôn ngữ Pascal
Đáp án: - Tên dành riêng không được dùng
với ý nghĩa đã xác định, tên chuẩn có thểđịnh nghĩa lại và dùng với ý nghĩa khác
- 3 tên chuẩn: real, integer, sqrt
- 3 tên dành riêng: Program, BEGIN,
End
Câu 5: Hãy nêu quy tắc đặt tên trong Pascal
và cho biết các tên sau tên nào đúng tên nàosai? Tại sao? (theo quy tắc đặt tên trongPascal)
A45; A BC; 6ABC, A#BC
Đáp án:
- Quy tắc đăt tên trong ngôn ngữ Pascal:
+ Không được dài quá 127 kí tự (TurboPascal) và không dài quá 255 kí tự (FreePascal)
+ Không được trùng tên với tên chuẩn.+ Không được chứa dấu cách và các kí
tự đặc biệt
Trang 8HS: Lên bảng trả lời câu hỏi.
- A#BC là tên sai, vì chứa kí tự đặc biệt
Câu 6: Hãy cho biết những biểu diễn nào
dưới đây không phải là biểu diễn hằng trongPascal và chi rõ lỗi trong từng trường hợp:a)150.0 b) -22 c) 6,23 d) ‘43’e)A20 f) 1.06E-15 g) 4+6 h) ‘Ci) ‘TRUE”
Đáp án: c, e, h
3 Củng cố:
Ghép một câu ở cột 1 và một câu thích hợp ở cột 2 ở bảng sau:
(1) Biên dịch (A) là đại lượng có giá trị không đổi trong quá trình thực
(C) là những đại lượng được đặt tên, dùng để lưư trử giá trị
và giá trị có thể được thay đổi trong quá trình thực hiện chương trình
(4) Biến.
(D) Dịch toàn bộ chương trình nguồn thành một chương
trình đích có thể thực hiện trên máy và có thể lưu trữ để sử dụng lại khi cần thiết
(5) Hằng (E) Phải được chuyển đổi thành chương trình trên ngôn ngữmáy mới có thể thực hiện được.
4 Bài tập về nhà:
Học bài và làm bài tập ở cuối bài học
Trang 9- Hiểu chương trình là sự mô tả của thuật toán bằng một ngôn ngữ lập trình.
- Biết cấu trúc của một chương trình đơn giản: cấu trúc chung và các thành phần
2 Kĩ năng:
- Nhận biết được các thành phần của một chương trình đơn giản
- Xác định kiểu cần khai báo của dữ liệu đơn giản
3 Thái độ:
Xác định thái độ nghiêm túc trong học tập khi làm quen với nhiều qui địnhnghiêm ngặt trong lập trình
II PHƯƠNG TIỆN
- Giáo viên: Giáo án, sách giáo khoa, bảng, phấn, tài liệu,
- Học sinh: Vở ghi, sách giáo khoa tin học 11, bút,
III TIẾN TRÌNH TIẾT DẠY
1 Kiểm tra bài cũ
Câu hỏi: Nêu quy tắc đặt tên trong ngôn ngữ lập trình Pascal?
Câu trả lời:
- Không được dài quá 127 kí tự (Turbo pascal) và không dài quá 255 kí tự(Free Pascal)
- Không được chứa khoảng trắng (dấu cách)
- Không được bắt đầu bằng chữ số
- Không được chứa các kí tự đặc biệt
- Không được trùng với tên dành riêng
2 Kết nối:
GV: Cấu trúc của một chương trình bao gồm
HS: Phần khai báo có thể có hoặc không, phần
thân chương trình bắt buộc phải có
GV: Tên chương trình không bắt buộc phải có,
nếu có thì phải bắt đầu bằng từ khoá Program,
còn tên chương trình phải được đặt theo đúng
quy tắc của ngôn ngữ lập trình
GV: Mỗi ngôn ngữ lập trình có sẵn một số thư
1 Cấu trúc của một chương trình:
[<phần khai báo>]
<Phần thân 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:
Program <Tên chương trình>;
VD: Program Vi_du1;
Program Giai_phuong_trinh;
- Khai báo thư viện: Uses < DS Tên thư
Trang 10viện, mỗi thư viện cung cấp cho chúng ta một
số chương trình thông dụng Chúng ta phải
khai báo sử dụng thư viện trước khi sử dụng
các chương trình trong thư viện đó
GV: Cách khai báo biến sẽ được học kĩ hơn ở
phần sau
GV: Theo cách biểu diễn trên thì phần thân
chương có thể không có lệnh nào được hay
không?
HS: Có.
GV: Phần thân của chương trình có thể có rất
nhiều lệnh phụ thuộc vào chương trình
GV: Ở ví dụ 1 ta có thể bỏ bớt phần nào mà
cũng không ảnh hưởng đến NỘI DUNG của
chương trình?
HS: Progran Vi_du1;
GV: Hãy chỉ rõ phần nào là phần khai báo,
phần nào là phần thân của chương trình?
- Khai báo biến:
Var <DS tên biến>:<Kiểu dữ liệu>;
“Xin chao cac ban!”,
“Moi cac ban lam quen voi Pascal”.Program Vi_du2;
Uses Crt;
Begin
Clrscr;
Writeln(‘Chao cac ban!’);
Writeln(‘Moi cac ban lam quen voipascal’);
Trang 11Học bài cũ, xem trước bài học số 4 và chuẩn bị một số kiến thức về thuật toán sau:
- Giải phương trình bậc nhất 1 ẩn: ax+b=0.
- Giải phương trình bậc hai 1 ẩn: ax2+bx+c=0 (a0)
Tìm USCLN(a,b); BSCLN(a,b)
Trang 12- Biết một số kiểu dữ liệu chuẩn: nguyên, thực, kí tự, lôgic.
- Xác định được kiểu khai báo của dữ liệu đơn giản
- Hiểu cách khai báo biến, biết khai báo biến đúng
2 Về kỹ năng:
- Khai báo biến đúng, nhận biết khai báo sai
- Xác định kiểu cần khai báo của dữ liệu đơn giản
3 Thái độ:
Xác định thái độ nghiêm túc trong học tập khi làm quen với nhiều qui định nghiêmngặt trong lập trình
II PHƯƠNG TIỆN
- Giáo viên: Giáo án, sách giáo khoa, bảng, phấn, tài liệu,
- Học sinh: Vở ghi, sách giáo khoa tin học 11, bút,
III TIẾN TRÌNH TIẾT DẠY
1 Kiểm tra bài cũ:
Câu hỏi: Nêu cấu trúc chung của một chương trình? Phần khai báo báo
gồm những khai báo nào?
Câu trả lời:
+ Cấu trúc của một chương trình:
[<phần khai báo>]
<Phần thân chương trình>
+ Phần khai báo bao gồm: Khai báo tên chương trình, khai báo thư viện, khai
báo hằng, khai báo biến
2 Kết nối:
GV: Một số kiểu dữ liệu chuẩn là
những kiểu nào?
HS: Dựa vào SGK trả lời câu hỏi.
GV: Tập số nguyên là vô hạn và có
thứ tự, đếm được nhưng trong máy
tính kiểu nguyên là hữu hạn, có thứ
tự Kiểu số nguyên cho kết quả là số
đúng, nhưng hạn chế về miền giá trị
GV: Các kiểu số thực cho kết quả tính
toán là gần đúng với sai số không
đáng kể, nhưng miền giá trị được mỡ
rộng hơn kiểu nguyên Cũng như
kiểu nguyên, kiểu số thực trong máy
là rời rạc và hữu hạn
I Một số kiểu dữ liệu chuẩn: Kiểu số
nguyên, số thực, kiểu kí tự, kiểu lôgic
1 Kiểu nguyên:
SGK
2 Kiểu số thực:
SGK
* Ghi chú: - Cần phải khai báo đúng kiểu
dữ liệu chuẩn để tiết kiệm bộ nhớ của
Trang 13GV: Kiểu kí tự là các kí tự thuộc bộ
mã ASCII
GV: Kiểu logic trong Pascal chỉ gồm
2 giá trị là False (sai) và True (đúng)
Kiểu Logic cũng là kiểu dữ liệu đếm
được với True có giá trị là 1 và False
có giá trị là 0
GV: Nêu cú pháp khai báo biến?
HS: Dựa vào SGK trả lời câu hỏi.
GV: Hãy khai báo 1 biến KT thuộc
kiểu kí tự, 1 biến Tuoi thuộc kiểu số
nguyên Byte, một biến DTB thuộc
kiểu số thực và một biến Dk thuộc
kiểu logic
GV: Khi khai báo một biến ta cần
quan tâm đến yếu tố nào:
HS: Bộ nhớ lưu trữ và phạm vi giá trị.
máy tính và độ chính xác của dữ liệu
- Số thực thường thích hợp với những đạilượng lớn và có độ chính xác cao
Trang 14KIỂM TRA 15 PHÚT (lần 1)
Đề: Nêu cấu trúc chung của một chương trình? Phần khai báo có thể có những khai báo
nào, viết cú pháp khai báo và cho ví du trong ngôn ngữ lập trình Pascal
Đáp án:
- Cấu trúc của một chương trình:
[<phần khai báo>]
<Phần thân chương trình>
- Phần khai báo gồm: Khai báo tên chương trình, khai báo thư viện, khai báo hằng,
khai báo biến
+ Khai báo tên chương trình: Program <Tên chương trình>;
Trang 15- Biết được các phép toán thông dụng trong ngôn ngữ lập trình.
- Biết diễn đạt một biểu thức trong ngôn ngữ lập trình
- Biết được chức năng của lệnh gán
- Biết được cấu trúc của lệnh gán và một số hàm chuẩn thông dụng trong ngôn ngữlập trình pascal
2 Kĩ năng:
- Sử dụng được các phép toán để xây dựng biểu thức
- Sử dụng được lệnh gán để viết chương trình
3 Thái độ:
Xác định thái độ nghiêm túc trong học tập khi làm quen với nhiều qui định nghiêmngặt trong lập trình
II PHƯƠNG TIỆN
- Giáo viên: Giáo án, sách giáo khoa, bảng, phấn, tài liệu,
- Học sinh: Vở ghi, sách giáo khoa tin học 11, bút,
III TIẾN TRÌNH TIẾT DẠY
1 Kiểm tra bài cũ:
Câu hỏi: Kể tên các kiểu dữ liệu chuẩn đã học? Cho biết phạm vi, dung
lượng lưu trữ một giá trị?
Trang 162 Kết nối:
GV: Cho biết các phép toán đối với số
nguyên trong toán học và kí hiệu của
nó
HS: Xem SGK trả lời câu hỏi.
GV: Cho biết các phép toán đối với số
thực trong toán học và kí hiệu của nó
HS: Xem SGK trả lời câu hỏi.
GV: Cho biết các phép toán quan hệ và
các phép toán logic?
HS: Xem SGK trả lời câu hỏi.
GV: Cho biết quy tắc viết biểu thức số
học?
HS: Xem SGK trả lời câu hỏi.
GV: Cho biết trình tự thực hiện của
các phép toán trong biểu thức?
HS: Xem SGK trả lời câu hỏi.
GV: Cho biết các hàm chuẩn thường
dùng trong Pascal?
HS: Xem SGK trả lời câu hỏi.
GV: Nêu cú pháp của biểu thức quan
hệ?
HS: Xem SGK trả lời câu hỏi.
GV: Biểu thức logic đơn giản là gì?
HS: Xem SGK trả lời câu hỏi.
+ Viết lần lượt từ trái qua phải
+ Không được bỏ qua dấu nhân (*) trong tích
Trong đó: Biểu thức 1, biểu thức 2 cùng
là xâu hoặc cùng là biểu thức số học
- Ví dụ: ‘Tin hoc’ < ‘Tin hoc A’;
x<5;
i+1<=2*j;
Nếu x có giá trị là 3 thì x<5 cho giá trị True Nếu i có giá trị bằng 2 và j có giá trị bằng 3 thì i+1<=2*j cho giá trị là False
5 Biểu thức logic:
Trang 17GV: Cho biết cú pháp của câu lệnh
gán
HS: Xem SGK trả lời câu hỏi.
- Biểu thức logic đơn giản là biến logic hoặc hằng logic
- Biểu thức logic là biểu thức logic đơn giản, các biểu thức quan hệ liên kết với nhau bởi phép toán logic
Ví dụ1: not(x<1) > “x không nhỏ hơn
Trang 18- Biết ý nghĩa của thủ tục vào/ra chuẩn đối với lập trình.
- Biết được cấu trúc chung của thủ tục vào ra trong ngôn ngữ lập trình Pascal
2 Kĩ năng:
- Viết đúng lệnh vào/ra dữ liệu
- Biết nhập đúng dữ liệu khi thực hiện chương trình
3 Thái độ:
Xác định thái độ nghiêm túc trong học tập khi làm quen với nhiều qui định nghiêmngặt trong lập trình
II PHƯƠNG TIỆN
- Giáo viên: Giáo án, sách giáo khoa, bảng, phấn, tài liệu,
- Học sinh: Vở ghi, sách giáo khoa tin học 11, bút,
III TIẾN TRÌNH TIẾT DẠY
1 Kiểm tra bài cũ:
Câu hỏi:
- Nêu quy tắc viết biểu thức số học và trình tự thực hiện các phép toán?
- Nêu các hàm số học thường dùng trong Pascal?
Câu trả lời:
- Quy tắc viết biểu thức số học:
+ Chỉ dùng cặp ngoặc tròn để xác định trình tự thực hiện phép toán trong trường hợp cần thiết
+ Viết lần lượt từ trái qua phải
+ Không được bỏ qua dấu nhân (*) trong tích
- Trình tự thực hiện các phép toán:
+ Thực hiện các phép toán trong ngoặc trước
+ Trong dãy các phép toán không chứa ngoặc thì thực hiện từ trái qua phải,theo thứ tự: *, /, div, mod, +, -
- Các hàm số học thường dùng: Sqr(x), Sqrt(x), abs(x), ln(x), exp(x), Sin(x),
Cos(x)
2 Kết nối:
GV: Trong các bước để giải một bài toán
trong tin học thì bước xác định bài toán có
nghĩa là ta đi xác định cái gì?
HS: Xác định Input và Ouput của bài toán.
GV: Cho biết cú pháp của thủ tục nhập dữ
liệu trong ngôn ngữ lập trình Pascal
HS: Dựa vào sách giáo khoa trả lời câu hỏi.
GV: Viết 2 thủ tục nhập giá trị cho biến k và
Read(<Danh sách các biến vào>);
Hoặc Readln(<Danh sách các biến
vào>);
- Ý nghĩa: Nhận giá trị được gõ từ bàn
phím và gán cho danh sách các biến(Mỗi biến cách nhau bởi phím cáchhoặc phím Enter)
Trang 19GV: Cho biết cú pháp của thủ tục xuất dữ
liệu trong ngôn ngữ lập trình Pascal
HS: Dựa vào sách giáo khoa trả lời câu hỏi.
GV: Thủ tục Write khác với Writeln chỗ
nào?
HS: trả lời câu hỏi.
GV: Cho biết kết quả hiện ra màn hình của 2
HS: Trả lời câu hỏi.
GV: Viết chương trình minh hoa.
HS: Xem, nghe giảng và ghi chép.
- Ý nghĩa: Thủ tục (1) đưa danh sách
kết quả ra màn hình và con trỏ nằm ngaysau kết quả cuối cùng, thủ tục (2) sau khiđưa danh sách kết quả ra màn hình thìcon trỏ xuống đầu dòng tiếp theo, cònthủ tục (3) không ghi gì hết đưa con trỏxuống một dòng
- Ví dụ:
Write(‘Nhap he so k=’); Readln(k);Writeln(‘Nhap he so a, b, c:’);
Readln(a,b,c);
* Chú ý: Trang 31-SGK
3 Ví dụ áp dụng: Viết chương trình
nhập vào 2 số nguyên Tính và in ra mànhình tổng của 2 số nguyên vừa nhập
Trang 20- 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 Turbol 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 dựa vào thông báo lỗi của chương trình dịch và tính hợp lí của kết quả thu được
3 Thái độ:
Xác định thái độ nghiêm túc trong học tập khi làm quen với nhiều qui định nghiêmngặt trong lập trình
II PHƯƠNG TIỆN
- Giáo viên: Giáo án, sách giáo khoa, bảng, phấn, tài liệu,
- Học sinh: Vở ghi, sách giáo khoa tin học 11, bút,
III TIẾN TRÌNH TIẾT DẠY
1 Kiểm tra bài cũ:
Câu hỏi:
- Ngôn ngữ lập trình Pascal có những phép toán nào?
- Cú pháp câu lệnh gán trong ngôn ngữ lập trình Pascal được trình bày như thế nào?
- Cho ví dụ về câu lệnh gán trong ngôn ngữ lập trình Pascal
Câu trả lời:
- Cú pháp và ý nghĩa thủ tục nhập dữ liệu:
+ Cú pháp:
Read(<Danh sách các biến vào>);
Hoặc Readln(<Danh sách các biến vào>);
+ Ý nghĩa: Nhận giá trị được gõ từ bàn phím và gán cho danh sách các
+ Ý nghĩa: Thủ tục (1) đưa danh sách kết quả ra màn hình và con trỏ nằm
ngay sau kết quả cuối cùng, còn thủ tục (2) sau khi đưa danh sách kết quả ra màn hình thì con trỏ xuống đầu dòng tiếp theo
2 Kết nối:
GV: Nêu các cách để khởi động Turbo
Pascal
I Soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình:
Trang 21HS: Lăng nghe và ghi bài.
GV: Soạn thảo chương trình là gì?
HS: Gõ NỘI DUNG của chương trình.
GV: Nêu các bước để lưu một chương
trình?
HS: Dựa vào SGK trả lời câu hỏi.
GV: Nêu các thao tác biên dịch, đóng
cửa sổ chương trình, thoát khỏi chương
trình
HS: Dựa vào SGK trả lời câu hỏi.
GV: Thực hiện khởi động chường trình
Turbo Pascal và soạn chương trình: Nhập
vào 2 số nguyên Tính và in ra màn hình
tổng của 2 số nguyên vừa nhập
Thực hiện các thao tác lưu chương trình,
kiểm tra, sửa lỗi và thực hiện chương
Trang 22- Biết phânbiệt các loại biểu thức trong NNLT
- Làm quen các dịch vụ chủ yếu của Turbo Pascal trong việc soạn thảo, lưu, dịch, thực hiện chương trình
2 Kĩ năng
Viết được các biểu thức số học và logic với các phép toán thông dụng
- Bước dầu biết phân tích và hoàn thành chương trình đơn giản trên Pascal
3 Thái độ:
Xác định thái độ nghiêm túc trong học tập khi làm quen với nhiều qui định nghiêmngặt trong lập trình
II PHƯƠNG TIỆN
- Giáo viên: Giáo án, sách giáo khoa, bảng, phấn, tài liệu,
- Học sinh: Vở ghi, sách giáo khoa tin học 11, bút,
III TIẾN TRÌNH TIẾT DẠY
1 Kiểm tra bài cũ:
Câu hỏi: Kết hợp trong bài học
2 Kết nối:
Câu 1: Cho biết sự khác nhay giữa hằng
- Hằng là đại lượng có giá trị không thay
đổi trong quá trình thực hiện chương trình
- Biến là đại lượng có thể bị thay đổi
trong quá trình thực hện chương trình
- Khai báo biến để cho chương trình dịch biết để lưu trữ và xử lí
- Biến đó có thể được khai báo bằng các kiểu dữ liệu là: Integer, Word, Longint
- Biến P có thể khai báo bởi kiểu số
nguyên byte, integer, word, longint haykiểu số thực real, extended
- Biến X có thể khai báo bởi kiểu số thực
real hoặc extended
Đáp án đúng là: B, D
- Diện tích S nhỏ nhất là 10000 và lớn nhất là 40000.
Trang 23Câu 6: (Trang 35-SGK) Hãy viết biểu
thức toán học dưới đây trong Pascal:
31
y x z
a z a
Câu 7: (Trang 36-SGK) Chuyển biểu
thức Pascal thành biểu thức toán học
HS: Input: Độ dài 3 cạnh của tam giác.
Output: Diện tích, Chu vi của tam
HS: Lên bảng viết chương trình.
- S khai báo thuộc kiểu Word là đúng và
) b
c ac
)2
b d
a b
Bài 8: Viết chương trình nhập vào độ dài 3 cạnh của tam giác In ra màn hình diện tích, chu vi của nó.
Trang 24- Biết phânbiệt các loại biểu thức trong NNLT
- Làm quen các dịch vụ chủ yếu của Turbo Pascal trong việc soạn thảo, lưu, dịch, thực hiện chương trình
2 Kĩ năng
Viết được các biểu thức số học và logic với các phép toán thông dụng
- Bước dầu biết phân tích và hoàn thành chương trình đơn giản trên Pascal
3 Thái độ:
Xác định thái độ nghiêm túc trong học tập khi làm quen với nhiều qui định nghiêmngặt trong lập trình
II PHƯƠNG TIỆN
- Giáo viên: Giáo án, sách giáo khoa, bảng, phấn, tài liệu,
- Học sinh: Vở ghi, sách giáo khoa tin học 11, bút,
III TIẾN TRÌNH TIẾT DẠY
1 Kiểm tra bài cũ:
Câu hỏi: Kết hợp trong bài học
2 Kết nối:
GV: Cho biết Input và Output của bài
toán?
HS: Input: Thời gian tính bàng giây.
Output: Giời, phút, giây
HS: Lên bảng viết chương trình.
GV: Cho biết Input và Output của bài
toán?
HS: Input: Độ dài a.
Output: Diện tích phần gạch chéo
Bài 1: Nhập vào thời gian một công việc nào đó là x giây Hãy chuyển đổi
và viết ra màn hình số thời gian trên dưới dạng bằng bao nhiêu giờ, bao nhiêu phút, bao nhiêu giây.
Trang 25HS: Lên bảng viết chương trình.
GV: Cho biết Input và Output của bài
Trang 26- Biết được một chương trình Pascal hoàn chỉnh.
- Làm quen các dịch vụ chủ yếu của Turbo Pascal trong việc soạn thảo, lưu, dịch, thực hiện chương trình
2 Kĩ năng
- Soạn thảo được chương trình, lưu lên đĩa, dịch lỗi cú pháp, thực hiện và tìm lỗi thuật toán và hiệu chỉnh
- Bước dầu biết phân tích và hoàn thành chương trình đơn giản trên Pascal
3 Thái độ: Tự giác, tích cực và chủ động trong thực hành
II PHƯƠNG TIỆN
- Giáo viên: Giáo án, sách giáo khoa, bảng, phấn, tài liệu,
- Học sinh: Vở ghi, sách giáo khoa tin học 11, bút,
III TIẾN TRÌNH TIẾT DẠY
1 Kiểm tra bài cũ:
Câu hỏi: Cho biết chức năng của các phím và tổ hợp phím sau: F2, F3,
- Hãy cho biết cú pháp khai báo tên
chương trình, khai báo thư viện, khai
báo hằng và khai báo biến?
- Yêu cầu học sinh gõ chương trình
Giai_PTB2 trong SGK.
- Quan sát và hướng dẫn việc soạn
thảo chương trình của học sinh
- Cú pháp khai báo tên chương trình:
Program <Tên chương trình>;
- Cú pháp khai báo thư viện:
Uses <Tên thư viện>;
- Khai báo hằng:
Const <Tên hằng> = <Giá trị>;
- Khai báo biến:
Var <Danh sách biến> : <Kiểu dữ liệu>;
Trang 27- GV yêu cầu học sinh lưu lại chương
trình vừa soạn thảo với tên
PTB2.PAS lên đĩa.
- Yêu cầu học sinh dịch, kiểm tra và
sửa lỗi của chương trình (nếu có)
- GV yêu cầu học sinh chạy thử
chương trình với các bộ đầu vào đã
cho trong SGK và quan sát kết quả
nhận được
- GV yêu cầu HS chạy lại chương
trình với bộ đầu vào khác (1, 0, -2)
- Sửa lại chương trình trên sao cho
không dùng biến trung gian D Thực
hiện chương trình với các bộ dữ liệu
như trên
- Sửa lại chương trình nhận được ở
câu c) bằng cách thay đổi công thức
tính x2 (có 2 cách để tính x2)
- Chạy chương trình với các bộ đầu
vào đã cho trong mục h và I, quan sát
h) Thực hiện chương trình đã sửa với bộ dữ
liệu1; -5; 6 Quan sát kết quả hiện trên mànhình (x1=2.00 x2=3.00)
i) Thực hiện chương trình với bộ dữ liệu 1;
1; 1 và quan sát kết quả trên màn hình
3 Củng cố:
Khởi động Tubo Pascal, soạn thảot, lưu trữ, dịch và thực hiện chương trình
4 Bài tập về nhà:
Thực hành lại các bài tập đã làm
Trang 29Ngày soạn:
Tiết CT: 13
Bài 9: CẤU TRÚC RẼ NHÁNH
I MỤC TIÊU:
- Hiểu nhu cầu của cấu trúc rẽ nhánh trong việc giải quyết các bài toán
- Hiểu cơ chế hoạt động của câu lệnh rẽ nhánh dạng thiếu và dạng đủ
- Hiểu câu lệnh ghép
- Sử dụng được cấu trúc rẽ nhánh để mô tả thuật toán của một số bài toán đơn giản
- Viết được các lệnh rẽ nhánh áp dụng trong một số trường hợp đơn giản
II CÁC KỸ NĂNG ĐẠT ĐƯỢC:
Kỹ năng tư duy sáng tạo, kỹ năng lắng nghe tích cực, kỹ năng tự nhận thức, kỹ năng kiềm chế cảm xúc, kỹ năng tìm kiếm sự hỗ trợ…
III PHƯƠNG PHÁP/ KỸ THUẬT:
Sử dụng phương pháp thuyết trình có minh họa kết hợp vấn đáp
IV PHƯƠNG TIỆN:
- Giáo viên: Giáo án, sách giáo, máy chiếu, máy tính, phần mềm pascal…
- Học sinh: Vở ghi, giấy nháp, sách giáo khoa…
V TIẾN TRÌNH TIẾT DẠY
1 Khám phá:
- Ổn định lớp.
- Bài cũ:
2 Kết nối:
GV: Nêu ví dụ thực tiển có rất nhiều việc
chỉ được thực hiện khi một điều kiện nào
đó được thỏa mãn
VD:
- Nếu ngày mai trời nắng Nam sẽ
đi đá bóng.
- Nếu ngày mai trời nắng Nam sẽ
đi đá bóng, ngược lại Nam ở nhà xem ti
vi.
GV: Yêu cầu học sinh tìm thêm một số ví
dụ một việc nào đó trong thực tiển mà chỉ
được thực hiện khi thỏa một điều kiện nào
đó?
HS: Đưa ra các ví dụ.
GV: Nêu cú pháp của câu lệnh rẽ nhánh
dạng khuyết?
HS: Dựa vào SGK trả lời câu hỏi.
GV: Vẽ sơ đồ khối mô tả hoạt động của
Trang 30GV: Nêu ý nghĩa của câu lệnh rẽ nhánh
dạng khuyết?
HS: Dựa vào SGK trả lời câu hỏi.
GV: Hãy viết đoạn lệnh sử dụng cấu trúc
rẽ nhánh dạng khuyết tìm giá trị lớn nhất
của 2 số a, b được nhập vào
HS: Viết đoạn chương trình tìm Max.
GV: Nêu cú pháp của câu lệnh rẽ nhánh
dạng đủ?
HS: Dựa vào SGK trả lời câu hỏi.
GV: Vẽ sơ đồ khối mô tả hoạt động của
câu lệnh if dạng đủ?
HS: Dựa vào SGK để vẽ sơ đồ khối.
GV: Nêu ý nghĩa của câu lệnh rẽ nhánh
dạng đủ?
HS: Dựa vào SGK trả lời câu hỏi.
GV: Hãy viết đoạn lệnh sử dụng cấu trúc
rẽ nhánh dạng đủ tìm giá trị lớn nhất, nhỏ
nhất của 2 số được nhập vào
HS: Viết đoạn chương trình tìm Max,
Min.
GV: Lệnh ghép là gì? Nêu cú pháp câu
lệnh ghép
HS: Dựa cào SGK trả lời câu hỏi.
GV: Hãy viết đoạn chương trình tìm Max,
min của 2 số a, b nhập vào
HS: Viết đoạn chương trình tìm Max,
If Max<b then Max:=b;
(vd2) Kiểm tra số a có phải là sốchẵn hay không?
If a mod 2=0 then Write(‘a la sochan’);
b) Dạng đủ:
- Cú pháp: if <Điều kiện> then <Câu lệnh
1>
Else <Câu lệnh 2>;
- Ý nghĩa: Nếu điều kiện đúng thì thực hiện
câu lệnh 1, ngược lại thì thực hiện câu lệnh2
- Ví dụ:
(1) Tìm Max, Min của a, b:
If a>b then Max:=aElse Min:=b;
(2) Kiểm tra a là chẵn hay lẻ:
If a mod 2=0 then write(‘a la sochan’)
Else write(‘a la so le’);
Trang 31GV: Viết chương trình nhập vào 2 số a, b
bất kỳ In ra màn hình số lớn nhất (Max)
Chương trình giải phương trình bậc nhất
ax+b=0
HS: Lên bảng viết chương trình.
GV: Kiểm tra và sửa lỗi (nếu có).
trong cặp từ khóa BEGIN End;
- Câu lệnh trước từ khóa Else không có dấu
4 Vận dụng: Viết chương trình giải và biện luận PTB2: ax2+bx+c=0 (a≠0)
VI RÚT KINH NGHIỆM
Trang 32
- Biết sử dụng đúng hai dạng lệnh lặp For trong ngôn ngữ lập trình Pascal.
- Viết đúng các lệnh lặp kiểm tra điều kiện trước, lệnh lặp với số lần định trước
- Bước đầu sử dụng được lệnh lặp For để lặp trình giải các bài toán đơn giản.
II CÁC KỸ NĂNG ĐẠT ĐƯỢC:
Kỹ năng tư duy sáng tạo, kỹ năng lắng nghe tích cực, kỹ năng tự nhận thức, kỹ năng kiềm chế cảm xúc, kỹ năng tìm kiếm sự hỗ trợ…
III PHƯƠNG PHÁP/ KỸ THUẬT:
Sử dụng phương pháp thuyết trình có minh họa kết hợp vấn đáp
IV PHƯƠNG TIỆN:
- Giáo viên: Giáo án, sách giáo, máy chiếu, máy tính, phần mềm pascal…
- Học sinh: Vở ghi, giấy nháp, sách giáo khoa…
V TIẾN TRÌNH TIẾT DẠY
+ Cú pháp: if <Điều kiện> then <Câu lệnh>;
+ Ý nghĩa: Nếu Điều kiện đúng thực hiện câu lệnh sau từ khóa then, nếu
điều kiện sai thì bỏ qua câu lệnh
GV: Trong thực tiễn cũng như trong
khoa học, có nhiều bài toán đòi hỏi phải
thực hiện lặp đi lặp lại một số thao tác
nhất định Tuy nhiên số lần lặp có thể
biết trước hoặc không biết trước
GV: Xét bài toán 1 và bài toán 2
(SGK)
GV: Nêu cú pháp của lệnh lặp For
dạng tiến?
HS: Dựa vào SGK trả lời câu hỏi.
GV: Nêu cú pháp của lệnh lặp For
1 Lặp với số lần biết trước For-do:
Trang 33dạng lùi?
HS: Dựa vào SGK trả lời câu hỏi.
GV: For, to, Downto, do là gì?
HS: Là các từ khóa.
GV: Biến đếm, giá trị đầu, giá trị cuối
có thể nhận những loại dữ liệu nào?
HS: Dựa vào SGK trả lời câu hỏi.
GV: Cho biết ý nghĩa của câu lệnh lặp
For-do?
HS: Dựa vào SGk trả lời câu hỏi.
GV: Số lần lặp =0 khi nào?
HS: Dựa vào SGK trả lời.
GV: Số lần lặp được tính như thế nào?
HS: Trả lời câu hỏi.
GV: Yêu cầu học sinh viết chương
trình in ra màn hình 10 dòng chữ ‘chao
cac ban’ có sử dụng vòng lặp For-do
HS: Viết chương trình vào nháp.
GV: Viết chương trình in ra màn hình 2
hàng số nguyên: 1 2 3 4 5 6 7 8 9 10
10 9 8 7 6 5 4 3 2 1
HS: Soạn chương trình vào nháp.
GV: Kiểm tra học sinh viết chương
trình và sửa lỗi chương trình cho hs
(nếu có)
GV: Yêu cầu học sinh Viết chương
trình tính tổng các số chẵn từ 1 tới N
Với N nhập từ bàn phím
HS: Viết chương trình vào nháp.
For<BĐ>:=<GT cuối> Downto <GT đầu>
do <câu lênh>;
Trong đó: For, to, Downto, do là các từ
khóa Biến đếm, giá trị đầu, giá trị cuốiphải cùng kiểu và thuộc kiểu dữ liệu đếmđược (nguyên, char)
b) Ý nghĩa:
- Ở lặp tiến: Câu lệnh sau từ khóa DO sẽ
được thực hiện tuần tự với biến đếm lần lượt nhận các giá trị liên tiếp tăng từ giá trị đầu đến giá trị cuối
- Ở lặp lùi: Câu lệnh sau từ khóa DO sẽ
được thực hiện tuần tự với biến đếm lần lượt nhận các giá trị liên tiếp giảm từ giá trị cuối đến giá trị đầu
* Ghi chú:
- SLL=0 Khi cận đầu > cận cuối
- SLL= Cận cuối - cận đầu +1 (For tiến)
Trang 34Write('Tong cac so chan=',S);
Trang 35Ngày soạn: 21/11/2013.
Tiết CT: 15
Bài 10: CẤU TRÚC LẶP (Tiết 2)
I MỤC TIÊU:
- Biết được ý nghĩa của cấu trúc lặp có số lần lặp chưa xác định
- Biết được cấu trúc chung của lệnh lặp While trong ngôn ngữ Pascal.
- Biết được sự thực hiện của máy khi gặp lệnh lặp While.
- Phân biệt được sự giống và khác nhau giữa cấu trúc lặp For và While.
- Sử dụng đúng lệnh lặp While trong lập trình.
- Bước đầu biết lựa chọn đúng dạng lệnh lặp để lập trình giải quyết được một số bài toán đơn giản
II CÁC KỸ NĂNG ĐẠT ĐƯỢC:
Kỹ năng tư duy sáng tạo, kỹ năng lắng nghe tích cực, kỹ năng tự nhận thức, kỹ năng kiềm chế cảm xúc, kỹ năng tìm kiếm sự hỗ trợ…
III PHƯƠNG PHÁP/ KỸ THUẬT:
Sử dụng phương pháp thuyết trình có minh họa kết hợp vấn đáp
IV PHƯƠNG TIỆN:
- Giáo viên: Giáo án, sách giáo, máy chiếu, máy tính, phần mềm pascal…
- Học sinh: Vở ghi, giấy nháp, sách giáo khoa…
V TIẾN TRÌNH TIẾT DẠY
1 Khám phá:
- Ổn định lớp.
- Bài cũ:
- Câu hỏi: Nêu cú pháp và ý nghĩa của câu lệnh lặp For tiến.
- Trả lời: + Cú pháp: For <BĐ>:=<GT đầu> to <GT cuối> do
<Câu lệnh>;
+ Ý nghĩa: B1: Tính giá trị cận đầu, cận cuối.
B2: Gán GT cận đầu cho biến đếm.
B3: Nếu GT biến đếm <=GT cuối thì thực hiện câu lệnh sau từ khóa Do
Ngược lại thoát khỏi vòng lặp
B4: Tắng giá trị biến đếm và quay lại B3.
2 Kết nối:
GV: Nêu cú pháp của cấu trúc lặp?
HS: Dựa vào SGK nêu cú pháp cấu
trúc lặp
GV: Nêu ý nghĩa của cấu trúc lặp?
HS: Dựa vào SGK trả lời câu hỏi.
GV: Hãy cho biết SLL=0 khi nào và
trong trường hợp nào thi câu lệnh
2 Cấu trúc lặp với số lần chưa biết trước, câu lệnh lặp While-do (điều kiện trước):
- Cú pháp: While <Điều kiện> do <Câu
lệnh>;
- Ý nghĩa:
B1: Tính giá trị của biểu thức điều kiện.
B2: Nếu điều kiện đúng thì thực hiện câu lệnh sau Do và quay lại bước 1 Ngược lại thoát khỏi While.
- Nhận xét:
Trang 36While lặp vô hạn lần.
HS: Dựa vào sự hoạt động của câu lệnh
While trả lời câu hỏi.
GV: Xác định InPut và Output của bài
toán
HS: Input: a
Output: S
GV: Xác định sử dụng vòng lặp nào?
Điều kiện dừng của vòng lặp là gì?
Công việc được thực hiện trong vòng
HS: Input: 2 số nguyên a,b.
Output: UCLN của a,b
GV: Xác định điều kiện dừng của vòng
lặp? Công việc thực hiện trong vòng
if a>b then a:=a-b Else b:=b-a;
+ SLL=0 nếu ngay từ đầu biểu thức điều
kiện có giá trị False.
+ Nếu biểu thức điều kiện luôn có giá trị
đúng thì While sẽ bị Loop (Lặp vô hạn
lần) Do đó các câu lệnh trong While phải
có sự tham gia tính toán làm thay đổi giátrị của biểu thức điều kiện
Trang 38II CÁC KỸ NĂNG ĐẠT ĐƯỢC:
Kỹ năng tư duy sáng tạo, kỹ năng lắng nghe tích cực, kỹ năng tự nhận thức, kỹ năng kiềm chế cảm xúc, kỹ năng tìm kiếm sự hỗ trợ…
III PHƯƠNG PHÁP/ KỸ THUẬT:
Sử dụng phương pháp vấn đáp kết hợp hoạt động nhóm
IV PHƯƠNG TIỆN:
- Giáo viên: Giáo án, sách giáo, máy chiếu, máy tính, phần mềm pascal…
- Học sinh: Vở ghi, giấy nháp, sách giáo khoa…
V TIẾN TRÌNH TIẾT DẠY
1 Khám phá:
- Ổn định lớp.
- Bài cũ:
- Câu hỏi: Nêu cú pháp và ý nghĩa của câu lệnh lặp For tiến.
- Trả lời: + Cú pháp: For <BĐ>:=<GT đầu> to <GT cuối> do
<Câu lệnh>;
+ Ý nghĩa: B1: Tính giá trị cận đầu, cận cuối.
B2: Gán GT cận đầu cho biến đếm.
B3: Nếu GT biến đếm <=GT cuối thì thực hiện câu lệnh sau từ khóa Do
Ngược lại thoát khỏi vòng lặp
B4: Tắng giá trị biến đếm và quay lại B3.
2 Kết nối:
Gv Dẫn dắt: Từ bài toán KTBC ở trên, nếu
ta y/cầu tính và đưa ra màn hình tổng các số
chẵn và tổng các số lẻ trong phạm vi từ a
đến b
Ghi bảng (sửa lại nội dung đề bài toán)
Y/cầu hs phân tích đề bài và trả lời câu hỏi
Hs -Ghi đề bài toán
-Lắng nghe, phân tích bài toán và trả lời:
Gv - So sánh với bài toán trước thì có gì
khác?
- Ta cần đưa ra màn hình mấy giá trị?
Bài 1: Viết CT nhập vào 2 số
nguyên dương a, b (a<b), tính và đưa ra màn hình tổng các số chẵn vàtổng các số lẻ trong phạm vi từ a đến b
Phân tích
Tl: tính tổng các số chẵn và tổngcác số lẻ riêng
Tl: 2 giá trị (S1: tổng chẵn; S2: tổnglẻ)
Tl: Kiểm tra biến đếm i : nếu i làchẵn thì S1:=S1+i ngược lại (i là
Trang 39- Việc chính cần thực hiện trong câu lệnh lặp
Gv Cho hs thảo luận nhóm
Hs Học sinh thảo luận nhóm
Báo cáo kết quả theo nhóm
Gv Nhận xét chỉnh sửa và cho chạy thử
chương trình.(chương trình soạn trước)
S1 := 0; S2 := 0;
For i := a To b Do
If i mod 2 = 0 then S1 := S1 + i else S2 := S2 + i;
Writeln(‘Tong chan: ’, S1,
’ Tong le: ’,S2); Readln
End.
Gv Nêu đề bài toán (Ghi bảng)
- Cách tính tiền gửi tiết kiệm hàng tháng như
thế nào?
- Vậy, công thức tính tiền thu được sau mỗi
tháng như thế nào?
- câu lệnh lặp này lặp bao nhiêu lần?
- Xác định giá trị đầu và giá trị cuối của câu
lệnh For để thực hiện việc lặp trên?
Hs Đọc đề bài, phân tích và trả lời câu hỏi
-Thảo luận nhóm và tự viết chương trình
Gv Chuẩn hóa lại bài làm của hs bằng
chương trình mẫu (treo chtrình đã chuẩn bị
trên bảng phụ)
- Chạy chương trình
- Thử nghiệm với 1 năm, 14 tháng,…
Hs Quan sát chtrình của giáo viên và ghi
nhớ
Bài 2: Ông Ba có số tiền là S, ông
gửi tiết kiệm ngân hàng với lãi suất1.5%/tháng Hỏi sau 12 tháng gửi(không rút tiền lãi hàng tháng), ông
ta được số tiền là bao nhiêu?
Trang 40Gv hướng dẫn học sinh tìm thuật toán
* Chuẩn hóa lại bài làm của hs bằng chương
trình mẫu (treo chtrình đã chuẩn bị trên bảng
- Cấu trúc chung của Câu lệnh lặp While Do, Câu lệnh lặp For do
- Về nhà xem lại các bài tập đã giải và làm bài tập còn lại trong sgk
4.Vận dụng:
VI RÚT KINH NGHIỆM