Giáo án Tin hoc 11
Ngày soạn: 18/08/2009
Chương I :
MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
Tiết PPCT 01
Bài 1 :KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
I. Mục tiêu
+ Kiến thức:
Hiểu khả năng của ngôn ngữ lập trình bậc cao, phân biệt được 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.
+ 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 dạy- học:
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
Suy nghĩ và trả lời câu hỏi:
Có 5 bước giải bài toán trên máy
tính
B1:-Xác định bài toán (Xác đinh
Input và Output)
B2: Lựa chọn và xây dựng thuật
toán (Lựa chọn TT thích hợp)
B3: Viết chương trình (CTDL và
NNLT diễn tả thuật toán)
B4: Hiệu chỉnh (Chạy thử, sửa
sai)
B5: Viết chương trình (Mô tả CT,
hướng dẫn sử dụng)
-Quan sát bài toán và trả lời câu
hỏi.
+Input: a, b
+Output: x=-b/a, vô nghiệm, vô số
nghiệm.
+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ết luận
vô nghiệm.
B4: Nếu a=0 và b=0, kết luận vô
số nghiệm.
Nhắc lại kiến thức lớp 10
Hãy nêu các cách giải bài toán trên
máy tính?
-Dùng ngôn ngữ lập trình.
-Cho bài toán sau: Kết luận nghiện
của phương trình ax + b=0.
+ Hãy xác định Input, Output của
bài toán trên.
+ Hãy xác định các bước để giải
bài toán trên
-Hệ thống các bước này chú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 ?
1
Nội dung ghi bảng
Bài 1
KHÁI NIỆM LẬP TRÌNH
VÀ NGÔN NGỮ LẬP
TRÌNH
Giáo án Tin hoc 11
-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 trình được gọi là lập trình
-Nghiên cứu nội dung trong SGK -Các em hãy cho biết khái niệm về
và trả lời câu hỏi
lập trình ?
+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 - Kết quả của hoạt động lập trình ?
ngữ bâc cao.
-Ngôn ngữ lập trình gồm những
-Nghiên cứu SGK và trả lời câu loại nào ?
hỏi.
-Theo các em chương trình được
+ Chương trình viết bằng ngôn viết bằng ngôn ngữ bậc cao và
ngữ máy có thể nạp trực tiếp vào chương trình được viết bằng ngôn
bộ nhớ và thực hiện ngay.
ngữ máy khác nhau như thế nào ?
+ 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.
-Làm thế nào để chuyển một
-Phải sử dụng một chương trình chương trình viết bằng ngôn ngữ
dịch để chuyển đổi.
bậc cao sang ngôn ngữ máy ?
Ngôn ngữ bậc cao dễ viết, dễ hiểu. -Vì sao không lập trình trên ngôn
Ngôn ngữ máy khó viết.
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
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.
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
Hoạt động của học sinh
Hoạt động của giáo viên
-Theo các em đối với chương trình
dịch: chương trình nào là chương
trình nguồn và chương trình đí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ôn ngữ lập trình
bậc cao.
+ Chương trình đích là chương
trình thực hiện chuyển đổi sang
ngôn ngữ máy.
-Nêu vấn đề: Em muốn giới thiệu
về trường mình cho một người
khách du lịch quốc tế biết tiếng
Anh, có hai cách thực hiện:
C1: Cần một người biết tiếng Anh
dịch từng câu nói của em sang
2
Ghi bảng
Giáo án Tin hoc 11
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.
-Chương trình dịch gồm thông
-Nghiên cứu SGK và trả lời câu -Các em hãy cho biết tiến trình của dịch và biên dịch.
hỏi:
thông dịch và biên dịch.
a) Thông dịch
+Thông dịch:
B1: Kiểm tra tính đúng đắn
B1: Kiểm tra tính đúng đắn của
của câu lệnh tiếp theo trong
câu lệnh tiếp theo trong chương
chương trình nguồn;
trình nguồn;
B2: Chuyển lệnh đó thành
B2: Chuyển lệnh đó thành ngôn
ngôn ngữ máy
ngữ máy
B3: Thực hiện các câu lệnh
B3: Thực hiện các câu lệnh vừa
vừa được chuyển đổi.
được chuyển đổi.
+Biên dịch:
+Biên dịch:
B1: Duyệt, phát hiện lỗi, kiểm
B1: Duyệt, phát hiện lỗi, kiểm tra
tra tính đúng đắn của các câu
tính đúng đắn của các câu lệnh
lệnh trong chương trình
trong chương trình nguồn.
nguồn.
B2: Dịch toàn bộ chương trình
B2: Dịch toàn bộ chương trình
nguồn thành một chương trình
nguồn thành một chương trình
đích có thể thực hiện trên máy và
đích có thể thực hiện trên máy
có thể lưu trữ để sử dụng lại khi
và có thể lưu trữ để sử dụng
cần thiết
lại khi cần thiết
Hoạt động 3(3’): 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.
-Thông dịch và biên dịch.
3
Giáo án Tin hoc 11
Ngày soạn :06/09/07
Tiết …..- Bài 2:
CÁC THÀNH PHẦN CỦA NGÔN NGỮ LẬP TRÌNH
I.
-
-
Mục tiêu:
1. Kiến thức:
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 và ngữ nghĩa. hiểu được ba
thành phần này
Biết một số khái niệm: Tên, tên chuẩn, tên dành riêng(từ khoá), hằng và biến.
2. Kỹ năng:
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;
1. GV: Bảng phụ, phấn, thước.
2. HS: Đọc trước bài ở nhà
III. Phương pháp
Thuyết trình, vấn đáp, hoạt động nhóm
IV. Tiến trình bài học
HĐ1: Các thành phần cơ bản (15’)
TG
HĐ CỦA HS
HĐ CỦA GV
GHI BẢNG
HĐTP1:Dẫn dắt vào baì
Chữ cái
- Để diễn tả một ngôn ngữ tự nhiên
Cú pháp
ta cần phải biết những gì?
Ý nghĩa của điều - Các ngôn ngữ lập trình nói chung
cần diễn tả.
thường có chung một số thành phần
như:Dùng những kí hiệu nào để
3’
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ữ lập trình có một quy
Lắng nghe
định riêng về những thành phần
này
1.
7’
HS chú ý
Các thành phần
cơ bản
- Mỗi ngôn ngữ lập trình
thường có ba thành
H ĐTP2: Giới thiệu bảng chữ cái
phần cơ bản là: bảng
GV treo bảng phụ 1 (SGK Trang 9)
chữ cái ,cú pháp và ngữ
Bảng chữ cái trong ngôn
nghĩa.
ngữ lập trình khác nhau có sự
khác nhau. Ví dụ bảng chữ cái
trong ngôn ngữ lập trình C++ chỉ a.Bảng chữ cái:Là tập
khác pascal là sử dụng thêm các các kí hiệu dùng để viết
4
Giáo án Tin hoc 11
kí tự như dấu nháy kép(“), dấu sổ chương trình
ngược(\), dấu chấm than(!).
HĐTP3: Giớ thiệu cú pháp
-
12’
HS lắng nghe
Cú pháp ngôn ngữ lập trình
khác nhau cũng khác nhau ngôn
ngữ pascal dùng cặp từ BeginEnd để gộp nhiều lệnh thành một
lệnh nhưng trong C++ dùng cặp kí
hiệu {}.
Ví dụ : Xét 2 biểu thức A+B (1)
A,B là các số thực.
I+J (2) với I,J là các số nguyên
b. Cú pháp
Hỏi HS: Về ngữ nghĩa 2 biểu thức - Là bộ quy tắc để viết
trên có khác nhau không?
chương trình
- Mỗi nôn ngữ khác nhau cũng có
ngữ nghĩa khác nhau
8’
8’
c. Ngữ nghĩa
Xác định ý nghĩa thao tác
cần phải thực hiện, ứng
với tổ hợp kí tự dựa vào
ngữ cảnh của nó.
Khác nhau: Dấu cộng
trong (1) là cộng 2 số
thực cong trong (2) là
cộng trong 2 số nguyên
Tóm lại:
- cú pháp cho biết cách
viết một chương trình
hợp lệ, còn ngữ nghĩa
xác định ý nghĩa củ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ịch phát
hiện và thông báo cho
người lập trình biết.
chương trình không
còn lỗi cú pháp thì mới
có thể dịch sang ngôn
ngữ máy.
- Lỗi ngữ nghĩa được
HS lắng nghe và ghi chép.
3’
5
Giáo án Tin hoc 11
phát hiện khi chạy
chương trình
HĐ2: Giới thiệu Tên(15’)
TG
HĐ CỦA HS
5’
4’
HĐ CỦA GV
GHI BẢNG
- Trong các ngôn ngữ lập trình nói 2 Một số khái niệm
chung,các đối tượng sử dụng a.
Tên:
trong chương trình đều phải đặt - Mọi đối tượng trong
tên để tiện cho việc sử dụng.
chương trình đều phải
Việc dặt tên trong các ngôn ngữ
được đặt tên theo quy tắc
Lắng nghe và ghi chép
khác nhau là khác nhau,có ngôn
của ngôn ngữ lập trình
ngữ phân biệt chữ hoa,chữ - Trong ngôn ngữ turbo
thường, có ngôn ngữ không phân
pascal tên là một dãy liên
biệt chữ hoa, chữ thường.
tiếp không quá 127 kí tự
bao gồm: chữ số, chữ cái
hoặc dấu gạch dướivà bắt
- Ngôn ngữ lập trình pascal không
đầu bằng chữ cái hoặc
phân biệt chữ hoa chữ thường
gạch dưới
nhưng một số ngôn ngữ lập trình - Ví dụ : Trong ngôn ngữ
khác(như C++) lại phân biệt chữ
pascal
hoa, chữ thường
+ 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ại tên: tên dành riêng, tên
chuẩn, tên do người lậ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ĩ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ùng với ý nghĩa nhất định
6
Giáo án Tin hoc 11
5’
-
nào đó. Trong các thư viện
của ngôn ngữ lập trình.
Ví dụ : Một số tên chuẩn
Trong pascal: real, integer,
char, ...
Trong c++: cin, count,...
* 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ùng với tên
dành riêng
5’
HĐ3: Hằng và biến (10’)
TG
HĐ CỦA HS
5’
Lắng nghe
HĐ CỦA GV
VG đưa ra ví dụ:Đẻ viết mộtchương trình giải phương trìnhbậc hai ta cần khai báo những
tên sau:
- 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ưu
nghiệm ( nếu có).
- - Delta là tên dùng để lưu giá trị
của delta.
-
5’
Lắng nghe
-
Biến là đối tượng sử dụng nhiều
nhất trong khi viết chương trình.
Biến là đại lượng có thể thay đổi
được nên thường dùng để lưu trữ
kết quả
-
3’
HĐ4: Củng cố toàn bài:(4’)
7
GHI BẢNG
b. Hằng và biến
* 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ác ngôn ngữ lập trình
thường có:
+ Hằng số học: số nguyên
hoặ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 đổi trong quá trình
thực hiện chươ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 cho chương trình.
Chú thích không làm ảnh
hưởng đến chương trình
Trong pascal chú thích
được đặt trong {} hoặc (*
*)
Trong C++ chú thích đặt
trong: /* */
Giáo án Tin hoc 11
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.
8
Giáo án Tin hoc 11
Ngày soạn: 12/09/07
Tíêt thứ:……..
BÀI TẬP CHƯƠNG 1
I. 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 và kiểm tra sĩ số.
2. Kiểm tra bài cũ.
3. Tiến trình tiết dạy:
TG Hoạt động của học sinh
Hoạt động của giáo viên
Ghi bảng
5‘
- Đọc yêu cầu của câu hỏi - ĐVĐ: Trước khi giải bài tập Bài: BÀI TẬP CHƯƠNG 1
và bài tập cuối chương
trong SGK, các em tự ôn lại
trang 13 SGK.
một số kiến thức mà chúng
- Suy nghĩ để đưa ra
ta đã học ở các bài trước dựa
phương án trả lời.
trên yêu cầu của câu hỏi
trang 13 SGK.
1. Câu 1:
- Suy nghĩ, trả lời câu hỏi. - Đặt câu hỏi số 1: Tại sao - Ngôn ngữ bậc cao gần
người ta phải xây dựng các
với ngôn ngữ tự nhiên
ngôn ngữ lập trình bậc cao?
hơn, thuận tiện cho đông
- Nhận xét, đánh giá và bổ
đảo người lập trình.
sung hướng dẫn cho học - Chương trình viết bằng
sinh trả lời câu hỏi số 1:
ngôn ngữ bậc cao nói
chung không phụ thuộc
vào phần cứng máy tính
và một chương trình có
thể thực hiện trên nhiều
máy tính khác nhau.
- Chương trình viết bằng
ngôn ngữ bậc cao dễ
9
Giáo án Tin hoc 11
-
Suy nghĩ, trả lời câu hỏi.
-
10 ‘
Đặ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?
.
-
Suy nghĩ, trả lời câu hỏi,
cho ví dụ
-
Đặt câu hỏi 3: Biên dịch và
thông dịch khác nhau như
thế nào?
Phân tích câu trả lời của học
sinh.
10’
- Suy nghĩ, trả lời, giải thích
từng câu hỏi,
-
-
Đặ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.
hiểu, dễ hiệu chỉnh và dễ
nâng cấp.
- Ngôn ngữ bậc cao cho
phép làm việc với nhiều
kiêu dữ liệu và cách tổ
chức dữ liệu đa dạng,
thuận tiện cho mô tả
thuộc toá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 đổi
chương trình được viết
trên ngôn ngữ lập trình
bậc cao thành chương
trình thực hiệ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
3. Câu 3:
- Trình biên dịch: duyệt,
kiểm tra, phát hiện lỗi,
xác định chương trình
nguồn có dịch được
không? dịch toàn bộ
chương trình nguồn
thành một chương trình
đích có thể thực hiện trên
máy và có thể lưu trữ lại
để sử dụng về sau khi
cần thiết.
- Trình thông dịch lần lượt
dịch từng câu lệnh ra
ngôn ngữ máy rồi thực
hiện ngay câu lệnh vừa
dịch được hoặc báo lỗi
nếu không dịch được.
Đặt câu hỏi 5: Hãy tự viết ra 4. Câu 4:
ba tên đúng theo quy tắc - Tên dành riêng không
của Pascal
được dùng khác với ý
Gọi 3 học sinh lên bảng cho
nghĩa đã xác định, tên
ví dụ về tên do người lập
chuẩn có thể dùng với ý
trình đặt.
nghĩa khác.
Nhận xét, sửa chữa, góp ý.
VD:
Tên dành riêng trong
Pascal: program, uses, const,
10
Giáo án Tin hoc 11
12’
a)
b)
c)
d)
e)
f)
g)
h)
i)
-
Đặ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à chỉ rõ
trong từng trường hợp:
150.0
–22
6,23
‘43’
A20
1.06E-15
4+6
‘C
‘TRUE’
Nhận xét, giải thích
type, var, begin, end.
Tên chuẩn: trong Pascal abs,
integer.
5. Câu 5: Gợi ý: Trong
Pascal tên (do người lập
trình đặt) được đặt tuân
theo các quy tắc sau:
- 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ủa
chương trình dịch (TP
không quá 127 kí tự,
Free Pascal khô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 đối tượng mang
tên đó.
-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 thay
bằng dấu chấm;
A20 là tên chưa rõ giá trị;
4+6 là biểu thức hằng trong
Pascal chuẩn cũng được coi
là hằng trong Turbo Pascal;
‘TRUE’ là hằng xâu nhưng
không là hằng lôgic.
IV: Hoạt động củng cố 3’
-Ô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.
11
Giáo án Tin hoc 11
Ngày soạn :18/09/07
Tiết thứ…. Bài 3:
CẤU TRÚC CHƯƠNG TRÌNH
I - Mục tiêu.
1. Kiến thức.
Biết được cấu trúc chung của một chương trình
2. Kỷ năng:
Nhận biết từng phần cấu trúc
3. Tư duy – thái độ:
Tư duy logic.
II - Chuẩn bị.
1. Giáo viên : Máy tính, máy chiếu projec, một số ví dụ minh hoạ.
2. Học sinh : SGK
III – Phương pháp dạy học:
Đặt vấn đề hướng dẫn học sinh nắm bắt vấn đề
Hoạt động nhóm.
IV - Tiến trình bài học
Hoạt động 1: Kiểm tra bài cũ.( 10 ‘)
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 ?
Hoạt động 2: Cấu trúc chung.
TG
HĐ Giáo viên
HĐ Học sinh
Trình bày bảng
10’ Cho học sinh đọc phần “ cấu trúc
Bài:
CẤU
TRÚC
chung “
CHƯƠNG TRÌNH
Hỏi: “ Cáu trúc chung gồm máy Tập
hợp
số
tự
phần “
nhiên,nguyên, hữu tỉ, thực.
Yêu cầu học sinh đọc SGK phần Đọc sách.
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
7’
Hoạt động 3. 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 ?
- Có 4 kiểu : kiểu
- Trong ngôn ngữ Pascal, có
nguyên, thực, kí tự,
những kiểu nguyên nào
lôgic.
thương dùng, phạm vi biểu
- Có 4 loại : Byte,
diễn của mỗi loại.
word, integer, logint
- Trong ngôn ngữ Pascal, có
những kiểu thực nào thương - Có 2 loại: Real, extended.
dùng, phạm vi biểu diễn của
mỗi loại.
12
1.khai báo tên chương
trình
-program ;
+ 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
+ ví dụ: trong pascal
uses crt;
3. khai báo hằng
const ;
+ ví dụ: N=100;
Giáo án Tin hoc 11
8’
10’
Cho học sinh đọc ví dụ đơn giản
trong SGK.
Giải thích từng dòng lệnh
4.khai báo biến
var ;
Hoạt động 4 . Khai báo biến.
Yêu cầu học sinh nghiên cứu sách ĐỌC sách.
Khai báo biến.
GK và cho biết vì sao phải khai báo Mọi biến dùng trong chương Var
:;
tên biến và kiểu dữ liệu của
Danh sách biến:
biến. Tên biến dùng để xác
SGK
lập quan hệ giữa biến với địa
Kiểu dữ liệu :
chỉ bộ nhớ nơi lưu giữ giá trị
SGK
của biế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ực
Var a : integer;
b : real;
5’
5’
Cho ví dụ:
Khai báo x,y,z đúng, H sai
Var x,y,z : Word;
H: in teger;
Yêu cầu học sinh cho ý kiến về ví
dụ.
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 Trong pascal: Thân
được xác định bởi cặp dấu chương trình có
hiệu mở đầu và kết thúc
dạng:
BEGIN
[< Dãy lệnh>]
END.
Trong vd1:đâu là phần Ví dụ chương trình
khai báo đâu là phần thân đơn giản
chương trình?
- Trong ngôn
Program vd1; là phần khai báo.
ngữ pascal:
Begin
Program vd1;
Write(‘chao cac ban’);
Begin
End.
Write(‘chao cac
là phần thân chương trình.
ban’);
End.
Cho học sinh quan sát
- Trong ngôn
13
Giáo án Tin hoc 11
nhận xét 2 chương trình
trong 2 ngôn ngữ khác
Hai chương trình cùng thực nhau
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
ngữ C++:
#include
main()
{
pri ntf(“ chao
các ban”);
}
V – 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 ?
VI – BTVN.
Mỗi em cho ví dụ về Khai báo biến ( hôm sau trả lời)
V – 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 ?
Ngày soạn : 25/10 /2007
Tiết thứ…Bài 4,5: MỘT SỐ KIỂU DỮ LIỆU CHUẨN, KHAI BÁO BIẾN
I - Mục tiêu.
1. Kiến thức.
Biết được một số kiểu dữ liệu chuẩn
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 - Chuẩn bị.
3. Giáo viên : Máy tính, máy chiếu projec, một số ví dụ minh hoạ.
4. Học sinh : SGK
III – Phương pháp dạy học:
Đặt vấn đề hướng dẫn học sinh nắm bắt vấn đề
Hoạt động nhóm.
IV - Tiến trình bài học
Hoạt động 1: Kiểm tra bài cũ.( 10 ‘)
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 2: Đặt vấn đề.
TG
HĐ GIÁO VIÊN
HĐ HỌC SINH
10’ Trong toán học để thực hiện
được tính toán cần phải có các
tập số. Đó là các tập số nào ?
Tập hợp số tự nhiên,nguyên,
Trong lập trình Pascal cũng hữu tỉ, thực.
14
GHI BẢNG
Giáo án Tin hoc 11
có các tập hợp, mỗi tập hợp có Đọc sách.
1 giới hạn nhất định.
7’
8’
Hoạt động 3. 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ữ Có 4 kiểu : kiểu
Pascal ?
nguyên, thực, kí tự, lôgic.
Trong ngôn ngữ Pascal, Có 4 loại : Byte, word,
có những kiểu nguyên nào
integer, logint
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 - Có 2 loại: Real, extended.
thương dùng, phạm vi biểu
diễn của mỗi loại.
Cho học sinh đọc ví dụ đơn Đọc sách.
giản trong SGK.
Giải thích từng dòng lệnh
Hoạt động 4 . Khai báo biến.
10’ Yêu cầu học sinh nghiên ĐỌC sách.
cứu sách GK và cho biết Mọi biến dùng trong
vì sao phải khai báo chương trình đều phải
biến ?
được khai báo tên biến
và kiểu dữ liệu của
biến. Tên biế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.
5’ Cho ví dụ:
Khai báo x,y,z đúng, H
Var x,y,z : Word;
sai
H: in teger;
Yêu cầu học sinh cho ý
kiến về ví dụ.
V – 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 ?
VI – BTVN.
Mỗi em cho ví dụ về Khai báo biến ( hôm sau trả lời).
Ngày soạn: 01/10/07
Tiết thứ:……Bài 6
I / Mục tiêu dạy học:
1. Kiến thức :
SGK
SGK
SGK
SGK
Khai báo biến.
Var :;
Danh sách biến: SGK
Kiểu dữ liệu : SGK
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ực
Var a : integer;
b : real;
PHÉP TOÁN - BIỂU THỨC - CÂU LỆNH GÁN
15
Giáo án Tin hoc 11
- 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:
* 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:
IV/ Tiến trình bài học:
1. Họat động 1:
a) Mục tiêu: HS biết được tên và ký hiệu các phép toán, biết cách sử dụng các phép toán đối với mỗi
kiểu dữ liệu.
b) Nội dung:
+ Phép toán số học: + , - , *, / , DIV, MOD.
+ Phép toán quan hệ: <, <=, > , >=, =, < > , giá trị logic (true hoặc false)
+ Phép toán lôgic: NOT , OR , AND.
c) Tiến hành:
TG
9’
Hoạt động GV
Hoạt động HS
Khi viết chương trình ta phải sử Chú ý lắng nghe
dụng các phép toán, phép so
sánh để đưa ra quyết định xem
và làm việc gì? và một chương
trình ta viết như thế nào ?
Ghi bảng
* NNLT nào cũng sử dụng
đến phép toán, câu lệnh gán và
biểu thức, các khái niệm này
chỉ được xét trong NNLT
Pascal.
Tất cả các ngôn ngữ có sử dụng
một cách giống nhau hay
không.
- Toán học có những phép toán
nào?
- Các phép toán đó có dùng
trong NNLT hay không?
+ Một số phép toán dùng được
và một số phép toán phải sử
dụng từ các phép tóan khác .
- Ghi một số phép toán lên Suy nghĩ và đưa ra một số
bảng.
phép toán thường dùng:
16
1. Phép toán:
NNLT Pascal sử dụng một số
phép toán như sau:
+ Số nguyên: + , - , *, / ,
DIV, MOD.
Giáo án Tin hoc 11
Phép cộng, trừ, nhân, chia + Số thực: + , - , *, / ,
...
- Phép DIV, MOD được sử
+ Phép toán quan hệ: <, <=, >
dụng cho kiểu dữ liệu nào?
Nghiên cứu SGK và cho , >=, =, < > .
biết các nhóm phép toán
- Kết quả của phép toán quan hệ
+ Phép toán logic: AND, OR,
thuộc kiểu dữ liệu nào?
- Chỉ được sử dụng cho NOT.
kiểu số nguyên.
- Kiểu logic
2/ Hoạt động 2: Tìm hiểu biểu thức:
a) Mục tiêu: HS cần biết về khái niệm biểu thức số học, biểu thức quan hệ, biểu thức logic và một số
hàm số học.
b) Nội dung:
- Biểu thức số học nhận được từ hằng số, biến số và hàm số liên kết.
- Nắm bắt được tuần tự các bước khi thực hiện biểu thức số học.
- Biểu thức logic được cấu thành từ các biểu thức quan hệ.
c) Tiến hành :
TG
Hoạt động GV
Hoạt động HS
Ghi bảng
22’
- Trong toán học biểu thức là - Suy nghĩ và đưa ra khái 2. Biểu thức số học:
gì ?
niệm
- Là một dãy các phép toán
- Trong tin học khái niệm về
+ , - , *, / , DIV, MOD từ
biểu thức trong lập trình ?
hằng biến kiểu số và các hàm.
- 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 học hay không ?
- Dùng dấu ( ) để qui định
trình tự tính toán.
VD: ( SGK - 25)
- Treo tranh có chứa các biểu
thức toán học lên bảng.
* Chú ý :
- Quan sát tranh và trả Thứ tự thực hiện các phép
Yêu cầu: HS sử dụng các phép lời :
toán:
toán số học hãy biểu diễn các
biểu thức toán học thành biểu
+ Trong ngoặc trước, ngoài
thức trong NNLT.
ngoặc sau.
4x - 2y
+ Nhân, chia, chia nguyên,
chia lấy dư trước, cộng, trừ
17
Giáo án Tin hoc 11
x+
4*x-2*y
1
x y
a b c
2a
c
b
sau.
x+1/(x-y)
-
b2 c
ac
((a+b+c)/((2*a /b)+c)) - Trong toán học ta đã làm quen (b*b-c)/a*c
với một số hàm số học, hãy kể
tên?
- Hàm trị tuyệt đối, hàm
- Muốn tính ax2 + 1 ta viết thế
căn bậc 2, hàm sin ...
nào?
- Muốn tính x ,
ta làm thế nào?
x
, sinx ...
- HS trả lời: 2*x*x+1
Tính các giá trị đó một cách đơn
giản người ta đã xây dựng sẵn
một số đơn vị chương trình - HS chưa trả lời được
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.
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ố)
+ Đối số là một hay nhiều
biểu thức số học đặt trong dấu
ngoặc ( ) sau tên hàm .
VD: (SGK - 26).
- 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
x
-
2x 1
Nghiên cứu SGK - 26 và
quan sát tranh vẽ, lên
bảng điền tranh
x2 - 1
Hãy biểu diễn biểu thức toán
trong biểu thức trong NNLT.
4. Biểu thức quan hệ:
-Trong lập trình ta phải so sánh - Suy nghĩ và trả lời:
2 giá trị nào đó trước khi thực
hiện lệnh bằng cách sử dụng
biểu thức quan hệ . Biểu thức (abs(x)-sqrt(2*x+1)/(x* xquan hệ còn gọi là biểu thức so 1)
sánh được dùng để so sánh 2 giá
trị đúng hoặc sai.
Cấu trúc chung:
< phép toán quan hệ >
+ trong đó BT1 và BT2 phải
cùng kiểu.
- Cho một ví dụ về biểu thức
quan hệ
+ Kết quả của biểu thức quan
hệ là TRUE hoặc FALSE.
- Kết quả mà phép toán quan hệ
VD: - 5 > 2
18
Giáo án Tin hoc 11
thuộc kiểu dữ liệu nào đã học?
5. Biểu thức logic.
-Biểu thức logic là biểu thức
quan hệ được liên kết với nhau
- Trả lời:
bởi phép toán logic
- Hãy quan sát ví dụ về biểu
thức logic sau:
x + y < 2* x*y
2< x 8
- Kiểu 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.
VD: ( SGK - 28)
Trong Pascal cần phải tách
thành 2 < x và x 8 như thế nào
?
- Lắng nghe, theo dõi sự
sự dẫn dắt của Gv để trả
lời .
- Kết hợp SGK, trả lời:
(2< x) and (x<=8 )
3. Hoạt động 3: Tìm hiểu lệnh gán.
a) Mục tiêu: HS biết đọc chức năng cấu trúc chung của lệnh gán trong NN Pascal, viết lệnh đúng khi
lập trình.
b) Nội dung:
- Lệnh gán dùng để tính giá trị một biểu thức và chuyển nó vào một biến.
- Cấu trúc: Tên biến:= biểu thức
c) Các bước tiến hành:
TG
12’
Hoạt động GV
Hoạt động HS
Ghi bảng
Mỗi NNLT có cách viết lệnh - Quan sát ví dụ và suy 6. Câu lệnh gán.
gán khác nhau, chẳng hạn như nghĩ để trả lời.
- Lệnh gán là cấu trúc cơ bản
trong Pascal có lệnh gán sau:
của mọi NNLT, thường dùng
i:=8+1
để gán gái trị cho biến.
- Giải thích: Lấy 8 cộng với 1,
19
Giáo án Tin hoc 11
đem kết quả đặt vào i , ta được
y = 9.
Cấu trúc:
- Cần chú ý điều gì khi viết lệnh
gán?
< tên - biến>:= ;
- Phân tích câu trả lời của học - Đưa ra ý kiến.
sinh sau đó tổng hợp lại .
- Lệnh gán là gì ?
- Minh họa một vài ví dụ khác
khi sử dụng lệnh gán trên bảng.
Treo tranh lên bảng và giới
thiệu một ví dụ về Pascal cho
chương trình
Var i, j integer;
VD:
x:= (b*b-4* a*c);
i:= i+1;
- Suy nghĩ và đưa ra vài
ví dụ tương tự.
Begin
i := 2;
j := 5;
i := i+1;
j := j-1;
Writeln (‘i=’, i);
Writeln (‘j=’, j);
readln;
End.
- Vậy chương trên in ra màn
hình giá trị của i và j bằng bao
nhiêu ?
- Quan sát và trả lời:
i = 3 và j = 4
V/ Củng cố, dặn dò:(2’)
- Nhắc lại một số khái niệm mới về:
20
j:= j-1;
- Xem thêm -