-Nghiên cứu nội dung trong SGK vàtrả lời câu hỏi +Lập trình là việc sử dụng cấu trúc dữ liệu và các 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
Trang 1Chương I : MỘT SỐ KHÁI NIỆM VỀ LẬP TRèNH
VÀ NGễN NGỮ LẬP TRèNH Tiết 1: KHÁI NIỆM LẬP TRèNH
+ Thỏi độ: Ham muốn tỡm hiểu cỏc ngụn ngữ lập trỡnh.
II Chuẩn bị của giỏo viờn và học sinh
+ Giỏo viờn:
+ Học sinh: Đọc trước SGK, xem lại một số kiến thức Tin học lớp 10.
III Phương phỏp: Diễn giải, đàm thoại, giải quyết tỡnh huống cú vấn đề.
IV Tiến trỡnh bài học:
1 ổn định lớp:
2 Kiểm tra bài cũ: (không KT)
3 Bài mới:
Hoạt động 1: Tỡm hiểu khỏi niệm lõp trỡnh và ngụn ngữ lập trỡnh
Hoạt động của học sinh Hoạt động của giỏo viờn Ghi bảng
-Quan sỏt bài toỏn và trả lời cõu hỏi
+ Hóy xỏc định Input, Outputcủa bài toỏn trờn
+ Hóy xỏc định cỏc bước để giảibài toỏn trờn
-Hệ thống cỏc bước này chỳng tagọi là thuật toỏn Làm thế nào đểmỏy tớnh điện tử cú thể hiểuđược thuật toỏn này ?
-Diễn giải: Hoạt động để diễn
Bài 1
KHÁI NIỆM LẬP TRèNH VÀ NGễN NGỮ LẬP TRèNH
NS: / /20
NG: / /20
DL:
Trang 2-Nghiên cứu nội dung trong SGK và
trả lời câu hỏi
+Lập trình là việc sử dụng cấu trúc
dữ liệu và các 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
+ Được một chương trình
+Ngôn ngữ máy, hợp ngữ và ngôn
ngữ bâc cao
-Nghiên cứu SGK và trả lời câu hỏi
+ Chương trình viết bằng ngôn ngữ
máy có thể nạp trực tiếp vào bộ nhớ
và thực hiện ngay
+ Chương trình viết bằng ngôn ngữ
lập trình bậc cao phải được chuyển
đổi thành chương trình trên ngôn
ngữ lập máy thì mới thực hiện được
-Phải sử dụng một chương trình dịch
để chuyển đổi
Ngôn ngữ bậc cao dễ viết, dễ hiểu
Ngôn ngữ máy khó viết
đạt một thuật toán thông qua mộtngôn ngữ lập trình được gọi làlập trình
-Các em hãy cho biết khái niệm
về lập trình ?
- Kết quả của hoạt động lập trình
?-Ngôn ngữ lập trình gồm nhữngloại nào ?
-Theo các em chương trình đượcviết bằng ngôn ngữ bậc cao vàchương trình được viết bằngngôn ngữ máy khác nhau nhưthế nào ?
-Làm thế nào để chuyển mộtchương trình viết bằng ngôn ngữbậc cao sang ngôn ngữ máy ?-Vì sao không lập trình trên ngônngữ máy để khỏi mất côngchuyển đổi khi lập trình vớingôn ngữ bậc cao
- Lập trình là việc sử dụng
cấu trúc dữ liệu và các lệnhcủ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ậttoán
Hoạt động 2: Tìm hiểu hai loại chương trình dịch: thông dịch và biên dịch
Trang 3Hoạt động của học sinh Hoạt động của giáo viên Ghi bảng
-Nghiên cứu SGK và trả lời câu hỏi:
+ Chương trình nguồn là chương
B1: Kiểm tra tính đúng đắn của câu
lệnh tiếp theo trong chương trình
nguồn;
B2: Chuyển lệnh đó thành ngôn ngữ
máy
B3: Thực hiện các câu lệnh vừa
được chuyển đổi
+Biên dịch:
B1: Duyệt, phát hiện lỗi, kiểm tra
tính đúng đắn của các câu lệnh trong
-Nêu vấn đề: Em muốn giớithiệu về trường mình cho mộtngười khách du lịch quốc tế biếttiếng Anh, có hai cách thực hiện:
C1: Cần một người biết tiếngAnh dịch từng câu nói của emsang tiếng Anh cho người khách
Cách mày gọi lag thông dịchC2: Em soạn nội dung giới thiệu
ra giấy và người phiên dịch dịchtoàn bộ nội dung đó sang tiếngAnh rồi đọc cho khách nghe
Cách này gọi là biên dịch
Tương tự chương trình dịch cóhai loại là thông dịch và biêndịch
-Các em hãy cho biết tiến trìnhcủa thông dịch và biên dịch -Chương trình dịch gồmthông dịch và biên dịch
a) Thông dịchB1: Kiểm tra tính đúng đắncủa câu lệnh tiếp theo trongchương trình nguồn;
B2: Chuyển lệnh đó thànhngôn ngữ máy
B3: Thực hiện các câu lệnhvừa được chuyển đổi.+Biên dịch:
B1: Duyệt, phát hiện lỗi,kiểm tra tính đúng đắn củacác câu lệnh trong chươngtrình nguồn
B2: Dịch toàn bộ chươngtrình nguồn thành mộtchương trình đích có thểthực hiện trên máy và có
Trang 4có 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
thể lưu trữ để sử dụng lạikhi cần thiết
4 Củng cố kiến thức
-Khái niệm lập trình và ngôn ngữ lập trình
-Các ngôn ngữ lập trình: ngôn ngữ máy, ngôn ngữ bậc cao, hợp ngữ
-Khái niệm chương trình dịch
- Phân biệt được ba thành phần:bảng chữ cái ,cú pháp và ngữ nghĩa
- Phân biệt được tên, hằng và biến biết đặt tên đúng
3 Tư duy và thái độ :
- Tư duy logic
- Thái độ cẩn thận, chính xác
II Chuẩn bị của giáo viên và học sinh;
4 GV: Bảng phụ, phấn, thước.
5 HS: Đọc trước bài ở nhà III Phương pháp
viết như vậy có ý nghĩa là gì? Mỗingôn ngữ lập trình có một quy định
NS: / /20
NG: / /20
DL:
Trang 5- HĐTP3: Giớ thiệu cú pháp
- Cú pháp ngôn ngữ lập trìnhkhác nhau cũng khác nhau ngônngữ pascal dùng cặp từ Begin- End
để gộp nhiều lệnh thành một lệnhnhưng trong C++ dùng cặp kí hiệu{}
Ví dụ : Xét 2 biểu thức A+B (1) A,B
- Mỗi ngôn ngữ lập trìnhthường có ba thành phần
cơ bản là: bảng chữ cái,cú pháp và ngữ nghĩa
c Ngữ nghĩa
Xác định ý nghĩa thao táccầ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ó
Tóm lại:
- cú pháp cho biết cáchviết một chương trìnhhợp lệ, còn ngữ nghĩaxác định ý nghĩa của các
tổ hợp kí tự trongchương trình
- Các lỗi cú pháp đượcchương trình dịch pháthiện và thông báo chongười lập trình biết.chương trình không cònlỗi cú pháp thì mới cóthể dịch sang ngôn ngữ
Trang 6- Lỗi ngữ nghĩa được pháthiện khi chạy chươngtrình
HĐ2: Giới thiệu Tên
Lắng nghe và ghi chép
- Trong các ngôn ngữ lập trình nóichung,các đối tượng sử dụng trongchương trình đều phải đặt tên đểtiện cho việc sử dụng Việc dặt têntrong các ngôn ngữ khác nhau làkhác nhau,có ngôn ngữ phân biệtchữ hoa,chữ thường, có ngôn ngữkhông phân biệt chữ hoa, chữthường
- Ngôn ngữ lập trình pascal khôngphân biệt chữ hoa chữ thường nhưngmột số ngôn ngữ lập trình khác(nhưC++) lại phân biệt chữ hoa, chữthường
2 Một số khái niệm
- Mọi đối tượng trongchương trình đều phải đượcđặt tên theo quy tắc củangôn ngữ lập trình
- Trong ngôn ngữ turbopascal tên là một dãy liêntiếp không quá 127 kí tựbao gồm: chữ số, chữ cáihoặc dấu gạch dướivà bắtđầu bằng chữ cái hoặc gạchdưới
- Ví dụ : Trong ngôn ngữ
pascal+ Các tên đúng: A, Bre1,-ten,
+ Các tên sai: a bc, 6hgf, x#
y,
- Ngôn ngữ lập trình có 3 loạitên: tên dành riêng, tênchuẩn, tên do người lập trìnhđặt
dành riêng: Là những tên
được ngôn ngữ lập trìnhquy định với ý nghĩa riêngxác định mà người lập trìnhkhông được dùng với ýnghĩa khác
- Tên dành riêng được gọi là từkhoá
- Ví dụ: một số tên dành riêng:
- Trong pascal : program, uses,var, const,
- Trong c++: main, include, if,
- * Tên chuẩn: là nhữnh tên
được ngôn ngữ lập trình dùngvới ý nghĩa nhất định nào đó.Trong các thư viện của ngônngữ lập trình
Trang 7cách trước khi sử dụng,không được trùng với têndành riêng
- a,b,c là ba tên dùng để lưu ba hệ sốcủa phương trình
- - x1,x2 là hai tên dùng để lưunghiệm ( nếu có)
- - Delta là tên dùng để lưu giá trịcủa delta
Biến là đối tượng sử dụng nhiềunhất trong khi viết chương trình
Biến là đại lượng có thể thay đổiđược nên thường dùng để lưu trữkết quả
- b Hằng và biến
- * Hằng: Là đại lượng có giá
trị không đổi trong quá trìnhthực hiện chương trình
- - Các ngôn ngữ lập trìnhthường có:
- + Hằng số học: số nguyênhoặc số thực
- + Hăng logic: Là cácgiá trịđúng hoặc sai
- Ví dụ ( bảng phụ 2:vd vềhằng sgk trang 12)
- * Biến:Là đại lượng được đặt
tên, dùng để lưu trữ gí trị vàgiá trị có thể được thay đổitrong quá trình thực hiệnchương trình
- Biến phải khai báo trước khi
sử dụng
- C Chú thích:
- - Trong khi viết chương trình
có thể viết các chú thích chochương trình Chú thíchkhông làm ảnh hưởng đếnchương trình
- Trong pascal chú thích đượcđặt trong {} hoặc (* *)
- Trong C++ chú thích đặttrong: /* */
4 Củng cố :
Giáo viên mở một chương trình pascal đơn giản có chứa các thành phần là các khái niệm
của bài học, nếu không có máy thì sử dụng bảng phụ đẻ chỉ cho HS từng khái niệm trong
chương trình
5 DÆn dß:
- Häc bµi theo SGK vµ lµm c¸c bµi tËp BT
NS: / /20 TiÕt 3: BÀI TẬP
Trang 8I Mục tiêu:
1 Về kiến thức:
- Biết có 3 lớp ngôn ngữ lập trình và các mức của ngôn ngữ lập trình: ngôn ngữ máy,
hợp ngữ và ngôn ngữ bậc cao
- Biết vai trò của chương trình dịch
- Biết khái niệm biên dịch và thông dịch
- Biết các thành phần cơ bản của ngôn ngữ lập trình: bảng chữ cái, cú pháp và ngữ
nghĩa.
- Biết các thành phần cơ sở của Pascal: bảng chữ cái, tên, tên chuẩn, tên riêng (từ
khóa), hằng và biến.
2 Về kỹ năng:
- Biết viết hằng và tên đúng trong một ngôn ngữ lập trình cụ thể.
3 Về tư duy và thái độ:
- Nhận thức được quá trình phát triển của ngôn ngữ lập trình gắn liền với quá trình phát
triển của tin học nhằm giải các bài toán thực tiễn ngày càng phức tạp
- Ham muốn học một ngôn ngữ lập trình cụ thể để có khả năng giải các bài toán bằng
máy tính điện tử
II Chuẩn bị của giáo viên và học sinh:
1 Giáo viên: chuẩn bị nội dung để giải bài tập cuối chương và một số câu hỏi trắc
nghiệm của chương
2 Học sinh:Ôn lại kiến thức của chương, chuẩn bị bài tập cuối chương.
III Phương pháp:
- Thuyết trình, vấn đáp
IV Tiến trình bài học:
1 Ổn định lớp
2 Kiểm tra bài cũ.
3 Tiến trình tiết dạy:
Hoạt động của học sinh Hoạt động của giáo viên Ghi bảng
Đọc yêu cầu của câu hỏi và bài
tập cuối chương trang 13 SGK
Suy nghĩ để đưa ra phương án
trả lời
Suy nghĩ, trả lời câu hỏi
ĐVĐ: Trước khi giải bài tập trongSGK, các em tự ôn lại một số kiếnthức mà chúng ta đã học ở các bàitrước dựa trên yêu cầu của câu hỏitrang 13 SGK
Đặt câu hỏi số 1: Tại sao người ta phải xây dựng các ngôn ngữ lập trình bậc cao?
Nhận xét, đánh giá và bổ sunghướng dẫn cho học sinh trả lời câuhỏi số 1:
Bài: BÀI TẬP CHƯƠNG 1
Câu 1:
Ngôn ngữ bậc cao gần với
ngôn ngữ tự nhiên hơn, thuậntiện cho đông đảo người lậptrình
Chương trình viết bằng ngônngữ bậc cao nói chung khôngphụ thuộc vào phần cứng máytính và một chương trình có thểthực hiện trên nhiều máy tính
Trang 9Suy nghĩ, trả lời câu hỏi.
Suy nghĩ, trả lời câu hỏi, cho
ví dụ
- Suy nghĩ, trả lời, giải thích
từng câu hỏi,
Đặt câu hỏi 2: Chương trình dịch
là gì? Tại sao cần phải có chương trình dịch?
Đặt câu hỏi 3: Biên dịch và thôngdịch khác nhau như thế nào?
Phân tích câu trả lời của học sinh
Đặt câu hỏi 4: Hãy cho biết cácđiểm khác nhau giữa tên dànhriêng và tên chuẩn?
Gọi hs trả lời và cho ví dụ Phân tích câu trả lời của học sinh
Đặt câu hỏi 5: Hãy tự viết ra ba tên đúng theo quy tắc của Pascal
Gọi 3 học sinh lên bảng cho ví dụ
Ngôn ngữ bậc cao cho phép
làm việc với nhiều kiêu dữ liệu
và cách tổ chức dữ liệu đadạng, thuận tiện cho mô tảthuộc toán
Câu 2:
Chương trình dịch là chương
trình đặc biệt, có chức năngchuyển đổi chương trình đượcviết trên ngôn ngữ lập trình bậccao thành chương trình thựchiện được trên máy tính cụ thể.Chương trình nguồn ->
Chương trình dịch -> Chương
trình đích
Câu 3:
Trình biên dịch: duyệt, kiểm
tra, phát hiện lỗi, xác địnhchương trình nguồn có dịchđược không? dịch toàn bộchương trình nguồn thành mộtchương trình đích có thể thựchiện trên máy và có thể lưu trữlại để sử dụng về sau khi cầnthiết
Trình thông dịch lần lượt dịch
từng câu lệnh ra ngôn ngữ máyrồi thực hiện ngay câu lệnh vừadịch được hoặc báo lỗi nếukhông dịch được
Tên dành riêng trong Pascal:
program, uses, const, type, var,begin, end
Tên chuẩn: trong Pascal abs,
integer
Câu 5: Gợi ý: Trong Pascal
Trang 10Đặt câu hỏi 6: Hãy cho biết nhữngbiểu diễn nào dưới đây không phải
là biểu diễn hằng trong Pascal vàchỉ rõ trong từng trường hợp:
150.0–226,23
‘43’
A201.06E-154+6
‘C
‘TRUE’
Nhận xét, giải thích
tên (do người lập trình đặt)
được đặt tuân theo các quy tắcsau:
Chỉ bao gồm chữ cái, chữ số vàdấu gạch dưới;
Không bắt đầu bằng chữ số;
Độ dài theo quy định củachương trình dịch (TP khôngquá 127 kí tự, Free Pascalkhông quá 255 kí tự)
Tuy nhiên, không nên đặt tên
quá dài hay quá ngắn mà nênđặt sao cho gợi ý nghĩa đốitượng mang tên đó
-Những biểu diễn sau đâykhông phải là hằng trongPascal:
6,23 dấu phẩy phải thay bằngdấu chấm;
A20 là tên chưa rõ giá trị;
4+6 là biểu thức hằng trongPascal chuẩn cũng được coi làhằng trong Turbo Pascal;
‘TRUE’ là hằng xâu nhưngkhông là hằng lôgic
4 Củng cố
-Ôn lại các khái niệm, các tên
-Chuẩn bị bài Cấu trúc chương trình
5 DÆn dß:
- Hoµn chØnh c¸c bµi tËp cßn lai SGK
Tiết 4: CẤU TRÚC CHƯƠNG TRÌNH
3 Tư duy – thái độ:
Tư duy logic
Trang 112 KiÓm tra bµi cò:
Câu 1: Có mấy loại tên trong ngôn ngữ Pascal ?
Câu 2: Khái niệm hằng và biến ?
3 Bµi míi:
Hoạt động 1: Cấu trúc chung.
Cho học sinh đọc phần “ cấu trúc chung
“
Hỏi: “ Cáu trúc chung gồm máy phần “
Yêu cầu học sinh đọc SGK phần khai
báo Sau đó trả lời câu hỏi
+ Trong phần khai báo có những phần
khai báo
Tập hợp số tự nhiên,nguyên,hữu tỉ, thực
Đọc sách
Bài: CẤU TRÚC CHƯƠNG TRÌNH
Hoạt động 2 Một số kiển dữ liệu chuẩn.
Yêu cầu học sinh nghiên cứu sách Trả
lời các câu hỏi sau:
- Có bao nhiêu dữ liệu chuẩn
trong ngôn ngữ Pascal ?
- Trong ngôn ngữ Pascal, có
những kiểu nguyên nào thương
dùng, phạm vi biểu diễn của
mỗi loại
- Trong ngôn ngữ Pascal, có
những kiểu thực nào thương
dùng, phạm vi biểu diễn của
mỗi loại
- Có 4 kiểu : kiểunguyên, thực, kí tự,lôgic
- Có 4 loại : Byte, word,integer, logint
- Có 2 loại: Real, extended
1.khai báo tên chương
trình
-program <tên chương trình>;
+ Tên chương trình: dongườI lập trình tự đặt +ví dụ: program vi_du;
2 Khai báo thư viện
uses <tên các thư viện>
+ ví dụ: trong pascal uses crt;
4.khai báo biến
var <danh sách biến>; Hoạt động 3 Khai báo biến.
Yêu cầu học sinh nghiên cứu sách GK
và cho biết vì sao phải khai báo biến ? ĐỌC sách.Mọi biến dùng trong chương
trình đều phải được khai báotên biến và kiểu dữ liệu củabiến Tên biến dùng để xác lậpquan hệ giữa biến với địa chỉ
Khai báo biến
Var <danh sáchbiến>:<kiểu dữ liệu>;
• Danh sách biến:SGK
• Kiểu dữ liệu : SGK
Trang 12bộ nhớ nơi lưu giữ giá trị củabiến.
Ví dụ: trong chương trình
ta cần dùng biến a kiểu sốnguyên, b kiểu số thựcVar a : integer;
b : real;
Cho ví dụ:
Var x,y,z : Word;
H: in teger;
Yêu cầu học sinh cho ý kiến về ví dụ
Khai báo x,y,z đúng, H sai
Hoạt động 4 Phần thân chương trình - ví dụ chương trình đơn giản
Dãy lệnh trong phạm vi đượcxác định bởi cặp dấu hiệu mởđầu và kết thúc
Trong pascal: Thânchương trình có dạng:BEGIN
Hai chương trình cùng thực hiệnmột
công việcnhưng viết bằng 2 ngôn ngữ
khác nhau nên hệ thống các câu lệnh
trong chương trình cũng khác nhau
Trong vd1:đâu là phần khaibáo đâu là phần thân chươngtrình?
Cho học sinh quan sát nhận xét
2 chương trình trong 2 ngônngữ khác nhau
Ví dụ chương trình đơn giản
Trong ngôn ngữ pascal:
Program vd1;
Begin Write(‘chao cac ban’);
End
Trong ngôn ngữ C++:
#include <stdio.h>main()
{ pri ntf(“ chao các ban”);
}
4 Củng cố.
Xem có mấy loại kiểu dữ liệu chuẩn ?
Cấu trúc khai báo biến ?
5 Dặn dò:
Xem có mấy loại kiểu dữ liệu chuẩn ?
Cấu trúc khai báo biến ?
Tiết 5: MỘT SỐ KIỂU DỮ LIỆU CHUẨN
NS: / /20
NG: / /20
DL:
Trang 13KHAI BÁO BIẾN
3 Tư duy – thái độ:
Tư duy logic
2 Kiểm tra bài cũ:
Câu 1: Nêu cấu trúc chung của một chương trình
Câu 2: Nêu cấu trúc của các phần khai báo: tên chương trình, hằng, thư viện
Hoạt động 1: Đặt vấn đề.
Trong toán học để thực hiện được
Hoạt động 2 Một số kiển dữ liệu chuẩn.
Yêu cầu học sinh nghiên cứu
sách Trả lời các câu hỏi sau:
- Có bao nhiêu dữ liệu
chuẩn trong ngôn ngữ Pascal ?
- Trong ngôn ngữ Pascal, có
những kiểu nguyên nào thương
dùng, phạm vi biểu diễn của
mỗi loại
- Trong ngôn ngữ Pascal, có
những kiểu thực nào thương
dùng, phạm vi biểu diễn của
SGKCho học sinh đọc ví dụ đơn giản
Trang 14Giải thích từng dòng lệnh
Hoạt động 3 Khai báo biến.
Yêu cầu học sinh nghiên cứu
sách GK và cho biết vì sao
phải khai báo biến ?
ĐỌC sách
Mọi biến dùng trongchương trình đều phảiđược khai báo tên biến vàkiểu dữ liệu của biến Tênbiến dùng để xác lập quan
hệ giữa biến với địa chỉ
bộ nhớ nơi lưu giữ giá trịcủa biến
Khai báo biến
Var <danh sách biến> :<kiểu dữ liệu>;
• Danh sách biến: SGK
• Kiểu dữ liệu : SGK
Ví dụ: trong chương trình ta cần dùngbiến a kiểu số nguyên, b kiểu số thựcVar a : integer;
Mỗi em cho ví dụ về Khai báo biến ( hôm sau trả lời)
TiÕt 6: PHÉP TOÁN - BIỂU THỨC - CÂU LỆNH GÁN
I Mục tiêu :
1 Kiến thức :
- Biết được các phép toán thông dụng trong NNLT
- Biết cách diễn đạt một biểu thức trong NNLT
- Biết được chức năng của lệnh gán và cấu trúc của nó
- Nắm vững một số hàm chuẩn thông dụng trong NNLT Pascal
2 Kỹ năng:
- Nhận biết được các phép toán để xây dựng biểu thức cho hợp lý.
- Sử dụng được một số lệnh gán khi viết chương trình đơn giản
3 Tư duy và thái độ :
- Phát triển tư duy lôgic, linh hoạt, có tính sáng tạo
- Biết thể hiện về tính cẩn thận chính xác trong tính toán cũng như lập luận
II Chuẩn bị của GV & HS:
NS: / /20
NG: / /20
DL:
Trang 15* Giỏo viờn:
- SGK, cỏc tranh liờn quan đến bài học
- Mỏy vi tớnh và mỏy chiếu Projector (nếu cú)
* Học sinh: - SGK
III Phương phỏp:
- Gợi mở vấn đáp - đan xen hoạt động nhóm
IV Tiến trỡnh bài học:
1 ổn định lớp
2 Kiểm tra bài cũ:
HS1: Có bao nhiêu kiểu dữ liệu chuẩn? Kể tên?
HS2: Trình bày các khai báo và lấy ví dụ?
3 Bài mới:
1 Họat động 1:
Khi viết chương trỡnh ta phải sử
- Ghi một số phộp toỏn lờn bảng
- Phộp DIV, MOD được sử dụng
cho kiểu dữ liệu nào?
- Kết quả của phộp toỏn quan hệ
thuộc kiểu dữ liệu nào?
Chỳ ý lắng nghe
Suy nghĩ và đưa ra một sốphộp toỏn thường dựng:
1 Phộp toỏn:
NNLT Pascal sử dụng một sốphộp toỏn như sau:
+ Số nguyờn: + , - , *, / , DIV,MOD
+ Số thực: + , - , *, / , + Phộp toỏn quan hệ: <, <=, > ,
>=, =, < > + Phộp toỏn logic: AND, OR,NOT
2/ Hoạt động 2: Tỡm hiểu biểu thức:
Trang 16Hoạt động GV Hoạt động HS Ghi bảng
- Trong toán học biểu thức là gì ?
- Trong tin học khái niệm về biểu
thức trong lập trình ?
- Cách viết các biểu thức trong lập
trình có giống cách viết trong toán
giản người ta đã xây dựng sẵn một
số đơn vị chương trình trong các
thư viện chương trình giúp người
lập trình tính toán nhanh hơn
- Treo tranh chứa bảng một số hàm
chuẩn
Yêu cầu: Học sinh điền thêm một
số thông tin với các chức năng của
((a+b+c)/((2*a /b)+c)) (b*b-c)/a*c
Hàm trị tuyệt đối, hàm cănbậc 2, hàm sin
- HS trả lời: 2*x*x+1
- HS chưa trả lời được
Nghiên cứu SGK - 26 vàquan sát tranh vẽ, lên bảngđiền tranh
2 Biểu thức số học:
- Là một dãy các phép toán + ,
- , *, / , DIV, MOD từ hằngbiến kiểu số và các hàm
- Dùng dấu ( ) để qui định trình
tự tính toán
VD: ( SGK - 25)
* Chú ý :Thứ tự thực hiện các phép toán:+ Trong ngoặc trước, ngoàingoặc sau
+ Nhân, chia, chia nguyên, chialấy dư trước, cộng, trừ sau
3 Hàm số học chuẩn:
Cách viết cho một số hàm số họcchuẩn :
Tên hàm (đối số)+ Đối số là một hay nhiều biểuthức số học đặt trong dấu ngoặc () sau tên hàm
VD: (SGK - 26)
Trang 17quan hệ Biểu thức quan hệ còn
gọi là biểu thức so sánh được dùng
để so sánh 2 giá trị đúng hoặc sai
- Cho một ví dụ về biểu thức quan
hệ
- Kết quả mà phép toán quan hệ
thuộc kiểu dữ liệu nào đã học?
-Biểu thức logic là biểu thức quan
hệ được liên kết với nhau bởi phép
+ Kết quả của biểu thức quan hệ
là TRUE hoặc FALSE
VD: - 5 > 2
5 Biểu thức logic
- Biểu thức logic đơn gảin là
hằng hoặc biến logic
- Dùng để liên kết nhiều biểu thức quan hệ lại với nhau
- Giải thích: Lấy 8 cộng với 1,
đem kết quả đặt vào i , ta được y =
Cấu trúc:
< tên - biến>:= <biểu thức>;
Trang 18- Cần chú ý điều gì khi viết lệnh
Treo tranh lên bảng và giới thiệu
một ví dụ về Pascal cho chương
- Vậy chương trên in ra màn hình
giá trị của i và j bằng bao nhiêu ?
- Suy nghĩ và đưa ra vài ví
j:= j-1;
4 Củng cố:
- Nhắc lại một số khái niệm mới về:
+ Các phép toán : Số học, quan hệ, logic
+ Cấu trúc lệnh trong Pascal: tên_biến := biểu_thức;
5 Dặn dò:
- Làm các bài tập 5, 6, 7, 8 SGK trang 35 - 36
- Xem trước bài: Các thủ tục chuẩn vào/ ra đơn giản
TiÕt 7: THỦ TỤC CHUẨN VÀO/ RA ĐƠN GIẢN SOẠN THẢO, DỊCH, THỰC HIỆN VÀ
NS: / /20
NG: / /20
DL:
Trang 19+ Biết cỏc bước: Soạn, dịch, thực hiện và hiệu chỉnhchương trỡnh.
2 Thỏi độ: Ham muốn tỡm hiểu cỏc biờn soạn và thực hiện chương trỡnh.
II Chuẩn bị của giỏo viờn và học sinh
+ Giỏo viờn: một số vớ dụ.
+ Học sinh: Đọc trước SGK.
III Phương phỏp:
+ Diễn giải, đàm thoại, giải quyết tỡnh huống cú vấn đề
IV Tiến trỡnh bài học:
1 ổn định lớp:
2 Kiểm tra bài cu:
HS1: Nêu các phép trong LT Pascal và lấy VD?
HS2: Thê nào là lệnh gán? Lờy VD?
3 Bài mới:
Hoạt động 1: tỡm hiểu thủ tục nhập dữ liệu từ bàn phớm.
Hoạt động của học sinh Hoạt động của giỏo viờn Ghi bảng
- Làm thế nào nhập giỏ trịcho bàn phớm?
- Thủ tục READ sau khi dọcxong giỏ trị con trỏ khụngxuống dũng cũn READLN làxuống dũng
- Thủ tục READLN khụng
cú tham số cú chức nănglamg gỡ? dừng chương trỡnh
Thủ tục READLN khụng cú tham số dừng chương trỡnh
1 Nhập dữ liệu vào từ bàn phớm
- Trong pascal ta dựng thủtục chuẩn sau:
Read(danh sỏch biến vào);hoặc
Readln(danh sỏch biến vào);
- Vớ dụ: Read(N);Readln(a,b,c);
- Chỳ ý:+ Khi nhập dữ liệu
từ bàn phớm READ,READLN, cú ý nghĩa nhưnhau, thường hay dựngREADLN hơn
+ Khi nhập giỏ trị cho cỏcbiến thủ tục, những giỏ trịnày được gừ cỏch nhau mộtdấu cỏch hoặc phớm Enter
Hoạt động 2: tỡm hiểu thủ tụcđưa dữ liệu ra màn hỡnh.
Hoạt động của học sinh Hoạt động của giỏo viờn Ghi bảng
- Trờn đõy là thủ tục nhập dữliệu vào cũn xuất ra thớ sao?
2 Đưa dữ liệu ra màn hỡnh
Trong pascal cung cấp thủ tục
Trang 20Trả lời
- Trường hợp thủ tục WRITELN; không có tham
số thì thì thủ tục có tác dụng
để làm gì?
- Trường hợp thủ tục WRITELN; không có tham
số thì thì thủ tục có tác dụng đưa con trỏ xuống dòng tiếp theo
- Độ rộng, số chữ số thập phân là các hằng nguyên dương
chuẩn:
write(<Danh sách kết quả ra>); hoặc writeln(<Danh sách kết quả ra>);
trong đó <Danh sách kết quả ra>có thể tên biến đơn,
biểu thức, hằng
Ví dụ: write(‘Nap so N:’); Readln(N);
• Chú ý:
- writeln sau khi đưa kết quả ra con trỏ xuống dòng mới
- Ngoài ra trong TPcó quy cách đưa thông tin ra nàm hình sau:
+ Kết quả thực:
:<Độ rộng>:<số chữ số thập phân>
+ Kết quả khác:
:<Độ rộng>
ví dụ: Write(N:3);
Writeln(‘X=’,x:8:2);
Hoạt động3 : Tìm hiểu cách soạn thảo, dịch, thực hiện, hiệu chỉnh chương trình
Hoạt động của học sinh Hoạt động của giáo viên Ghi bảng
- Nghe giảng
-Nghe giảng
Để thực hành trong TP ta khởi động bằng cách:
Nháy dúp vào biểu tượng turbo pascal trên màn hình
- Trên máy cần có tệp:
Turbo.exe(file chạy)Turbo.tpl(file thư viện)Turbo.tph(file hướng dẫn)
• 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
- Mở file đã có: F3
- Biêng dịch chương trình: Alt +F9
- Chạy chương trình: Ctrl + F9
- Đóng cửa sổ chương trình: Alt + F3
- Thoát khỏi phần mền: Alt + X
4 Củng cố:
- Nhắt lại sự hoạt động của Write/Writeln, read/Readln
- Cách soạn thảo,chạy chương trình, ghi vào đĩa, thoát khỏi TP
5 DÆn dß:
- Về nhà làm bài tập trong sách trang 35,36
Trang 21Tiết 8: BÀI TẬP
I Mục tiờu:
1 Về kiến thức:
- Biết được một chương trỡnh Pascal hoàn chỉnh
- Biết sử dụng một số dịch vụ chủ yếu của Pascal trong soạn thảo, lưu, dịch và thựchiện chương trỡnh
3 Về tư duy và thỏi độ:
- Hỡnh thành cho học sinh bước đầu về tư duy về lập trỡnh cú cấu trỳc
- Tự giỏc, tớch cực và chủ động hoàn thành,
II Chuẩn bị của giỏo viờn và học sinh:
+ Giỏo viờn: Phũng mỏy tớnh đó cài sẵn chương trỡnh Turbo Pascal hoặc Free Pascal, cỏcchương trỡnh làm vớ dụ
+ Học sinh:
- Sỏch giỏo khoa, sỏch bài tập và bài viết sẵn ở nhà
- Đọc trước phần phụ lục B1 trang 122 - Mụi trường Turbo Pascal
- Xem trước nội dung bài thực hành số 1
III Phương phỏp: Gởi mở thụng qua hoạt động tư duy.
IV Tiến trỡnh bài dạy:
1 ổn định lớp
2 Kiểm tra bài cũ:
HS1: Trình bày các thủ tục vào ra đơn giản?
HS2: thế nào soạn thảo, dịch, thực hiện và hiệu chỉnh chơng trình?
3 Bài mới:
Hoạt động 1: Kiểm tra nội dung thực hành và khởi động mỏy.
Hoạt động của học sinh Hoạt động của giỏo viờn Ghi bảng
- HS để nội dung thực hành
trước mặt
- Chý ý hướng dẫn của GV
để khởi động mỏy và chương
trỡnh Turbo Pascal hoặc Free
Hoạt động 2: Tỡm hiểu một chương trỡnh Pascal hoàn chỉnh.
Hoạt động của học sinh Hoạt động của giỏo viờn Ghi bảng
- Học sinh quan sỏt trờn bảng
và độc lập gừ chương trỡnh - GV ghi chương trỡnh Giai_PTB2lờn bảng Chương trỡnh giải phươngtrỡnh bậc hai:
NS: / /20
NG: / /20
DL:
Trang 22- Thông báo lỗi và cho biết vì
sao: Do căn bậc hai của một
- GV yêu cầu học sinh thực hiệncác nhiệm vụ sau:
+ Lưu chương trình bằng cách
nhấn phím F2 với tên PTB2.PAS.
+ Dịch và sửa lỗi cú pháp với tổ
HỎI: Vì sao lại có lỗi xuất hiện?
+ Sửa lại chương trình trên khôngdùng đến biến D và thực hiệnchương trình đã sửa
+ Sửa lại chương trình bằng cáchthay đổi công thức tính của x2
program Giai_PTB2; uses crt;
D:=b*b - 4a*b*c; x1:= (-b - sqrt(D))/(2*a);
x2:= -b/a - x1;
write(‘x1 = ‘, x1 : 6 :
2, ’x2: = ‘, x2 : 6 : 2); readln
end
readln(a, b, c);
x1:= (b sqrt(b*b 4a*b*c))/(2*a);
x2:= (b + sqrt(b*b 4a*b*c))/(2*a);
Trang 23Thông báo lỗi với lý do
delta của pt là số âm
+ Thực hiện chương trình đã sửavới bộ dữ liệu 1 ; - 5 ; 6 Thôngbáo kết quả
+ Thực hiện chương trình với bộ
dữ liệu 1 ; 1 ; 1 Thông báo kếtquả
write(‘x1 = ‘, x1 : 6 :
2, ’x2: = ‘, x2 : 6 : 2);
- x1 = 2.00 x2 = 3.00
Hoạt động 3: Rèn luyện thêm về kỹ năng lập trình cho học sinh
Hoạt động của học sinh Hoạt động của giáo viên Ghi bảng
- Học sinh thông báo kết quả
- GV yêu cầu học sinh hãy viếtmột chương trình tính diện tíchmột tam giác khi biết độ dài bacạnh của nó
- GV định hướng để học sinh phântich bài toán
+ Dữ liệu vào (Input)
+Diệu liệu ra (Output)+ Cách tính:
- GV yêu cầu học sinh soạn vàchạy chương trình lên đĩa
- GV yêu cầu học sinh nhập dữliệu và thông báo kết quả ;
a = 3; b = 6; c = 5
a = 2; b = 5; c = 10;
4 Củng cố: Buổi thực hành và bài tập về nhà.
Hoạt động của học sinh Hoạt động của giáo viên Ghi bảng
- Chú ý và ghi nhớ Gv nhắc lại các bước khi 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/ ra
+ Xác định thuật toán
+ Soạn chương trình+ Lưu chương trình+ Biên dịch chương trình+ Thực hiện và hiệu chỉnh chương
Trang 24- Biết được một chương trỡnh Pascal hoàn chỉnh.
- 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
1 Chuẩn bị của giỏo viờn
- Phũng mỏy vi tớnh đó được cài đầy đủ Turbo Pascal, mỏy chiếu Projector để hướngdẫn
2 Chuẩn bị của học sinh
- Sỏch giỏo khoa, sỏch bài tập và bài tập đó viết ở nhà
III Phương phỏp
- Gởi mở vấn đáp, kèm theo hoạt động nhóm
IV Cỏc hoạt động dạy học
1 Hoạt động 1: Tỡm hiểu một chương trỡnh hoàn chỉnh.
1 Chiếu chương trỡnh lờn bảng
Yờu cầu học sinh thực hiện cỏc
F2Alt_F9Ctrl_F9
F2Alt_F9Ctrl_F9
NS: / /20
NG: / /20
DL:
Trang 25- Hỏi: Vì sao có lỗi xuất hiện?
- Sửa lại chương trình không
dùng biến d
x1=1.00 x2=2.00Enter
Ctrl_F9Thông báo lỗi
Do căn bậc hai của một số âmReadln(a,b,c);
x2:=(-b+sqrt(b*b-4*a*c))/(2*a);
writeln(‘x1=’,x1:6:2,‘
x2=’,x2:6:2,);
2 Hoạt động 2: Rèn luyện kĩ năng lập chương trình.
- Viết chương trình tính diện tích hình được tô màu, với a được nhập vào từ bàn phím
1 Định hướng để học sinh phân
tích bài toán
- Dữ liệu vào:
- Dữ liệu ra:
- Cách tính:
2 Yêu cầu học sinh soạn chương
trình và lưu lên đĩa
- Quan sát hướng dẫn từng học
sinh trong lúc thực hành
3 Yêu cầu học sinh nhập dữ liệu
và thông báo kết quả
Tính diện tích hình vuông cạnh a
2 (s2)s:=s1-s2;
2 Thực hiện các yêu cầu củagiáo viên
- Soạn chương trình
- Bấm phím F2, gõ tên file đểlưu
- Bấm phím ALT_F9 để dịch lỗi
cú pháp
- Bấm phím CTRL_F9 để thựchiện chương trình
- Thông báo kết quả cho giáo
- Dữ liệu vào:
- Dữ liệu ra:
- Cách tính:
a=3a=-3Với a=3, ta được: s=9(Pi-2) =10.26
- Với a=-3, kết quả khôngđúng, vì độ dài cạnh phải làmột số dương
a
aa
a
Trang 263 Nhập dữ liệu theo yêu cầu
- Với a=3, ta được: s=9(Pi-2) =10.26
- Với a=-3, kết quả không đúng,
vì độ dài cạnh phải là một sốdương
4 Cñng cè:
- 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
- VÒ nhµ lµm c¸c bµi tËp cßn l¹i vµ thùc hµnh thuÇn thôc c¸c c©u lÖnh cña ch¬ng tr×nh
TIẾT 10: BÀI THỰC HÀNH SỐ 1 (Tiếp)
I Mục Tiêu
1 Kiến thức
- Biết được một chương trình Pascal hoàn chỉnh
- 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
1 Chuẩn bị của giáo viên
- Phòng máy vi tính đã được cài đầy đủ Turbo Pascal, máy chiếu Projector để hướngdẫn
NS: / /20
NG: / /20
DL:
Trang 272 Chuẩn bị của học sinh
- Sỏch giỏo khoa, sỏch bài tập và bài tập đó viết ở nhà
III Phương phỏp
- Gởi mở vấn đáp, kèm theo hoạt động nhóm
IV Cỏc hoạt động dạy học
1 Ổn đinh lớp
2 Kiờm tra bài cũ: Khụng kiểm tra
3 Nội dung thực hành
1 Định hướng để học sinh phõn
tớch bài toỏn
- Dữ liệu vào:
- Dữ liệu ra:
- Cỏch tớnh:
2 Yờu cầu học sinh soạn chương
trỡnh và lưu lờn đĩa
- Quan sỏt hướng dẫn từng học
sinh trong lỳc thực hành
3 Yờu cầu học sinh nhập dữ liệu
và thụng bỏo kết quả
Tớnh diện tớch hỡnh vuụng cạnh a
2 (s2)s:=s1-s2;
2 Thực hiện cỏc yờu cầu củagiỏo viờn
- Soạn chương trỡnh
- Bấm phớm F2, gừ tờn file đểlưu
- Bấm phớm ALT_F9 để dịch lỗi
cỳ phỏp
- Bấm phớm CTRL_F9 để thựchiện chương trỡnh
- Thụng bỏo kết quả cho giỏoviờn
3 Nhập dữ liệu theo yờu cầu
- Với a=3, ta được: s=9(Pi-2) =10.26
- Với a=-3, kết quả khụng đỳng,
vỡ độ dài cạnh phải là một sốdương
- Dữ liệu vào:
- Dữ liệu ra:
- Cỏch tớnh:
a=3a=-3Với a=3, ta được: s=9(Pi-2) =10.26
- Với a=-3, kết quả khụngđỳng, vỡ độ dài cạnh phải làmột số dương
4: Củng cố:
- 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
+ Xỏc định thuật toỏn
+ Soạn chương trỡnh vào mỏy
Trang 29Tiết 11: ĐỀ KIỂM TRA 1 tiết
I Mục tiêu đánh giá:
- Kiểm tra kết quả tiếp thu của HS Chương 1
- Có thái độ tự giác, tích cực trong làm bài kiểm tra
II Mục đích yêu cầu:
- Về kiến thức:
+ HS nắm được các kiến thức về thủ tục vài/ ra trong lập trình pascal
- Về kỹ năng: Vieets các chương truong trình đơn giản
III ĐỀ BÀI:
1/ Trình bày các thủ tục vào /ra của chương trình pascal?
2/ Nhập vào 2 cạnh của một hình chữ nhật In ra màn hình diện tích và chu vi của nó.3/ Nhập vào bán kính của hình tròn In ra màn hình diện tích và chu vi của nó
ĐÁP ÁN:
1/ (2đ) Các thủ tục vào /ra của chương trình pascal
* Các thủ tục vào (1đ)
- Trong pascal ta dùng thủ tục chuẩn sau:
Read(danh sách biến vào);hoặc
Readln(danh sách biến vào);
Trong pascal cung cấp thủ tục chuẩn:
write(<Danh sách kết quả ra>);
hoặc writeln(<Danh sách kết quả ra>);
trong đó <Danh sách kết quả ra>có thể tên biến đơn, biểu thức, hằng.
Ví dụ: write(‘Nap so N:’); Readln(N);
• Chú ý:
+ writeln sau khi đưa kết quả ra con trỏ xuống dòng mới.
+ Ngoài ra trong TPcó quy cách đưa thông tin ra nàm hình sau:
+ Kết quả thực:
NS: / /20
NG: / /20
DL:
Trang 30Write('Nhap chieu dai='); readln(a);
Write('Nhap chieu rong=');readln(b);
s:=a*b;
c:=(a+b)*2;
Writeln('Dien tich hinh chu nhat la:’,s:6:2);
Writeln('Chu vi hinh chu nhat:',c:6:2);
Writeln('Dien tich hinh tron la:',dt:6:2);
Writeln('Chu vi hinh tron la:',cv:6:2);
Trang 31- Hiểu nhu cầu của cáu trúc rẽ nhánh trong biểu diễn thuật toán.
- Học sinh nắm vững ý nghĩa và cú pháp của câu lệnh rẽ nhánh dạng khuyết và dạng đủ,hiểu được cách sử dụng câu lệnh ghép
2 Kĩ năng:
- Sử dụng cấu trúc rẽ nhánh trong 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 khuyết, rẽ nhánh đầy đủ và áp dụng được để thể hiệnthuật toán của một số bài toán đơn giản
Giảng giải + hoạt động của học sinh
D Tiến trình bài dạy:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
Bài toán: cho 2 số nguyên a, b; tìm Max(a,b)
Yêu cầu: viết phần tên, phần khai báo, và câu lệnh nhập a, b
Nêu thuật toán tìm Max(a,b)
3 Bài mới
Hoạt động 1:
Hoạt động của giáo viên Hoạt động của học sinh Ghi bảng
GV: Giao nhiệm vụ cho HS
Hoạt động của giáo viên Hoạt động của học sinh Ghi bảng
H: Cho ví dụ về 1 câu điều Đ:+ Nếu em thuộc bài thì 10 1 Rẽ nhánh:
Trang 32GV: Chọn hai câu làm ví dụ.
Từ đó phân tích cho học sinh
thấy cấu trúc rẽ nhánh thể hiện
* Một số mệnh đề có dạng điềukiện:
+ Dạng thiếu: Nếu…thì…+ Dạng đủ: Nếu … thì … nếukhông thì …
* Cấu trúc dùng để mô tả cácmệnh đề như trên được gọi làcấu trúc rẽ nhánh thiếu và đủ
* Mọi ngôn ngữ lập trình đều
có các câu lệnh để mô tả cấutrúc rẽ nhánh
khoá Else không có dấu ; và
sau then, sau else chỉ có 1 lệnh
chương trình
GV: Với 2 dạng này, dạng nào
thuận tiện hơn?
- Điều kiện là biểu thức lôgic
- Câu lệnh, câu lệnh 1, câu lệnh
2 là 1 câu lệnh của Pascal
Hoạt động 4:
Hoạt động của giáo viên Hoạt động của học sinh Ghi bảng
GV: Muốn thực hiện nhiều
lệnh sau if hoặc sau then thì
làm thế nào?
→ Dẫn đến khái niệm và cách
dùng câu lệnh ghép: 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
H: Gọi học sinh nêu thuật toán
End;
* Ví dụ: Viết chương trình giải
phương trình bậc hai
Trang 33GV: Nhận xét, bổ sung.
GV: Phân nhóm và yêu cầu
học sinh thảo luận nhóm để
viết chương trình thể hiện
thuật toán trên Ghi lời giải
vào bảng phụ
GV: Yêu cầu đại diện nhóm
lên treo bảng lời giải và trình
+ Ngược lại thì pt có
2 nghiệm x1,2 =
a
d b
2
±
−
HS: Thảo luận theo nhóm và
trình bày lời giải vào bảng phụ:
HS: Đại diện nhóm lên treo
bảng lời giải và trình bày
Các nhóm khác nhận xét
Program ptb2;
Var a, b, c, d, x1, x2: real;Begin
Write(‘ Nhap a, b, c:’);
Readln(a,b,c);
d := b*b – 4*a*c;
If d < 0 then Write(‘ PT vonghiem’) else
BeginWrite(‘ PT co nghiem :’);x1:= (- b – sqrt(d))/(2*a);x2:= (- b + sqrt(d))/(2*a);Write(x1:6:2, x2:6:2);
End;
Readlnend
4 Củng cố: GV tóm tắt các vấn đề cần nắm trong bài:
- Cú pháp, ý nghĩa của câu lệnh rẽ nhánh dạng đủ và dạng khuyết
- Cách sử dụng câu lệnh ghép
5 Dặn dò: Bài tập về nhà:
- Học bài, trả lời câu 1, 2 trang 50 và làm bài 4 trang 51 sgk
- Viết chương trình tìm Max(a, b, c)
- Viết chương trình giải phương trình bậc nhất
- Chuẩn bị bài mới: Cấu trúc lặp
Tiết 13, 14 : CẤU TRÚC LẶP
A Mục đích yêu cầu:
- Về kiến thức:
+ Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán
+ Biết được cấu trúc chung của lệnh lặp FOR trong ngôn ngữ lập trình
+ Hiểu được cấu trúc lặp với số lần biết trước và câu lệnh FOR - DO
- Về kỹ năng:Bước đầu sử dụng được lệnh lặp FOR để lập trình giải quyết được một sốbài toán đơn giản
Trang 343 Nội dung dạy học:
* HĐ1: Tìm hiểu ý nghĩa của cấu trúc lặp
Tiết 13:
- Nếu giải bài toán trên với việc
in khoảng 10 dòng có từ
PASCAL?
- Có nhận xét gì về các dòng
lệnh trong chương trình trên?
- Đối với những thuật toán có
những thao tác phải thực hiện
lặp đi lặp lại một số lần thì máy
tính có thể thực hiện hiệu quả
B1: S=0; n=0B2: n → n +1B3: Nếu n > 20 thì chuyểnđến B5
B4: S= S + n rồi quay laib2
B5: Đưa S ra màn hình vàkết thúc
+ Lặp với số lần chưabiết trước
Trang 35- 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?
Thuật toán 2:
B1: S=0; n=20B2: n → n -1B3: Nếu n < 1 thì chuyểnđến B5
B4: S= S + n rồi quay laib2
B5: Đưa S ra màn hình vàkết thúc
- 2 loại
Tiết 14:
* HĐ 2: Tìm hiểu cấu trúc lặp với số lần biết trước và câu lệnh FOR - DO
- Số lần lặp của cả 2 thuật toán
trên là biết trước và như nhau
Giới thiệu câu lệnh FOR
-DO với 2 dạng tiến, lùi trong
Pascal
- Giải thích các thông số trong
câu lệnh
- Yêu cầu HS nghiên cứu SGK
và nêu hoạt động của lệnh
- Trong đó:
+ Biến đếm là biến đơn,thường có kiểu nguyên.+ Giá trị đầu, giá trị cuối làcác biểu thức cùng kiểu vớibiến đếm và giá trị đầu phảinhỏ hơn hoặc bằng giá trịcuối
- Hoạt động của lệnh DO
FOR-+ Dạng lặp tiến: câu lệnhviết sau từ khóa DO đượcthự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,
+ Dạng lặp lùi: câu lệnh viếtsau từ khóa DO được thựchiện tuần tự, với biến đếmlần lượt nhận các giá trị liêntiếp giảm từ giá trị cuối đến