- Biết các khái niệm về tên, hằng và biến trong ngôn ngữ lập trình cụ thể - Thực hiện được việc đặt tên đúng và nhận biết được tên sai quy định.. Bảng mô tả các yêu cầu cần đạt Nội dun
Trang 1- Hiểu khả năng của ngôn ngữ lập trình bậc cao, phân biệt với ngôn ngữ máy và hợp ngữ
- Hiểu ý nghĩa và nhiệm vụ của chương trình dịch Phân biệt được biên dịch và thông dịch
2 Yêu cầu:
- Biết khái niệm về lập trình
- Hs cần biết có ba 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
- HS cần 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
II Phương pháp: Nêu vấn đề kết hợp với thuyết trình.
III Đề xuất năng lực hướng đến: Học sinh hiểu được khả năng của ngôn ngữ lập trình để lập trình
giải một bài toán đã xây dựng thuật toán
III Bảng mô tả các yêu cầu đạt được:
Nội dung Loại câu
2.Khái niệm
lập trình Câu hỏi/bài tập định tính HS lấy được ví dụ về một
chương trình giải bài toán
cụ thể từ đó biết khái niệm lập trình
3.Chương
trình dịch Câu hỏi/bài tập định tính
Trang 2HS lấy được
ví dụ về kĩ thuật thông dịch và biên dịch
HS phân biệt các kĩ thuật dịch
III Nội dung bài giảng:
GV:Nhắc lại có những loại
ngôn ngữ lập trình nào?
GV: Phân biệt ngôn ngữ bậc
cao với các ngôn ngữ lập
trình giải được các bài toán
trên máy tính Trong lập trình
Trang 3HĐ của Giáo viên HĐ của Học sinh Nội dung ghi bảng
GV cho hs viết 2 kĩ thuật
thông dịch và biên dịch sau
đó hỏi: Biên dịch và thông
dịch khác nhau như thế nào?
HS: Trả lời
3 CHƯƠNG TRÌNH DỊCH
a Khái niệm:
- Chương trình dịch là chương trình đặc biệt
có chức năng chuyển đổi chương trình đượcviết bằng ngôn ngữ bậc cao thành chtr thựchiện được trên máy tính
+ Thực hiện các câu lệnh vừa chuyển đổi
- Biên dịch: thực hiện qua 2 bước:
+ Duyệt, phát hiện lỗi, ktr tính đúng đắncủa các câu lệnh trong chtr nguồn
+ Dịch toàn bộ chtr nguồn thành mộtchương trình đích có thể thực hiện trênmáy và có thể lưu trữ để sử dụng lại khicần thiết
Trong môi trường làm việc trên một ngônngữ lập trình cụ thể, ngoài chtr dịch còn cómột số thành phần có chức năng liên quan
Chtr dịch Chtr đích
(output) Chtr nguồn
(Input)
Trang 4HĐ của Giáo viên HĐ của Học sinh Nội dung ghi bảng
như: biên soạn, lưu trữ, tìm kiếm, cho biếtkết quả trung gian
Ví dụ:
Turbo Pascal 7.0, Free Pascal 1.2, VisualPascal 2.1 …là các môi trường làm việctrên ngôn ngữ Pascal…
Ngoài ra các môi trường lâp trình còn cócác dịch vụ nâng cấp, tăng cường các khảnăng mới cho ngôn ngữ lập trình
IV Củng cố:
HS cần nắm các khái niệm về lập trình, nắm được khái niệm và các kỹ thuật chính của chương trìnhdịch
BTVN: 1, 2, 3 trang 13
Trang 5Tiết 2 :
CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH
I Mục đích và yêu cầu
- Biết ngôn ngữ lập trình có ba thành phần cơ bản là:bảng chữ cái, cú pháp, ngữ nghĩa
- Biết được một số khái niệm như: tên, tên chuẩn, tên dành riêng, tên do người lập trình đặt, hằng, biến và chú thích
- Biết các khái niệm về tên, hằng và biến trong ngôn ngữ lập trình cụ thể
- Thực hiện được việc đặt tên đúng và nhận biết được tên sai quy định
II Phương pháp:
- Nêu vấn đề kết hợp với thuyết trình
Chuẩn bị đồ dùng dạy học: Tranh chứa bảng chữ cái, tranh chứa các tên đúng, sai để học sinh chọn, phiếu học tập, máy chiếu qua đầu, bìa trong, bút dạ
III Đề xuất năng lực hướng đến:
Hs viết tên đúng khi lập trình trong ngôn ngữ lập trình.
IV Bảng mô tả các yêu cầu cần đạt
Nội dung Loại câu
trình được tạo ra từ bảngchữ cái, chữ số
2.Tên Câu hỏi/bài
tập định tính
HS biết đượccác loại tên trong ngôn ngữ lập trình:
từ khóa, tên chuẩn, tên dongười lập trình đặt Quitắc đặt tên của ngôn ngữlập trình
HS phân biệt được các loại tên: tên dành riêng (từ khóa), Tên chuẩn, tên do người lập trìnhđặt
HS viết đúng
từ khóa, tên chuẩn
HS biết cách xác định tên đúng, sai trongchương trình
3 Hằng và
biến:
a Hằng
Câu hỏi/bài tập định tính
HS lấy được
ví dụ về 3
Trang 6b Biến
loại hằng trong chươngtrình
Hs biết khái niệm biến trong ngôn ngữ lập trình
HS sử dụng biến để lưu giátrị trong chương trình
HS biết cách
sử dụng biến trong một bài toán cụ thể
Ví dụ: Giải phương trình Ax+b=0,
ax2+bx+c=0
4 Chú thích Câu hỏi/bài
tập định tính HS biết chú thích được
dùng khi cần giải thích ý nghĩa các câulệnh trong chương trình
III Nội dung bài giảng:
1.Kiểm tra bài cũ:
1 Có bao nhiêu ngôn ngữ lập trình ? So sánh ngôn ngữ bậc thấp và ngôn ngữ bậc cao ? Hãy nêu các ưu điểm khi viết chương trình bằng ngôn ngữ bậc cao ?
2 Lập trình là gì ? Chương trình dịch là gì? Phân biệt 2 kĩ thuật dịch: thông dịch và biên dịch.
2 Nội dung bài mới:
Hoạt động 1:
Tìm hiểu các thành phần của ngôn ngữ lập trình
GV:Để xây dựng nên ngôn
ngữ Tiếng Việt cần có HS:- Bảng chữ cái tiếng Việt,
§2 CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH PASCAL
Trang 7HĐ của Giáo viên HĐ của Học sinh Nội dung ghi bảng
- Ngữ nghĩa của từ và câu
- Khoảng trắng, gạch dưới
b Cú pháp: quy tắc dùng để viết chtr.
c Ngữ nghĩa: xác định ý nghĩa thao tác cần
thực hiện ứng với mỗi tổ hợp kí tự dựa vào ngữ cảnh của nó
Hoạt động 2: Tìm hiểu các loại tên trong ngôn ngữ lập trình Phân biệt các loại tên
Mọi đối tượng trong chtr
cần phải được đặt tên
Hãy nghiên cứu sách GK
tr10, để nêu quy tắc đặt tên
Đv NNLT Pascal quy tắc đặt tên như sau:
- Tên trong TP là một dãy không quá 127 ký
tự liên tiếp nhau bao gồm các ký tự chữ cái,
Trang 8HĐ của Giáo viên HĐ của Học sinh Nội dung ghi bảng
biết về tên dành riêng, tên
chuẩn, tên do người sử
dụng đặt
Cho các tên sau:
Program, abs, Integer,
Type, Xyx, Byte, Tong
Yêu cầu học sinh mỗi
GV: Hãy chỉ ra tên khóa,
tên chuẩn, tên do người lập
a.Tên dành riêng (Từ khóa): là các tênđược quy định với ý nghĩa xác định, khôngdùng các tên riêng cho các mục đích khác
VD: TP:
Program, const, var, type,
b.Tên chuẩn: là tên được dùng với một ýnghĩa nào đó, thường được quy định trongcác thư viện của NNLT
VD: TP:SQR, SQRT, INTEGER, REAL,
c Tên do người lập trình đặt:
Tên do người lập trình đặt được dung với ýnghĩa riêng, xác định bằng cách khai báotrước khi sử dụng
Lưu ý:
Khi đặt tên phải tuân thủ quy tắc đặttên của ngôn ngữ lập trình
Không được trùng với từ khóa
Hoạt động 3: Tìm hiểu Hằng và biến trong ngôn ngữ lập trình.
diễn số thực trong Tin học:
dấu phẩy động, dấu phẩy
tĩnh
Yêu cầu Hs nghiên cứu
SGK trình bày khái niệm
+Hằng số: -32767, 1.5E+2+ Hằng xâu: ‘QB’, ‘50’
3 Hằng và biến:
a Hằng: là đại lượng có giá trị không đổi
trong quá trình thực hiện chương trình
Có 3 loại hằng:
+ Hằng số học+ Hằng xâu kí tự+ Hằng logic
- Hằng số: các số nguyên, số thực
- Hằng xâu: các ký tự, được viết trong cặpdấu ' '
VD: Hằng số: 3.14, 5, 1.2E + 01
Trang 9HĐ của Giáo viên HĐ của Học sinh Nội dung ghi bảng
GV: Tên biến, tên hằng là
tên dành riêng, tên chuẩn,
hay tên do người lập trình
học
Hằng xâu: ' TIN HOC', 'Nguyen Hue' Hằng Logic: TRUE, FALSE
b Biến: là đại lượng được đặt tên để lưu trữ
giá trị mà giá trị có thể thay đổi trong quátrình thực hiện chương trình, các biến được
sử dụng phải được khai báo
Ví dụ : Khi giải pt bậc hai ta sử dụng các biến a, b, c, x1, x2
Hoạt động 4: Tìm hiểu chú thích chương trình
Yêu cầu Hs nghiên cứu
SGK trình bày những hiểu
biết về chú thích
Chú thích được dùng khi ta
cần giải thích ý nghĩa của
biến, quá trình thực hiện
- Chú thích được đặt giữa các cặp dấu: { }hoặc (* *) hoặc // //
- GV học sinh sử dụng chú thích để tạo thói quen ghi chú trong chương trình
BTVN: Trong Ngôn ngữ TP cho khai báo sau:
Trang 10Hãy chỉ ra Từ khóa, Tên chuẩn, Tên do người lập trình đặt ?
- Làm bài tập 4,5, 6 trang 13
- Bài tập 1.7, 1.9 1.14 (trang 7- Sách bài tập Tin học 11)
Trang 11Tiết 3:
BÀI TẬP
I Mục đích và yêu cầu
- Ôn tập lại các khái niệm của ngôn ngữ lập trình
- Ôn lại các khái niệm của chtr dịch và phân biệt các kĩ thuật dịch
- HS cần ghi nhớ một số các quy định về tên: tên dành riêng, tên chuẩn, tên do người lập trình đặt, hằng, biến Biết cách đặt tên đúng và nhận biết được tên sai trong ngôn ngữ lập trình Turbo Pascal
II Phương pháp: Nêu vấn đề
III Đề xuất năng lực hướng đến:
Hs biết khái niệm của ngôn ngữ lập trình và chương trình dịch, phân biệt 2 kĩ thuật dịch và nhận
biết các tên trong ngôn ngữ lập trình, sử dụng tên đúng khi viết chương trình
IV Bảng mô tả các yêu cầu cần đạt:
hỏi/bài tập
Nhận biết Thông hiểu Vận dụng
thấp
Vận dụng cao
1 Ngôn ngữ
lập trình HS biết các loại ngôn ngữ
lập trình
Câu hỏi ND1.DT.NB1
2 Chương
trình dịch HS biết khái niệm chương
trình dịch, 2 kĩthuật dịchCâu hỏiND2.DT NB1
HS phân biệt
2 kĩ thuật dịch
nhận biết từ khóa trong PascalND3.DT.NB1
Hs hiểu ý nghĩa một số
từ khóa
ND3.DT.TH1
nghĩa một số tên chuẩn
Trang 12ND5.DT.NB1 Nd5.DT.NB2
biểu diễn hằng ND6.DT.NB1 ND6.DT.NB2
biểu diễn hằng ND6.DT.NB2
V Nội dung giảng dạy:
ND1.DT.NB1 : Hãy nêu các loại ngôn ngữ lập trình? Ưu điểm của ngôn ngữ bậc cao
ND2.DT NB1: Chương trình dịch là gì? So sánh 2 kĩ thuật thông dịch và biên dịch
ND3.DT.NB1 : Trong những biểu diễn dưới đây, biểu diễn nào là từ khóa trong Pascal?
ND5.DT.NB1: Hãy chọn những biểu diễn tên trong những biểu diễn dưới đây:
Trang 13Đáp án : C, E
Nd5.DT.NB2: Hãy ví dụ bốn tên mà người dùng đặt sai trong ngôn ngữ lập trình mà em biết
và chỉ ra các lỗi trong mỗi tên đó
ND6.DT.NB1: Hãy chọn những biểu diễn hằng trong các biểu diễn dưới đây:
ND6.DT.NB2: Phát biểu nào dưới đây đúng?
A Khi cần thay đổi ý nghĩa của một từ khóa nào đó người lập trình cần khai báo theo ý nghĩa mới
B Tên do người lập trình đặt không đuược trùng với từ khóa nhưng có thể trùng với tên chuẩn
C Mọi đối tượng có giá trị thay đổi trong chương trình đều được gọi là biến
D Trong chương trình tên gọi cũng là một đối tượng không thay đổi nên cũng có thể xem là hằng
VI Củng cố: Y/c HS nhắc lại các khái niệm như: Chương trình dịch, phân biệt biên dịch và thông
dịch Nêu các loại tên trong TP, quy tắc đặt tên
- Y/c HS về nhà đọc thêm Bài đọc thêm số 1
Trang 14CHƯƠNG II:
CHƯƠNG TRÌNH ĐƠN GIẢN
Tiết 4:
CẤU TRÚC CHƯƠNG TRÌNH KIỂU DỮ LIỆU CHUẨN KHAI BÁO BIẾN
I Mục đích và yêu cầu
1 Về kiến thức:
- 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 chung của một chương trình Turbo Pascal: cấu trúc chung và các thành phần
- Biết được một số kiểu dữ liệu chuẩn: nguyên, thực, kí tự, logic
- Biết được cấu trúc của khai báo biến
2 Về kĩ năng:
Nhận biết được các phần của một chương trình đơn giản
Sử dụng được kiểu dữ liệu và khai báo biến để viết được một chương trình đơn giản
II Phương pháp: Nêu vấn đề kết hợp với thuyết trình.
III Nội dung:
HĐ của Giáo viên HĐ của Học sinh Nội dung ghi bảng
Hoạt động 1:
Một bài tập làm văn
em thường viết có mấy
phần? Các phần có thứ
tự không? Vì sao phải
chia như vậy
Yêu cầu HS nghiên
Dễ viết, dễ đọc,
dễ hiểu nộidung I Cấu trúc chung của một chương trình:
2 Phần thân chương trình:bao gồm dãy các
lệnh được đặt trong cặp dấu hiệu mở đầu và kếtthúc
Trang 15HĐ của Giáo viên HĐ của Học sinh Nội dung ghi bảng
Mở đầu Các câu lệnh;
Program <tên chương trình>;Uses <tên các thư viện>;
Const <tên hằng> = <giá trị>;Var <tên biến>: <kiểu dữ liệu>;
Phần than chương trình chính (từ Begin đến end)
Begin[ <dãy các lệnh>]
End
Ví dụ: (Sgk)
II Một số kiểu dữ liệu chuẩn
Xét một số kiểu dữ liệu chuẩn trong ngôn ngữ lậptrình Turbo Pascal
Kiểu dữ liệu Dung lượng bộ
nhớ lưu trữ
Miền giá trị
Số nguyên+Byte+ Integer+ Word+ Longi
t
1B2B2B4B
6B10B
2.9E-391.7E+38 3.4E-49321.1E+4932
Kiểu kí tự(Char)
Kiểu logic
(Boolean) 1 B +True+ False
III Khai báo biến:
Tìm hiểu cách khai báo biến trong ngôn ngữ Turbo Pascal:
Trang 16HĐ của Giáo viên HĐ của Học sinh Nội dung ghi bảng
Có bao nhiêu biến tất
cả, bộ nhớ cấp phát là
bao nhiêu?
Tổng bộ nhớ cấpphát là 22B
VAR Tên biến 1: Kiểu DL1;
Tên biến 2: Kiểu DL2;
…
Tên biến n: Kiểu DLn;
Nếu có nhiều biến cùng kiểu dữ liệu có thể khai
báo ghép, khi đó các biến cách nhau bởi dấu ,.Kiểu dữ liệu là một trong các kiểu dữ liệu chuẩncủa Turbo Pascal
Ví dụ: Ta có khai báo biến trong ngôn ngữ Tp
PROGRAM Loichao; {Dòng tiêu đề (có hoặc không)}
Hãy chỉ ra các thành phần trong chương trình trên
2 Viết chương trình tính tổng của 2 số a, b
Hãy chỉ ra phần tên, phần khai báo, phần thân chương trình ?
PROGRAM Tong;
Var a,b,c : integer;
Begin
Write(‘Nhap vao 2 so a va b:’); {Thông báo}
Trang 17D Tên do người lập trình đặt theo đúng các quy định về tên.
Câu 3: Hãy chú thích các thành phần bên trong chương trình sau:
Program Vidu;
Var a, b:Integer;
Begin
Write(‘Nhap hai so a va b:’);Readln(a, b);
Writeln(‘Tong hai so do la :’,a+b);
Trang 18Tiết 5:
PHÉP TOÁN, BIỂU THỨC, CÂU LỆNH GÁN
I Mục đích và yêu cầu
1 Về kiến thức:
- Biết được các phép toán thong 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 câu 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 thường trong ngôn ngữ lập trìnhTurbo Pascal
2 Về 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
II Phương pháp: Nêu vấn đề kết hợp với thuyết trình.
III Nội dung:
Số nguyên
1.Phép toán:
- Phép toán số học:+, -, *, /, div, modChú ý: Đối với kiểu số nguyên có them các phép toán: DIV, MOD
Trang 19Biểu thức số học.
Nhân chia trướccộng trừ sau Trongngoặc được thựchiện trước
Hàm trị tuyệt đối,hàm căn bậc hai,hàm sin, hàm cos
Bảng thứ tự ưu tiên các phép toán trong Pascal
Ví dụ : b 2 + b 2 – 4ac
2a
Trong Pascal có thể viết như sau :(Sqr(b) +sqrt (sqr(b)-4*a*c)/ (2*a)Nêu một số ví dụ sau đó yêu cầu hs viết bằng cách sử
dụng hàm chuẩn
Trang 20mà biểu diễn nhưsau:
b Biểu thức quan hệ:
Ví dụ : 2*a>b, x>0, x*y >6, sqr(x-1)+sqr(x+2) <=r*rĐ/n: Biểu thức quan hệ là hai biểu thức cùng kiểu liênkết với nhau bởi phép toán quan hệ
Cấu trúc chung:
<Biểu thức 1> <Phép toán quan hệ><Biểu thức 2>
Thứ tự thực hiện :
+ Tính giá trị của biểu thức
+ Thực hiện phép toán quan hệ
c Biểu thức logic:
Ví dụ 1,2,3( SGK trang 25, 26) VD:
7 + 5*2 = 7 + 10 = 17
18 div 5 * 2 = 6 (100 > 40) and (‘B’ < ‘A’) False Not(54<34) or (2>2) True
Trang 21Thứ tự thực hiện biểu thức logic:
+ Thực hiện các biểu thức quan hệ+ Thực hiện các phép toán logic
3 Câu lệnh gán: có hai loại: đơn giản và có cấu trúc
+ Tính giá trị của biểu thức+ Gán giá trị tính được vào tên một biến
HS cần nắm: + các phép toán trong Turbo Pascal: số học, quan hệ, logic
+ các biểu thức trong TP : số học, quan hệ, logic
+ cấu trúc lệnh gán trong Turbo Pascal:
BTVN:5,6,7,8/T35-36, xem phụ lục A trang 121
Trang 22Tiết 7: §7 CÁC THỦ TỤC CHUẨN VÀO / RA ĐƠN GIẢN
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ác công cụ của Free 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ínhhợp lí của kết quả thu được
II Phương pháp:
Sử dụng phương pháp dạy học như: nêu vấn đề giải quyết vấn đề, kết hợp với thuyết trình, vấn đáp
III Đồ dùng dạy học:
1 Chuẩn bị của giáo viên: Giáo án, Sách giáo viên, máy chiếu, máy tính
2 Chuẩn bị của học sinh: Sách giáo khoa.
III Đề xuất năng lực hướng đến:
Học sinh thực hiện được thao tác nhập và xuất dữ liệu với các biến có kiểu dữ liệu đơn giản
IV Bảng mô tả các yêu cầu cần đạt:
Nội dung Loại câu
hỏi/bài tập
thấp
Vận dụng cao
1 Nhập dữ
liệu từ
bàn phím
HS biết ý nghĩa thủ tục
READ/READLN
ND1.NB.1 ND1.NB.2
Hs nhập được một biến có kiểu dữ liệu đơn giản từ bàn phím
-HS in được dữ liệu đơn giản ra màn hình
Trang 23liệu kiểu số thực có qui cách.
IV Các bước lên lớp:
1 Ổn định lớp:
Kiểm tra sĩ số
2 Kiểm tra bài cũ: (5 phút)
Bài1: Viết chương trình tính và in ra màn hình diện tích của hình chữ nhật với chiều dài a=5 và chiều rộng b=6
Yêu cầu:
- Hãy khai báo các biến sử dụng trong chương trình
- Viết lệnh gán để tính diện tích của hình chữ nhật
Yêu cầu: Nêu thuật toán giải bài toán trên.
IV Nội dung bài giảng:
Đặt vấn đề vào bài mới
Với bài toán trên để khởi gán giá trị ban đầu cho biến, ta có thể dùng lệnh gán để gán một giá trịcho biến, vấn đề đặt ra nếu chiều rộng và chiều dài là 2 số bất kì thì ta phải nhập vào từ bàn phímcũng như in kết quả diện tích S ra màn hình thì phải làm thế nào Để hiểu rõ vấn đề đó ta vào bàimới: Các thủ tục chuẩn vào/ra đơn giản (ở đây chúng ta xét cho ngôn ngữ lập trình Pascal)
Nội dung 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
READLN( <danh sách biến vào>);
Trong đó: <danh sách biến vào> là một
hoặc nhiều tên biến đơn (trừ biến kiểu
boolean)
- nghĩa là "đọc"
Trang 24Readln; tạm dừng thực hiện chương trình
giúp cho người dùng có thể quan sát kết
quả chương trình đưa ra trên màn hình
- Gọi HS nhập giá trịvào cho 2 biến a,bMinh họa cách nhập ởslide
Lưu ý HS khi nhập chonhiều thì dấu cách ngăncách hoặc phím Entergiữa các giá trị
GV lấy ví dụ minh họatrên Free Pascal
Khi đã có các giá trịchiều dài, chiều rộng tatính được diện tích vậymuốn in kết quả diệntích ra màn hình thìchúng ta tìm hiểu thủtục đưa dữ liệu ra mànhình
Read(a) ;Readln(a) ;a=5Read(a,b) ;Readln(a,b) ; a=5,b=6
Trang 25<danh sách kết quả ra> có thể là tên
biến đơn, biểu thức, hằng.
- Các thành phần trong kết quả ra
được viết cách nhau bởi dấu phẩy.
- Thủ tục writeln sau khi đưa thông tin
ra màn hình con trỏ chuyển xuống đầu
1.Khi nhập dữ liệu vào từ bàn phím:
3.Chương trình giải bài toán:
Program Baitoan;
GV yêu cầu HS viết lệnh in ra : Xin chào học sinh lớp 11A2 GV:Giả sử diện tích S=5
GV: Cho HS xemminh họa sau đó phânbiệt 2 thủ tục Write,writeln
Cho HS xem minh họatrên slide
GV: Để chương trình
sử dụng một cáchthuận tiện khi nhập giátrị từ bàn phím ngườithường kết hợp 2 thủtục Write và Readln
GV: Lấy ví dụ minhhọa
GV: Minh họaCác em hiểu rõ hơn ởcác tiết bài tập và thựchành
Về nhà hoàn chỉnhchương trình giải bàitoán
HS:Write(‘Xin chào lớp 11 A2’);
HS:
Writeln(‘Dien tich hinh chu nhat la:’,S);
HS: Thủ tục writeln sau khi đưa thông tin ra màn
hình con trỏ chuyển
xuống đầu dòng tiếp theo.
HS: Nêu công dụng của lệnh.
Trang 26Var a,b,S: Real;
- Soạn thảo chương trình Nhấn
F2 lưu tên file *.Pas
- Biên dịch chương trình : Alt +F9
Nếu chương trình có lỗi thì sửa lỗi.
(Xem các lỗi ở trang
136138-SGk11)
- Chạy chương trình: Ctrl+F9
- Thoát khỏi chương trình: Alt+X
Để có thể thực hiện chương trình được viết bằng một ngôn ngữ lập trình ta cần soạn thảo, sử dụng chương trình dịch để dịch chương trình đó sang ngôn ngữ máy.
Ngôn ngữ lập trình Pascal cung cấp cho chúng ta phần mềm Turbo Pascal, Free Pascal
Giới thiệu giao diện Free Pascal:
- Thanh bảng chọn
- Vùng soạn thảo chương trình
- Các phím chức năng
Mở chương trình chạy chương trình giải bài toán đặt ra:
HS tập thực hiện và hiệu chỉnh chương trình.
V Củng cố (5’)
Nhắc lại các thủ tục vào/ ra đơn giản và các thao tác soạn thảo, dịch, thực hiện và hiệu chỉnhchương trình
BTVN: 9,10/SGK- Trang 36
Câu hỏi trắc nghiệm :
ND2.VDT.1: Cho biết kết quả xuất hiện trên màn hình máy tính khi thực hiện lệnh :
a :=14.25 ;
Writeln(a :0 :4) ;
Trang 27D Các câu trên đều đúng.
ND1.NB.2 :Để xem kết quả chương trình ta có thể :
A Thêm thủ tục Readln ; vào chương trình
Trang 28Tiết 7 :
SOẠN THẢO, DỊCH, THỰC HIỆN VÀ HIỆU CHỈNH CHƯƠNG TRÌNH
I.Mục đích – Yêu cầu :
Về kiến thức :
- Biết được các bước để hoàn thành một chương trình
- Biết các file chương trình cơ bản của Turbo Pascal
Về kĩ năng :
- Biết khởi động và thoát khỏi hệ soạn thảo Turbo Pascal
- Soạn thảo được một chương trình vào máy
- Dịch được chương trình để nhập dữ liệu và thu kết quả, tìm lỗi thuật toán và sửa lỗi
II Phương pháp sử dụng : nêu vấn đề giải quyết vấn đề
III Chuẩn bị đồ dùng dạy học : Dạy trên phòng Hiclass
IV Nội dung bài giảng :
Yêu cầu HS nhắc lại
các thao tác soạn thảo
văn bản MS Word
Mở file mới, lưu file, cácthao tác soạn thảo…
Áp dụng soạn thảo thựchiện và hiệu chỉnh chươngtrình ở ví dụ 5 trên máytính
1 Khởi động Turbo Pascal :
Để sử dụng được Tp trên máy tínhphải có tối thiểu các file :
Turbo.exe Turbo.tpl Graph.tpu Egavga.bgi
Và các file *.chr
2 Các Thao Tác Trên File:
+ Mở File Mới: File\New Tên file không quá 8 kí tự + Mở File Đã Có Trên Đĩa: Phím F3 + Lưu File: Phím F2
+ Đóng File: ALT-F3 + Thoát Khỏi TP: ALT-X
2 Các Thao Tác Trên Chương Trình:
Trang 29soạn thảo chương
HS tìm Test để chứng minhchương trình này sai
3 Các thao tác biên dịch:
- Kiểm tra lỗi: phím F9
- Dịch CTrình: phím ALT-F9
- Chạy CTrình: phím CTRL-F9
- Xem kết quả: ALT-F5
Ví dụ: Phát lỗi chương trình sau:Program vd1
Var x:integer;
BigenWrite(‘nhap mot so nguyen dương’);Readln(x);
Y:=sqrt(x);
Write(y);
End
V Củng cố :
- Nhắc lại cách khởi động Turbo, soạn thảo chương trình, dịch lỗi cú pháp, thực hiện chương
trình và tìm lỗi thuật toán và hiệu chỉnh
- Xem phụ lục B, SGK (t 122-136)
BTVN
1 Viết chương trình nhập vào một số và tính bình phương số đó
2 Viết chương trình nhập vào bán kính và tính chu vi diện tích hình tròn tương ứng
Trang 30Tiết 8,9:
BÀI THỰC HÀNH SỐ 1
I Mục đích và yêu cầu
1 Kiến thức :
- Biết được một chương trình PASCAL đơn giản
- Làm quen với các dịch vụ chủ yếu của TP trong việc soạn thảo, lưu, dịch và thực hiện chươngtrình
II Phương pháp: Nêu vấn đề và giải quyết vấn đề
Đặt các câu hỏi trực tiếp đ/v HS trên các thao tác trên file, soạn thảo,
III Các bước lên lớp :
1 Ổn định lớp : Phân máy cho học sinh 1hs/1máy
2 Kiểm tra bài cũ :
Nêu các thao tác trên cơ bản trong TP : Khởi động, mở file mới, mở file đã có sẵn, lưu file vàcác thao tác dịch chương trình
IV Nội dung thự hành :
T/g Nội dung thực hành Hoạt động giáo viên Hoạt động hs
Hoạt động 1 :
Tìm hiểu một chương trình
đơn giản
1.Khởi động Turbo Pascal
2 Gõ nội dung chương
trình 2a (SGK _T34)
Hs nêu cách khởi động
Nêu các thành phầntrong chương trình
TP ?Lưu ý hs cách trìnhbày chương trìnhPhần lệnh trong thânchưong trình viếtdich vào so với cặp từkhóa Begin End
Yêu cầu :-Soạn thảo chtr vàomáy
Kích đúp vào biểu tượng Turbo Pascal trênDesktop
Nếu máy nào không có Btượng TP thì tạo shortcut
Vào TP\Bin\Turbo.exe
HS trả lời
F2
Trang 31- Nhập dữ liệu 1 – 3 2thông báo kết quả
- Trở về màn hìnhsoạn thảo
- Thực hiện chươngtrình
- Nhập dữ liệu 1 0 2
thông báo kết quả
- Hỏi Vì sao lỗi xuấthiện ?
- Sửa lại chương trìnhkhông dùng biến d
Nêu lỗi thường gặp
Phần gạch chéo ghéplại thành hình gì ?Vậy thì diện tích nửahình tròn là gì ?Xác định Input vàoutput ?
Vẽ sơ đồ thuật toánbài 7
Do căn bậc hai âm
Readln(a,b,c) ;X1 :=(-b-sqrt(b*b-4*a*c))/(2*a) ;X2 :=(-b+sqrt(b*b-4*a*c))/(2*a) ;Writeln(‘x1=’,x1 :6 :2) ;Writeln(‘x2=’,x2 :6 :2) ;
Lỗi thiếu dấu ;
Nửa hình tròn
S=1/2*pi*r*rInput : rOutput : S
Trang 32V Củng cố :
- Nhắc lại cách trình bày chương trình viết bằng TP
- Các thao tác soạn thảo, dịch, hiệu chỉnh chương trình.
begin
S:=1/2*r*r*piendr
Trang 33Tiết 10 : KIỂM TRA 1 TIẾT
A Ngắn gọn hơn so với chương trình được viết bằng ngôn ngữ bậc cao
B Tốc độ thực hiện nhanh hơn so với chương trình được viết bằng ngôn ngữ bậc cao
C Diễn đạt gần với ngôn ngữ tự nhiên
D Sử dụng trọn vẹn các khả năng của máy tính
2/ Chương trình viết bằng ngôn ngữ bậc cao không có đặc điểm nào trong
các đặc điểm sau?
A Không phụ thuộc vào các loại máy, chương trình có thể thực hiện trên nhiều loại máy
B Ngắn gọn, dễ hiểu, dễ hiệu chỉnh và nâng cấp
C 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ật toán
D Máy tính có thể hiểu và thực hiện trực tiếp chương trình này
3/ Chương trình dịch không có khả năng nào trong các khả năng sau?
A Phát hiện được lỗi ngữ nghĩa
B Phát hiện được lỗi cú pháp
C Thông báo lỗi cú pháp
Trang 347/ Phát biểu nào sau đây là đúng?
A Khi cần thay đổi ý nghĩa của một từ khóa nào đó người lập trình cần khai báo theo ý nghĩa mới
B Tên do người lập trình tự đặt không được trùng với từ khóa nhưng có thể trùng với tên chuẩn
C Mọi đối tượng có giá trị thay đổi trong chương trình đều gọi là biến
D Trong chương trình tên gọi cũng là một đối tượng không thay đổi nên cũng có thểxem là hằng
8/ Xét một chương trình viết trên ngôn ngữ bậc cao được dịch sang ngôn ngữ
máy Điều khẳng định nào sau đây là đúng?
A Chương trình trên ngôn ngữ máy chứa ít câu lệnh hơn chương trình ở ngôn ngữ bậc
cao ban đầu
B Số chương trình của hai chương trình là như nhau
C Chương trình trên ngôn ngữ máy chứa nhiều câu lệnh hơn chương trình ở ngôn ngữ bậc cao ban đầu
9/ Ghép mỗi câu ở cột 1 với một câu ở cột 2 trong bảng sau:
Trang 35A 1D,2B, 3E, 4C, 5A
B 1B, 2D, 3A, 4A, 5C
C 1E, 2B, 3E, 4C, 5A
10/ Phát biểu nào sau đây là đúng ?
A Chương trình là dãy các lệnh được tổ chức theo các quy tắc được xác định bởi một ngôn ngữ lập trình cụ thể
B Trong chế độ thông dịch mỗi câu lệnh của chương trình nguồn được dịch thành một câu lệnh của chương trình đích
C Mọi bài toán đều có chương trình để giải trên máy tính
D Nếu chương trình nguồn có lỗi cú pháp thì chương trình đích cũng có lỗi cú pháp
11/ Xét biểu thức điều kiện : b*b - 4*a*c >0 Khẳng định nào sau đây là đúng:
A Biểu thức trên kiểm tra phương trình bậc hai ax2+ bx + c = 0 có nghiệm thực hay không
B Biểu thức trên kiểm tra phương trình bậc hai ax2+ bx + c = 0 có 2 nghiệm thực phân biệt
hay không
C Biểu thức trên kiểm tra phương trình bậc hai ax2+ bx + c = 0 có ít nhất một nghiệm thực
dương hay không
12/ Nếu a=0 và b=0 thì phương trình vô số nghiệm Hãy thể hiện điều kiện đó trong Pascal đó:
Trang 36A Kiểm tra n có chia hết cho 10000 hay không
B Kiểm tra xem n có bốn chữ số có nghĩa hay không
C Kiểm tra xem n có ba chữ số có nghĩa hay không
D Kiểm tra n có nhỏ hơn 10 000 hay không
16/ Cho khai báo sau:
17/ Hãy chỉ ra các lỗi trong khai báo sau:
Var a,b,d: integer;
c,c1:real;
m, b, p, d: word;
pi = 3.1416;
A b,d khai báo 2 lần
B Trình tự khai báo biến và hằng sai
C Trình tự khai báo biến và hằng đúng; b,d khai báo 2 lần
D Trình tự khai báo biến và hằng sai; b,d khai báo 2 lần
18/ Cho điều kiện: -3<=x<=3, trong Pascal thể hiện như thế nào?
A x>=-3 and x<=3
B (x>=-3) and (x<=3)
C (x>=-3) or (x<=3)
D x>=-3 và x<=3
Trang 3722/ Cho khai báo sau:
Var a,b,d: word;
c, c1: char;
m, b, p, d: word;
pi = 3.1416;
hãy chọn cách khai báo đúng nhất
A Var a,b,c,d: word;
Trang 38write ('nhap x='); readln(x); { nhập x}
write ('nhap y='); readln(y); { nhập y}
x:= x+y;
y:= x -y;
x:= x -y;
writeln( ' Gia tri moi cua x= ', x); {in giá trị x}
writeln( ' Gia tri moi cua y= ', y); {in giá trị y}
readln
end.
A Kết quả x và y sẽ đổi vị trí cho nhau
B Kết quả x và y sẽ giảm giá trị
C Kết quả x và y sẽ đổi giá trị cho nhau
D Kết quả x và y sẽ tăng giá trị
IV Đáp án & Biểu điểm: Mỗi câu 0.4đ
1[25]a 2[25]b 3[25]a 4[25]abcd 5[25]ad 6[25]ae
- Hiểu nhu cầu của cấu trúc rẽ nhánh trong biểu diễn thật toán
- Nắm được cấu trúc của cấu trúc rẽ nhánh (dạng đủ và thiếu)
- Hiểu câu lệnh ghép
2 Kĩ năng:
Bước đầu sử dụng 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
II Phương pháp: Nêu vấn đề, giải quyết vấn đề
III Chuẩn bị của giáo viên: Máy vi tính, máy chiếu Projector, máy chiếu đa
vật thể
Trang 39IV Bảng mô tả các yêu cầu cần đạt:
câu hỏi/bà
i tập
dụng thấp
Vận dụng cao
1 Bài toán Hs lấy được
ví dụ về việc
sử dụng cấu
nhánh tronggiải quyếtvấn đề
HS chỉ ra vàgiải thíchđược cấu
nhánh trong
mô tả thuậttoán cụ thể
HS vậndụngcấu trúcrẽ
nhánh
để mô
tả thuậttoán củamột bàitoánquenthuộc
HSvậndụngcấutrúc rẽnhánh
để môtảthuậttoáncủamộtbàitoánmới
Hs mô tả cấutrúc, ý nghĩalệnh
IF THEN ELSE
HS chỉ rađược cácthành phầncủa một câulệnh IF-THEN-ELSE cụ thể
Bài tậpđịnhlượng
E để chỉ rađược hoạtđộng mộtlệnh dạngIF THEN ELS
E để giảithích đượchoạt độngmột tập lệnh
cụ thể chứaIF-THEN
HS viếtđượccâu lệnhrẽ
nhánhdạng IF-THEN-ELSEthựchiệnmột tìnhhuốngquenthuộc
HSviếtđượccâulệnhrẽnhánhdạngIF-THEN-ELSEthựchiệnmộttìnhhuốngmớiBài tập
thựchành
HS sửa lỗi
nhánh dạngIF-THEN-ELSEtrong chươngtrình quen
HS vậndụngcâu lệnhrẽ
nhánhdạng IF-
HSvậndụngcâulệnhrẽ
Trang 40thuộc có lỗi
THEN-ELSE kếthợp vớicâu lệnhkhác đãhọc đểviếtđượcchươngtrìnhhoànchỉnhgiảiquyếtvấn đềtrongtìnhhuốngquenthuộc
nhánhdạngIF-THEN-ELSEkếthợpvớicáclệnhkhácđãhọcđểviếtchươn
g trìnhhoànchỉnhgiảiquyếtvấnđềtrongtìnhhuốngmới
3 Câu
lệnh
IF THEN
Câuhỏi/bàitậpđịnhtính
Hs mô tả cấutrúc, ý nghĩalệnh
IF THEN
HS chỉ rađược cácthành phầncủa một câulệnh IF-THEN
cụ thể
Bài tậpđịnhlượng
IF THEN cụthể
HS viếtđượccâu lệnhrẽ
nhánhdạng IF-THENthự
c hiệnmột tìnhhuốngquenthuộc
HSviếtđượccâulệnhrẽnhánhdạngIF-THEN-thựchiệnmộttìnhhuống