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 12 phút Hoạt động của giáo viên Hoạt động của học sinh Nội dung - Cho bài toán sau: Kết luận nghiện của phương trì
Trang 1Tiết PPCT: 01
Chương I: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP
TRÌNH Bài 1: KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
- Ham muốn tìm hiểu các ngôn ngữ lập trình
II TRỌNG TÂM KIẾN THỨC
- Các khái niệm: lập trình, chương trình dịch
- Sự khác nhau giữa thông dịch và biên dịch
III CHUẨN BỊ
1 Giáo viên:
2.Học sinh: Đọc trước SGK, xem lại một số kiến thức Tin học lớp 10.
IV TIẾN TRÌNH LÊN LỚP
1.Ổn định tổ chức: (5 phút)
Kiểm tra sĩ số lớp
2 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 (12 phút)
Hoạt động của giáo viên Hoạt động của học sinh Nội dung
- Cho bài toán sau: Kết luận
nghiện của phương trình ax
+ B1: Nhập a, b
B2: Nếu a<> 0 kết luận cónghiệm x=-b/a
B3: Nếu a=0 và b<>0, kếtluận vô nghiệm
B4: Nếu a=0 và b=0, kếtluận vô số nghiệm
Bài 1: KHÁI NIỆM LẬPTRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
Trang 2chúng ta gọ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 đạt một thuật toán
thông qua một ngôn ngữ lập
được viết bằng ngôn ngữ
máy khác nhau như thế
- Vì sao không lập trình trên
ngôn ngữ máy để khỏi mất
công chuyển đổi khi lập
trình với ngôn ngữ bậc cao?
- Dùng ngôn ngữ lập trình
- Nghiên cứu nội dungtrong SGK và trả lời câuhỏi:
+ Lập trình là việc sử dụngcấ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
- Đượ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ờicâu hỏi
+ Chương trình viết bằngngôn ngữ máy có thể nạptrực tiếp vào bộ nhớ và thựchiện ngay
+ Chương trình viết bằngngôn ngữ lập trình bậc caophải được chuyển đổi thànhchươ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ươngtrì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
- 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ônngữ lập trình cụ thể để
mô tả dữ liệu và diễnđạt các thao tác củathuật toán
Trang 3Hoạt động 2: Tìm hiểu thông dịch và biên dịch (15 phút)
Hoạt động của giáo viên Hoạt động của học sinh Nội dung
- Theo các em đối với
tiếng Anh dịch từng câu nói
của em sang tiếng Anh cho
người khách Cách mày gọi
lag thông dịch
C2: Em soạn nội dung 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 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ên dịch
- Các em hãy cho biết tiến
trình của thông dịch và biên
dịch?
- Nghiên cứu SGK và trảlời câu hỏi:
+ Chương trình nguồn làchương trình viết bằng ngônngữ lập trình bậc cao
+ Chương trình đích làchương trình thực hiệnchuyển đổi sang ngôn ngữmáy
-Nghiên cứu SGK và trả lờicâu hỏi:
+ Thông dịch:
B1: 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ủa
- Chương trình dịchgồm
a) Thông dịchB1: Kiểm tra tính đúngđắn của câu lệnh tiếptheo trong chươngtrình nguồn;
B2: Chuyển lệnh đóthành ngôn ngữ máyB3: Thực hiện các câulệnh vừa được chuyểnđổi
+ Biên dịch:
Trang 4cá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ó thểlưu trữ để sử dụng lại khicần thiết
B1: Duyệt, phát hiệnlỗi, kiểm tra tính đúngđắn của các câu lệnhtrong chương trìnhnguồn
B2: Dịch toàn bộchương trình nguồnthành một chươngtrình đích có thể thựchiện trên máy và cóthể lưu trữ để sử dụnglại khi cần thiết
Hoạt động 3: Bài 2: Các thành phần của ngôn ngữ lập trình (11 phút)
Hoạt động của giáo viên Hoạt động của học sinh Nội dung
những kí hiệu nào để viết
chương trình, viết theo quy
tắc nào? viết như vậy có ý
nghĩa là gì? Mỗi ngôn ngữ
dấu nháy kép(“), dấu sổ
ngược(\), dấu chấm than(!)
- Giới thiệu cú pháp.
- Trả lời: Ta cần biết:
+ Chữ cái+ Cú pháp+ Ý nghĩa của điều cầndiễn tả
a Bảng chữ cái: Là
tập các kí hiệu dùng đểviết chương trình
b Cú pháp
- Là bộ quy tắc để viếtchương trình
Trang 5- HS lắng nghe và ghichép.
c Ngữ nghĩa
Xác định ý nghĩa thaotác cần phải thực hiện,ứng với tổ hợp kí tự dựavào ngữ cảnh của nó
Tóm lại:
- cú pháp cho biếtcách viết một chươngtrình hợp lệ, còn ngữnghĩa xác định ý nghĩacủa các tổ hợp kí tựtrong chương trình
- Các lỗi cú phápđược chương trình dịchphát hiện và thông báocho người lập trìnhbiết chương trìnhkhông còn lỗi cú phápthì mới có thể dịchsang ngôn ngữ máy
- Lỗi ngữ nghĩa đượcphát hiện khi chạychương trình
4 Củng cố (1 phút)
- 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
- Thông dịch và biên dịch
5 Dặn dò (1 phút)
- Đọc trước bài mới, học bài cũ
Trang 6- 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
2 Kiểm tra bài cũ (5 phút)
Hỏi: Nêu các thành phần cơ bản của nhôn ngữ lập trình.
Đáp: Gồm: bảng chữ cái, cú pháp, ngữ nghĩa.
3 Bài mới
Hoạt động 1: Giới thiệu Tên (15phút)
Hoạt động của giáo viên Hoạt động của học sinh Nội dung
- Trong các ngôn ngữ lập
trình nói chung, các đối
tượng sử dụng trong
chương trình đều phải đặt
tên để tiện cho việc sử
dụng Việc đặt tên trong các
- Mọi đối tượng trongchương trình đều phảiđược đặt tên theo quy tắccủa ngô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ặcgạch dưới
Trang 7không phân biệt chữ hoa
- Lấy VD, yêu cầu HS chỉ
ra các tên đúng, tên sai ?
- Ví dụ: một số tên dành
riêng:
+ Trong pascal : program,
uses, var, const,
+ Trong c++: main, include,
- Trả lời
- Quan sát
- Ngôn ngữ lập trình có 3loại tên: tên dành riêng,tên chuẩn, tên do ngườilập trình đặt
* Tên dành riêng: Là
những tên được ngôn ngữlập trình quy định với ýnghĩa riêng xác định màngười lập trình khôngđược dùng với ý nghĩakhác
- Tên dành riêng đượcgọi là từ khoá
* Tên chuẩn: là nhữnh
tên được ngôn ngữ lậptrình dùng với ý nghĩanhất định nào đó Trongcác thư viện của ngônngữ lập trình
* Tên do người lập trình đặt: Được xác định
bằng cách trước khi sửdụng, không được trùngvới tên dành riêng
Hoạt động 2: Hằng và biến (15 phút)
Hoạt động của giáo viên Hoạt động của HS Nội dung
- GV đưa ra ví dụ: Để viết một
chương trình giải phương trình
bậc hai ta cần khai báo những
- Các ngôn ngữ lập trìnhthường có:
+ Hằng số học: số nguyênhoặc số thực
Trang 8trị của delta.
- Biến là gì? - Biến là đại lượng có
thể thay đổi được nênthường dùng để lưutrữ kết quả trongchương trình
+ Hằng logic: Là các giá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ể đượcthay đổi trong quá trìnhthực hiện chương trình
- Biến phải khai báo trướckhi sử dụng
Hoạt động 3: Chú thích (7 phút)
Hoạt động của giáo viên Hoạt động của HS Nội dung
- Đôi khi người viết cần chú
- Trong pascal chúthích được đặt trong {}hoặc (* *)
Trong C++ chú thíchđặt trong: /* */
4 Củng cố (1 phút)
- 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áckhá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ừngkhái niệm trong chương trình
5 Dặn dò (1 phút)
- Bài 5,6 (trang 13 SGK)
- Đọc trước bài mới, học bài cũ
Trang 9- 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 TRỌNG TÂM KIẾN THỨC
- Khái niệm lập trình, chương trình dịch
- Các thành phần cơ bản của Pascal
III.CHUẨN BỊ
- 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
- 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.
IV TIẾN TRÌNH LÊN LỚP
1 Ổn định lớp: (1 phút)
2 Kiểm tra bài cũ: (tiến hành trong giờ)
3 Bài mới: (35 phút)
Hoạt động của giáo viên Hoạt động của HS Nội dung
- Đặt vấn đề: Trước khi giải
bài tập trong SGK, các em
tự ôn lại một số kiến thức
mà chúng ta đã học ở các
bài trước dựa trên yêu cầu
của câu hỏi trang 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
- Đọc yêu cầu của
câu hỏi và bài tậpcuối chương trang
13 SGK
- Suy nghĩ để đưa
ra phương án trảlời
Trang 10- Gợi ý: dựa vào đặc điểm
của ngôn ngữ bậc cao để trả
lời
- Nhận xét, đánh giá và bổ
sung hướng dẫn cho học
sinh trả lời câu hỏixs số 1:
- Đặt câu hỏi 2: Chương
- Chương trình viết bằng
ngôn ngữ bậc cao dễ hiểu,
dễ hiệu chỉnh và dễ nângcấp
- Ngôn ngữ bậc cao cho
phép làm việc với nhiềukiêu dữ liệu và cách tổchức dữ liệu đa dạng,thuận tiện cho mô tả thuộctoán
2 Câu 2:
- Chương trình dịch là
chương trình đặc biệt, cóchức năng chuyển đổichương trình được viếttrên ngôn ngữ lập trình bậccao thành chương trìnhthực hiện được trên máytính cụ thể
- Trình thông dịch lần lượt
dịch từng câu lệnh ra ngôn
Trang 11- Đặt câu hỏi 4: Hãy cho
biết các điểm khác nhau
giữa tên dành riê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ụ về tên do người
lập trình đặt
- Nhận xét, sửa chữa, góp ý.
- Đặt câu hỏi 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 trong Pascal và
VD:
Tên dành riêng
trong Pascal:
program, uses,const, type, var,begin, end …
Tên chuẩn: trong
4 Câu 4:
- Tên dành riêng không
được dùng khác với ý
nghĩa đã xác định, tên chuẩn có thể dùng với ý
nghĩa khác
5 Câu 5: Gợi ý: Trong
Pascal tên (do người lập
trình đặt) được đặt tuântheo các quy tắc sau:
- Tuy nhiên, không nên
đặt tên quá dài hay quá
ngắn mà nên đặt sao chogợi ý nghĩa đối tượngmang tên đó
6 Câu 6: Những biểu diễn
sau đây không phải làhằng trong Pascal:
6,23 dấu phẩy phải thaybằng dấu chấm;
A20 là tên chưa rõ giá trị;
4+6 là biểu thức hằngtrong Pascal chuẩn cũngđược coi là hằng trong
Trang 13- Tư duy logic.
II TRỌNG TÂM KIẾN THỨC
- Cấu trúc chung của chương trình Pascal.
- Các loại khai báo: tên chương trình, biến.
2 Kiểm tra bài cũ: (5 phút)
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 ?
Yêu cầu học sinh đọc SGK
phần khai báo Sau đó trả
lời câu hỏi
- Đọc sách
- Trả lời
1 Cấu trúc chung
- Gồm 2 phần:[<phần khai báo>]
<phần thân>
Hoạt động 2: Các thành phần của chương trình.(20 phút) Hoạt động của giáo viên Hoạt động của HS Nội dung
- Có các phần khai báo
trong chương trình Pascal:
tên chương trình, thư viện,
2 Các thành phần của chương trình.
Trang 14program <tên chương
trình>;
- Lấy VD.
- Yêu cầu HS lấy VD?
- CP khai báo thư viện:
uses <tên các thư viện>;
- Yêu cầu HS lấy VD?
- Yêu cầu HS nêu cú pháp?
- Ví dụ: N=100;
- Cú pháp khai báo biến:
var <danh sách biến>;
- Biến đơn là biến chỉ nhận
1 giá trị tại 1 thời điểm thực
hiện chương trình
- Các cách khai báo được
trình bày trong bài 5
- Lấy VD.
- Lấy VD.
- Cú pháp khai báohằng :
const <tên hằng=giá trị>;
Khai báo thư viện
uses <tên các thư viện>;
+ ví dụ: trong pascal uses crt;
Hoạt động 3: Phần thân chương trình - ví dụ chương trình đơn giản (10 phút)
Hoạt động của giáo viên Hoạt động của HS Nội dung
- Nêu chương trình Pascal:
End
- Nhận xét:
Hai chương trình cùng thực hiện mộ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
3 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”);
}
Trang 154 Củng cố (1 phút)
- Nêu lại cấu trúc chung
- Nhắc lại cú pháp khai báo tên chương trình, thư viện và hằng
5 Dặn dò (1 phút)
- Lấy VD khai báo tên chương trình, thư viện và hằng.
Trang 16Tiết PPCT: 5
Bài 4: MỘT SỐ KIỂU DỮ LIỆU CHUẨN.
Bài 5: KHAI BÁO BIẾN.
Ngày soạn :
Ngày dạy:
I MỤC TIÊU
1 Kiến thức:
- Biết được một số kiểu dữ liệu chuẩn
- Biết cách khai báo biến
2 Kĩ năng:
- Xác định được kiểu khai báo của dữ liệu
- Khai báo biến đúng cấu trúc
3 Tư duy – thái độ:
- Tư duy logic
II TRỌNG TÂM KIẾN THỨC
- Các kiểu dữ liệu chuẩn
- Cách khai báo biến
2 Kiểm tra bài cũ: (7 phút)
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
3 Bài mới
Hoạt động 1: Đặt vấn đề (5 phút) Hoạt động của giáo viên Hoạt động của học sinh Nội dung
…
Hoạt động 2: Một số kiển dữ liệu chuẩn (13 phút)
Hoạt động của giáo viên Hoạt động của học sinh Nội dung
- Yêu cầu học sinh nghiên
Trang 17cứu sách Trả lời các câu hỏi
sau:
1 Có bao nhiêu dữ liệu
chuẩn trong ngôn ngữ
Pascal ?
2 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
3 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
4 Nêu kiểu kí tự?
5 Nêu kiểu logic?
- Có 4 kiểu : kiểu nguyên,thực, kí tự, lôgic
- Có 4 loại : Byte, word,integer, logint
- Có 2 loại: Real, extended
- Tên kiểu: Char; bộ nhớcho 1 giá trị là 1 byte; phạm
- Yêu cầu học sinh nghiên
cứu SGK và cho biết cú
pháp khai báo?
- Giải thích:
+ Danh sách biến: là 1 hoặc
nhiều biến
Nếu các biến cùng kiểu
tên các biến cách nhau dấu
phẩy
Nếu các biến khác kiểu
nên đặt trên nhiều dòng
Nhưng chỉ dùng 1 từ Var
+ Kiểu dữ liệu : tên của 1
kiểu chuẩn hoặc do người
- Danh sách biến: là 1hoặc nhiều biến
Kiểu dữ liệu : tên của
1 kiểu chuẩn hoặc dongười dùng tự địnhnghĩa
- Ví dụ: trong chươngtrình ta cần dùng biến
a kiểu số nguyên, bkiểu số thực
Var a : integer;
b : real;
4 Củng cố (1 phút)
Trang 18- Các kiểu dữ liệu chuẩn.
- Cách khai báo biến
5 Dặn dò (1 phút)
- Mỗi em cho ví dụ về Khai báo biến ( hôm sau trả lời)
- Đọc phần một số chú ý khi khai báo biến
- Đọc trước bài 6
Trang 19- 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
- Nắm vững một số hàm chuẩn thông dụng trong NNLT Pascal
- Biết được chức năng của lệnh gán và cấu trúc của nó
2 Kỹ năng:
- Sử dụng các phép toán, biểu thức số học, hàm số học chuẩn để viết các biểu thức trong Pascal
- Xác định được kết quả của một số biểu thức quan hệ, biểu thức logic
- 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 KIẾN THỨC TRỌNG TÂM
- Các biểu thức: số học, quan hệ, logic
2 Kiểm tra bài cũ (5 phút)
Hỏi: Nêu cú pháp, lấy VD về khai báo biến.
trong NNLT hay không?
- Yêu cầu học sinh đọc SGK
1 Phép toán:
NNLT Pascal sử dụngmột số phép toán nhưsau:
+ Phép toán số học:+ , - , *, / , DIV,MOD
Trang 20- Lưu ý cách viết một số
phép toán trong Pascal không
giống trong toán học
+ Phép toán quan hệ:
<, <=, > , >=, =, <
> + Phép toán logic:
AND, OR, NOT
+ Phép toán quan hệ:
<, <=, > , >=, =, <
> + Phép toán logic:AND, OR, NOT
Hoạt động 2: Tìm hiểu biểu thức số học (7 phút) Hoạt động của giáo viên Hoạt động của học
- Yêu cầu học sinh đọc SGK
và nêu quy tắc viết biểu thức
Yêu cầu học sinh đọc thứ
thự ưu tiên thực hiện trong
- Đọc sách
2 Biểu thức số học:
- Quy tắc viết:
+ Chỉ dùng ( ) để xácđịnh thứ tự ưu tiênphép toán
+ Viết từ trái quaphải
+ Không bỏ qua dấu
* trong tích
- VD: ( SGK - 25)
- Thứ tự thực hiệncác phép toán:
+ Trong ngoặc trước,ngoài ngoặc sau.+ Nhân, chia, chianguyên, chia lấy dưtrước, cộng, trừ sau
Hoạt động 3: Tìm hiểu một số hàm số học chuẩn (7 phút)
Hoạt động của giáo viên Hoạt động của học sinh Nội dung
- 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 hàm
- Cho biểu thức
- Quan sát SGK và điểntranh
- Trả lời:
3 Hàm số học chuẩn:
- Cách viết cho một
số hàm số học chuẩn:
Tên hàm (đối số)
Trang 21Chuyển biểu thức sang cách
viết trong Pascal?
.(abs(x)-sqrt(2*x+1)/(x*
x-1)
+ Đối số là một haynhiều biểu thức sốhọc đặt trong dấungoặc ( ) sau tênhàm
- VD:
Hoạt động 4: Biểu thức quan hệ (5 phút)
Hoạt động của giáo viên Hoạt động của học sinh Nội dung
- Yêu cầu học sinh nêu dạng
chung của biểu thức quan
- Kết quả của biểu thức quan
hệ là TRUE hoặc FALSE
- Dạng chung:
<BT1> < phép toánquan hệ > <BT2>+ trong đó BT1 vàBT2 phải cùng kiểu,
có thể là số hoặcbiểu thức số học
- Kết quả của biểuthức quan hệ làTRUE hoặc FALSE
Hoạt động 5: Biểu thức logic (8 phút)
Hoạt động của giáo viên Hoạt động của học
sinh
Nội dung
- Yêu cầu học sinh đọc SGK,
phát biểu khái niệm của biểu
- Đọc sách và trả lời
- Kết quả của biểu thứcquan hệ là TRUE hoặcFALSE
- Ghi bài
5 Biểu thức logic
- Biểu thức logicđơn giản là biếnhoặc hằng logic
- Biểu thức logic là
sự kết hợp của biểuthức logic đơn giản
và biểu thức quanhệ
- Kết quả của biểuthức quan hệ là
FALSE
Trang 22true false false true
false true false true
false false false false
- Nhắc lại một số khái niệm 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ò (1 phút)
- 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
Trang 23Tiết PPCT: 7
Bài 7: THỦ TỤC CHUẨN VÀO/ RA ĐƠN GIẢN.
Bài 8: SOẠN THẢO, DỊCH, THỰC HIỆN VÀ HIỆU CHỈNH CHƯƠNG
- Ham muốn tìm hiểu cách biên soạn và thực hiện chương trình
II TRỌNG TÂM KIẾN THỨC
2.Kiểm tra bài cũ (5 phút)
Hỏi: Kể tên các hàm số học chuẩn?
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 (15 phút)
Hoạt động của giáo viên Hoạt động của học
sinh
Nội dung
- Khi giải một bài toán,
những đại lượng đã biết phải
nhập thông tin vào, như vậy
- Yêu cấu học sinh lấy VD
- Thủ tục READ sau khi
dọc xong giá trị con trỏ
- Cú pháp:
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ĩanhư nhau, thường hay
Trang 24Hoạt động 2: Tìm hiểu thủ tụcđưa dữ liệu ra màn hình (15 phút)
Hoạt động của giáo viên Hoạt động của HS Nội dung
- Trên đây là thủ tục nhập dữ
liệu vào còn xuất ra thì sao?
- Yêu cầu học sinh nêu cú
hoặc
writeln(<Danh sách kết quả ra>);
- Lấy VD
- Trả lời
2 Đưa dữ liệu ra màn hình
- Cú pháp:
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,
- Ngoài ra trong TPcó quycá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 : cách soạn thảo, dịch, thực hiện, hiệu chỉnh chương trình (17 phút)
Hoạt động của GV Hoạt động của
HS
Nội dung
- Nêu các bước cần
làm khi làm việc với - Nghe giảng,
ghi chép Một số tao tác thường dùng trong
pascal:
Trang 25Pascal - B1: Khởi động Pascal.
- 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ò (1 phút)
- Về nhà làm bài tập trong sách trang 35, 36
Trang 26- Ham muốn tìm hiểu lập trình.
II TRỌNG TÂM KIẾN THỨC
- Chương trình tính chu vi, diện tích tam giác
- Chương trình tính tổng, hiệu, tích, thương 2 số nguyên a,b
2 Kiểm tra bài cũ (5 phút)
Hỏi: Nêu cú pháp, lấy VD thủ tục chuẩn vào và ra?
3 Bài mới
Hoạt động 1: Tính tổng, hiệu, tích, thương của 2 số nguyên (15 phút)
Hoạt động của giáo viên Hoạt động của học
- Để chuẩn bị viết chương
trình, ta nên nêu lên 1 cách
khái quát các lệnh cần viết
- Một chương trình Pascal
gồm những phần nào?
- Trong bài này, ta cần khai
báo những biến nào, thuộc
kiểu dữ liệu nào ?
- Trong phần thân: việc đầu
tiên là nhập a, b Sau đó, ta
tính t, h, ti, th theo công
thức và thông báo kết quả
- Lắng nghe
- Trả lời:
Tổng = a + bHiệu = a - bTích = a * bThương = a/b
- Gồm 2 phần: khai báo
và thân
- Biến a, b, t, h, ti kiểunguyên Biến th kiểuthực
Bài 1: Nhập vào 2 số
nguyên a,b Tính tổng,hiệu, tích, thương của 2số
* Phân tích :
- Khai báo : Biến a, b, t,
ti kiểu nguyên Biến thkiểu thực
- Thân :+ Nhập a, b
* Chương trình:
Var a, b, t, h, ti: integer;
Trang 27thông báo kết quả?
- Gợi ý và yêu cầu học sinh
lên bảng viết từng câu lệnh
theo như phân tích
- Lệnh gán
- Lệnh write hoặcwriteln
- Lên bảng viết chươngtrình
Th: real;
BeginWrite(‘nhap a,b:’);Readln(a,b);
Readln;
End
Hoạt động 2: Tính chu vi, diện tích của tam giác (12 phút)
Hoạt động của giáo viên Hoạt động của học
sinh
Nội dung
- Nêu đề bài
- Cách tính chu vi, diện tích
tam giác vuông khi biết 2
cạnh góc vuông?
- Hãy nêu khái quát các
lệnh cần viết?
- Trong bài này, ta cần khai
báo những biến nào, thuộc
kiểu dữ liệu nào ?
- Phần thân có những nội
dung chính nào?
- Gợi ý và yêu cầu học sinh
lên bảng viết từng câu lệnh
theo như phân tích
- Lắng nghe
- Trả lời:
Trước hết cần tính cạnhhuyền c
- Lên bảng viết chươngtrình
Bài 2: Nhập vào 2 cạnh
góc vuông a,b của tamgiác vuông Tính chu vi,diện tích tam giác đó
+ Tính:
C =
Cv = a + b + c
S = ab/2+ Thông báo kết quả
* Chương trình:
Var a, b: integer;
C, cv, s : real;
BeginWrite(‘nhap a,b:’);Readln(a,b);
C:= sprt(a*a+b*b);Cv:=a+b+c;
Trang 28của tam giác bất kì Tính
chu vi, diện tích
Hoạt động 3: Bài 9 SGK trang 36 (10 phút)
Hoạt động của giáo viên Hoạt động của học
nào so với cả đường tròn?
- Hãy nêu khái quát các
lệnh cần viết?
- Gợi ý và yêu cầu học sinh
lên bảng viết từng câu lệnh
theo như phân tích
Trong phần thân: việcđầu tiên là nhập a Sau
đó, ta tính s theo côngthức và thông báo kếtquả
- Lên bảng viết chươngtrình
* Chương trình:
Var a: integer;
s : real;
BeginWrite(‘nhap a:’);
- Các bước cần làm khi viết chương trình
- Các lệnh hay dùng trong chương trình: khai báo biến, lệnh gán, read, write
5 Dặn dò (1 phút)
- Xem lại các bài đã chữa, làm BTVN
- Chuẩn bị cho giờ sau thực hành: Bài 1, bài 2 đã chữa ở trên
Trang 29- Biết một số chương trình Pascal hoàn chỉnh.
- Biết các thao tác cơ bản trong Pascal: khởi động, soạn thảo, lưu, sửa lỗi vàthực hiện chương trình
II TRỌNG TÂM KIẾN THỨC
- Các thao chính trong Pascal: khởi động, soạn thảo, lưu, sửa lỗi và thực hiệnchương trình
- SGK, vở ghi Làm BTVN Đọc lại nội dung tiết 7
IV TIẾN TRÌNH LÊN LỚP
- GV kiểm tra sự chuẩn bị
nội dung thực hành của học
sinh
- GV hướng dẫn học sinh
khởi động máy, và khởi động
chương trình Turbo Pascal
- Lắng nghe
- HS để nội dung thực hànhtrước mặt
- Chý ý hướng dẫn của GV
để khởi động máy và chươngtrình Turbo Pascal
Hoạt động 2: Tính tổng, hiệu, tích, thương của 2 số nguyên (13 phút)
Hoạt động của giáo viên Hoạt động của HS Nội dung
- Yêu cầu học sinh viết lên
Trang 30hiệu, tích, thương của 2 số
nguyên
Quan sát lại, sửa lại những
chỗ sai (nếu có)
- GV yêu cầu học sinh đọc và
gõ chương trình như trên
bảng
- GV yêu cầu học sinh thực
hiện các nhiệm vụ sau:
xem bảng thông báo lỗi
+ Thực hiện chương trình với
tổ hợp phím Ctrl+F9.
+ Nhập các giá trị a = 20, b =
36 Thông báo kết quả của
máy đưa ra
10 Thông báo kết quả của
máy đưa ra
chương trình vào máy
So sánh với kết quả tínhnhẩm
thương của 2 sốnguyên:
Var a, b, t, h, ti:integer;
Th: real;
BeginWrite(‘nhap a,b:’);Readln(a,b);
Writeln(‘hieula:’,h);
Writeln(‘tichla:’,ti);
Writeln(‘thuong la:’,th);
Readln;
End
Hoạt động 3: Tính chu vi, diện tích của tam giác (12 phút)
Hoạt động của giáo viên Hoạt động của HS Nội dung
- GV yêu cầu học sinh hãy
viết chương trình lên bảng
- Yêu cầu học sinh:
+ Mở 1 bài Pascal mới bằng
cách chọn File New
+ Soạn thảo chương trình của
bài 2
+ Thực hiện các thao tác lưu
(đặt tên là BAI_2.PAS), kiểm
Var a, b: integer;
C, cv, s : real;Begin
Write(‘nhap a,b:’);Readln(a,b);
C:=
Trang 31chương trình và nhập bộ
Input:
+ a = 3, b = 4
+ a = 6, b = 10
Yêu cầu học sinh đọc kết
quả, so sánh với kết quả tính
nhẩm
- Nhấn Ctrl+F9 để chạy
chương trình
- Nhập bộ Input vàthông báo kết quả chogiáo viên
+ Bài 9 trang 36 SGK
Trang 32- Thực hiện được chương trình đơn giản.
- Từ chương trình đã có, sửa thành chương trình theo yêu cầu mới
3 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 TRỌNG TÂM KIẾN THỨC
- Các thao chính trong Pascal: khởi động, soạn thảo, lưu, sửa lỗi và thực hiệnchương trình
Hoạt động của giáo viên Hoạt động của HS Nội dung
- Yêu cầu học sinh mở chương
trình BAI_1.PAS hôm trước
đã gõ
Gợi ý: Chọn File Open,
nhấn vào tên bài, nhấn Open
- Hướng dẫn học sinh sửa
chương trình đó để được
chương trình của bài này
+ Phần khai báo cần sửa
những gì?
+ Phần thân cần thay đổi ở
đâu?
- Học sinh mở bàiBAI_1.PAS theo hướngdẫn
- Bỏ các biến t, h, ti, th
Thêm biến t1, t2 kiểunguyên
- Thay đổi phần tính(theo công thức), thôngbáo kết quả
- Viết biểu thức lên
Bài 1: Chương trình
tính
a + b(a + b)
Var a, b, t1, t2:integer;
BeginWrite(‘nhap a,b:’);Readln(a,b);
T1:=a*a*a+b*b*b;T2:=sqrt(a+b)*(a+b);
Writeln(‘tong thunhat la:’,t1);
Trang 33- Yêu cầu học sinh viết biểu
thức tính t1, t2 trong Pascal?
Quan sát lại, sửa lại những
chỗ sai (nếu có)
- GV yêu cầu học sinh gõ
chương trình như trên bảng
- GV yêu cầu học sinh thực
hiện các nhiệm vụ sau:
+ Lưu chương trình bằng tên
mới bằng cách chọn File
Save as với tên Bai_3.PAS.
+ Dịch và sửa lỗi cú pháp với
tổ hợp phím Alt+F9.
Chú ý: mở SGK trang 136 để
xem bảng thông báo lỗi
+ Thực hiện chương trình với
tổ hợp phím Ctrl+F9.
+ Nhập các giá trị a = 20, b =
36 Thông báo kết quả của
máy đưa ra
-10 Thông báo kết quả của
máy đưa ra
So sánh với kết quả tínhnhẩm
Writeln(‘tong thuhai la:’,t2);
Readln;
End
Hoạt động 2: Tính chu vi, diện tích của tam giác bất kì (15 phút)
Hoạt động của giáo viên Hoạt động của HS Nội dung
- GV yêu cầu học sinh hãy mở
lại chương trình BAI_2.PAS
hôm trước đã gõ
Sửa chương trình đó để được
chương trình này
- Gợi ý: Công thức tính chu vi,
diện tích khi biết a, b, c thế
nào?
- Yêu cầu học sinh:
- Mở chương trìnhBAI_2.PAS
- Tính:
Cv = a+b+c
p = cv/2s=
- Sửa chương trình
Bài 2: Nhập vào 3
cạnh a, b, c của tambất kì Tính chu vi,diện tích tam giác đó.Var a, b,c,p: integer;
cv, s : real;
BeginWrite(‘nhap a,b:’);Readln(a,b);
Cv:=a+b+c;
P:=cv/2;
a)*(p-b)*(p-c));
Trang 34S:=sqrt(p*(p-+ Sửa chương trình.
+ Lưu bài với tên mới là
BAI_4.PAS
+ Thực hiện kiểm tra lỗi
- Hướng dẫn học sinh chạy
chương trình và nhập bộ
Input:
+ a = 10, b = 5, c=7
+ a = 3, b = 5, c=6
Yêu cầu học sinh đọc kết
quả, so sánh với kết quả tính
Hoạt động 3: Bài 9 SGK trang 36 (12 phút)
Hoạt động của giáo viên Hoạt động của HS Nội dung
- GV yêu cầu học sinh hãy
viết chương trình lên bảng
- Yêu cầu học sinh:
+ Mở 1 bài Pascal mới bằng
cách chọn File New
+ Soạn thảo chương trình của
bài
+ Thực hiện các thao tác lưu
(đặt tên là BAI_5.PAS), kiểm
Yêu cầu học sinh đọc kết
quả, so sánh với kết quả tính
Bài 9 (SGK T36):
Var a: integer;
s : real;
BeginWrite(‘nhap a:’);Readln(a);
Trang 35- Kiểm tra kiến thức về các câu lệnh đã học: thủ tục chuẩn vào/ra, câu lệnh gán.
- Kiểm tra kiến thức về chương trình dịch, biểu diễn biểu thức trong pascal
2 Kĩ năng
- Viết được chương trình hoàn chỉnh
3 Thái độ:
- Làm bài trật tự, nghiêm túc
II TRỌNG TÂM KIẾN THỨC
- Các câu lệnh đã học: thủ tục chuẩn vào/ra, câu lệnh gán, câu lệnh rẽ nhánh
III CHUẨN BỊ
+ Giáo viên: Đề kiểm tra.
+ Học sinh: Ôn tập bài cũ.
IV TIẾN TRÌNH LÊN LỚP
1 Ổn định lớp: (1 phút)
2 Kiểm tra bài cũ: Không.
3 Kiểm tra (43 phút)
Hoạt động của giáo viên Hoạt động của HS Nội dung
- Ghi đề kiểm tra lên bảng
- Quan sát, theo dõi học sinh
Câu 2: Một biến nguyên có giá trị trong phạm vi -1 đến 700 Hỏi biến đó được
khai báo kiểu dữ liệu nào tốt nhất? (1 điểm)
Câu 3: Chuyển biểu diễn toán sang biểu diễn trong pascal (3 điểm)
1
23
Câu 4 Viết chương trình thực hiện nhập vào một số nguyên x Tính và đưa ra
màn hình y = 3x+1 Bổ sung những câu lệnh cần thiết để có được chương trình theoyêu cầu trên
Trang 36- Nhắc nhở học sinh có thái độ làm bài chưa tốt (nếu có).
- Đọc trước bài: Cấu trúc lặp
ĐÁP ÁN Câu 1: - Chương trình dịch là chương trình có chức năng chuyển chương trình viết
bằng ngôn ngữ lập trình bậc cao sang chương trình viết bằng ngôn ngữ máy (1đ)
- Thông dịch: Việc phát hiện lỗi, dịch, thực hiện câu lệnh là đan xen nhau Không cóchương trình lưu trữ (1đ)
- Biên dịch: Việc phát hiện lỗi, dịch, thực hiện là 3 công việc được thực hiện vào 3khoảng thời gian khác nhau Có chương trình lưu trữ và sử dụng ở những lần tiếptheo (1đ)
Câu 2: Biến đó được khai báo kiểu INTEGER (1đ)
Trang 37- 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 thiếu 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 đơngiản
3 Thái độ
- Hứng thú hơn với môn học khi biết thêm 1 câu lệnh mới
II TRỌNG TÂM KIẾN THỨC
- Cú pháp, hoạt động của câu lệnh if – then
- Cú pháp và vận dụng câu lệnh ghép
III CHUẨN BỊ
1 Giáo viên: SGK, giáo án, VD.
2 Học sinh: SGK, vở ghi, đọc trước bài mới.
IV TIẾN TRÌNH LÊN LỚP
sinh thấy cấu trúc rẽ nhánh
thể hiện trong ví dụ này
(Có thể có nhiều câukhác nhau)
1 Rẽ nhánh
+ Dạng thiếu: Nếu …thì …
+ Dạng đủ: Nếu …thì … nếu không thì
…
Rẽ nhánh: lựachọn làm 1 công việctheo điều kiện chotrước
- Mọi ngôn ngữ lậptrình đều có các câulệnh để mô tả cấutrúc rẽ nhánh
Trang 38Hoạt động 2: câu lênh if – then (7 phút) Hoạt động của giáo viên Hoạt động của HS Nội dung
- Câu lệnh, câu lệnh 1,câu lệnh 2 là 1 câu lệnhcủa Pascal
- Hãy phân tích và nêu nội
dung chính của chương
Nếu d<0 thì thông báophương trình vô nghiệm.Nếu d=0 thì thông báo
Trang 39- Yêu cầu học sinh lên viết
Nếu d=0 thì thông báophương trình có 1nghiệm
Nếu d>0 thì thông báophương trình có 2nghiệm
- Viết chương trình
- Quan sát
- Viết chương trình
phương trình có 1nghiệm
Nếu d>0 thì thông báophương trình có 2nghiệm
* Chương trình:
Var a,b,c,d: integer;
BeginReadln(a,b,c);
D:=a*a-4*a*c;
If d<0 then writeln(‘pt vonghiem’);
giới thiệu câu lệnh ghép
- Yêu cầu học sinh nêu cú
Writteln(‘pt co 1nghiem’);
X:=-b/(2*a);
Writeln(‘nghiemla’,x);
End;
If d>0 thenBegin
Writteln(‘pt co 2nghiem’);
X1 := (-b-sqrt(d))/ (2*a);
X2 :=(-b+sqrt(d))/ (2*a);
Writeln(‘nghiemthu nhat la’,x1);
Trang 40- Yêu cầu học sinh viết đoạn
chương trình tương ứng với
Bài tập về nhà: Nhập N nguyên Kiểm tra xem N là :
+ số âm hay số dương ?
+ Số chẵn hay số lẻ ?
+ có chia hết cho 3 không ?
+ số chính chính phương không?