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 Hoạt động 2: Hoạt động của giáo viên Hoạt động củ
Trang 1Ngày soạn: 25/08/2010 CHƯƠNG I: MỘT SỐ KHÁI NIỆM VỀ LẬP TRÌNH
− Hiểu ý nghĩa và nhiệm vụ của chương trình dịch
2 Kĩ năng: Phân biệt được thông dịch và biên dịch.
3 Thái độ: H/s có thái độ đúng đắn, tính cẩn thận khi học ngôn ngữ lập trình.
II CHUẨN BỊ:
1 Giáo viên: Chương trình Pascal
2 Học sinh: SGK, câu hỏi liên quan đến bài.
III PHƯƠNG PHÁP: Phát vấn, diễn giải.
IV HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Kiểm tra bài cũ:
3 Giảng bài mới:
Hoạt động 1: Ôn lại kiến
ngôn ngữ nào để diễn đạt ?
Để diễn giải thuật toán đó
cho máy tính hiểu ta phải
HS: dùng ngôn ngữ lập trình
HS: Xem sách giáo khoa
và phát biểu khái niệm
§ 1 KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ
LẬP TRÌNH Lập trình là gì ???
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.
Trang 2cao thành chương trình chạy
được trên máy tính ?
GV: Tại sao không lập trình
trên ngôn ngữ máy để khỏi
phải mất công chuyển đổi ?
GV: Nêu hai ví dụ trong
sách giáo khoa để giới thiệu
hai loại chương trình dịch là
nói của ta sang tiếng
Campuchia cho đoàn khách
C2: Viết toàn bộ nội dung ra
giấy và nhờ người phiên dịch
dịch toàn bộ nội dung đó
sang tiếng Campuchia và
đọc cho đoàn khách
HS: xem sách giáo khoa
và trả lời
HS: Sử dụng chương trình dịch
Chương trình dịch ???
Chương trình dịch là một chương trình đặc biệt có chức năng chuyển một chương trình được viết bằng ngôn ngữ lập trình bậc cao thành chương trình chạy được trên máy tính.
CT nguồn → CT dịch → CT đích
Thông dịch ???
Thực hiện bằng cách lặp lại các bước sau:
1 Kiểm tra tính đúng đắn của câu lệnh tiếp theo trong chương trình nguồn;
2 Chuyển đổi câu lệnh đó thành ngôn ngữ máy;
3 Thực hiện câu lệnh vừa được chuyển đổi
(Cứ mỗi lần gặp câu lệnh sai nó phải quay lại dịch từ câu lệnh đầu tiên)
Biên dịch ???
Được thực hiện qua 2 bước:
1 Duyệt toàn bộ chương trình nguồn để phát hiện lỗi, kiểm tra tính đúng đắn của các câu lệnh;
2 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
V CỦNG CỐ
• Khái niệm lập trình, ngôn ngữ lập trình, các loại ngôn ngữ lập trình
• Khái niệm chương trình dịch
Trang 3• Có hai loại chương trình dịch là thông dịch và biên dịch.
VI RÚT KINH NGHIỆM
Trang 4
Ngày soạn:06/ 09/2010 Đ2 CÁC THÀNH PHẦN CỦA NGễN NGỮ LẬP TRèNH
− Phõn biệt được tờn chuẩn với tờn dành riờng và tờn tự đặt
− Nhớ cỏc qui định về tờn hằng biến
− Biết đặt tờn đỳng, nhận biết được tờn sai qui định
− Sử dụng đỳng chỳ thớch
3 Thỏi độ: - Học sinh có thái độ học tập tích cực.
II CHUẨN BỊ:
1 Giỏo viờn: Một chương trỡnh trong Pascal.
2 Học sinh: SGK, cõu hỏi liờn quan đến bài.
III PHƯƠNG PHÁP: Phỏt vấn, diễn giải.
IV HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Kiểm tra bài cũ:
H1: Hóy phõn biệt chtrỡnh thụng dịch và biờn
Hs3: nhận xột cõu trả lời của Hs1
3 Giảng bài mới:
Hoạt động 1: (18 phỳt) Tỡm hiểu khỏi niệm tờn trong thành phần của ngụn ngữ lập trỡnh.
ĐVĐ: Mọi đối tượng trong chtrỡnh
đếu phải được đặt tờn
1 N/cứu Sgk nờu qui tắc đặt tờn
trong Turbo Pascal?
+ Khụng quỏ 127 kớ tự, khụng bắt đầu bằng kớ tự số
2 Quan sỏt và trả lời
A A_BC _24 A5d
1 Khỏi niệm Tờn
(Sgk)
Vớ dụ:
Trang 5Khẳng định lại các tên đúng
3 Y/cầu Hs n/cứu Sgk để biết các
khái niệm về tên dành riêng, tên
chuẩn, tên tự đặt
Chia lớp thành 3 nhóm, mỗi nhóm
tìm hiểu và trình bày về một loại
tên và cho ví dụ
Treo tranh chứa 1 số tên trong
NNLT Pascal đã được chuẩn bị
Quan sát và ghi lên bảng con
+ Từ khóa: Type, Const, function
+ Tên chuẩn: Integer, byte, string, inc
+ Tên tự đặt: dem, mang
Quan sát kết quả cnhóm khác, nhận xét và bổ sung
+ Tên dành riêng+ Tên chuẩn+ Tên do người dùng đặt
Ví dụ:
Hoạt động 3: (15 phút) Tìm hiểu hằng, biến, chú thích
+ Hằng logic: False TrueXem k/niệm hằng ở Sgk
2 Quan sát và trả lời + Hằng số: 56; -3785;
1.5E+2 + Hằng xâu: ‘485’
b Biến
K/niệm: (Sgk)
Trang 6Cho 1 số ví dụ khác về chú thích
H: Tên biến và tên hằng thuộc loại
tên nào?
H: Các lệnh được viết trong cặp
{ } có được TP thực hiện ko? Vì
sao?
trả lời
Chú thích được đặt giữa cặp dấu { } và (* *) dùng để giải thích chtrình rõ ràng dễ hiểu.
Tl: Tên do người lập
trình đặt
Tl: Không, vì đó là dòng
chú thích
{thu tuc nhap du lieu}
V CỦNG CỐ :
1 Nội dung đã học.
Thành phần của NNLT: bảng chữ cái, cú pháp, ngữ nghĩa
Khái niệm: tên, từ khóa, tên chuẩn, tên tự đặt, biến, hằng, …
2 Câu hỏi, bài tập về nhà.
Làm bài tập 3, 4, 5 trang 13 Sgk
Xem bài đc thêm: Ngôn ngữ Pascal
Xem trước bài: Cấu trúc chtrình Sgk
Xem nội dung phụ lục B, trang 128 Sgk: Một số tên dành riêng
VI RÚT KINH NGHIỆM:
Trang 7
- 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 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ể.
III PHƯƠNG PHÁP: Phát vấn, diễn giải.
IV HOẠT ĐỘNG DẠY HỌC
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Kiểm tra bài cũ (5 phút)
1 Phân biệt giữa Hằng và Biến? Cho một số
biến đúng?
2 Đâu là từ khóa trong các tên sau đây?
Integer Begin Do int chan tong
- Nhận xét, đánh giá cho điểm
HS1: trả lời Hs2: trả lời (Begin và Do)
3 Giảng bài mới
Hoạt động 1:
Hoạt động của giáo viên Hoạt động của học
Trang 8Đặ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ổ
sung hướng dẫn cho học sinh
trả lời câu hỏi số 1:
Đặt câu hỏi 2: Biên dịch và
thông dịch khác nhau như thế
+ 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
Câu 2:
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
Hoạt động 2:
Hoạt động của giáo viên Hoạt động của học
Đặt câu hỏi 3: 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? Viết
3 tên đúng quy tắctrong
Pascal?
- Gọi hs trả lời và cho ví dụ
- Phân tích câu trả lời của học
Câu 3: 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
VD:
Tên dành riêng trong Pascal:
program, uses, const, type, var, begin, end
Tên chuẩn: trong Pascal abs,
integer
Hoạt động 3:
Hoạt động của giáo viên Hoạt động của học
sinh
Nội dung ghi bảng
Đặt câu hỏi 4: 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:
Trả lời giải thích từng câu một
Câu 4:
Trang 9- Nhận xét, giải thích
V CỦNG CỐ: (5phút)
Câu hỏi, bài tập về nhà
Xem trước Chương 3 gồm các bài: Cấu trúc chương trình và Một số kiểu dữ liệu chuẩn Xem trước nội dung phụ lục B phần 3: Một số kiểu dữ liệu chuẩn (trang 129 Sgk)
Bài tập kiểm tra trắc nghiệm cuối chương: (15 phút)
Câu 1:Chương trình viết bằng hợp ngữ không có đặc điểm nào trong các đặc điểm sau:
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
Câu 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 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 cà 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
Câu 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 C Phát hiện được lỗi cú pháp
Câu 4: Nhận biết đúng/sai trong Pascal?
Trang 10ngôn ngữ lập trình bậc cao trị và giá trị có thể được thay đổi trong quá trình thực hiện
chương trình
trình đích có thể thực hiện trên máy và có thể lưu trữ để
sử dụng lại khi cần thiết
ngữ máy mới có thể thực hiện được
VI RÚT KINH NGHIỆM:
Trang 11
Ngày soạn:28/09/2010 CHƯƠNG II: CHƯƠNG TRÌNH ĐƠN GIẢN
Ngày dạy:30/09 /2010 §2 CẤU TRÚC CHƯƠNG TRÌNH
TPP: 04
Tuần: 04
I MỤC TIÊU:
1 Kiến thức:
- Hiểu chtrình là sự mô tả của thuật toán bằng một NNLT
- Biết cấu trúc của một chtrình đơn giản: cấu trúc chung và các thành phần
2 Kĩ năng: Nhận biết được thành phần của một chtrình đơn giản
II ĐỒ DÙNG DẠY HỌC:
1 Giáo viên:
- Máy tính, máy chiếu projector
- Một số chương trình mẫu viết sẵn
2 Học sinh: Sách giáo khoa.
III PHƯƠNG PHÁP: Phát vấn, diễn giải.
IV HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Kiểm tra bài cũ:
H1: Phân biệt tên chuẩn và từ khóa? Tên hằng, tên
biến thuộc loại tên nào?
H2: Cho một số tên biến, hằng đúng qui cách?
Nhận xét, đánh giá cho điểm 3 h/s
Hs1: trả lời trước lớp
Hs2: trình bày trên bảng Hs3: nhận xét phần trả lời của Hs2 Hoạt động 1: (5phút) Tìm hiểu cấu trúc chung của chtrình.
a Mục tiêu: Hs biết được chtrình có 2 phần.
b Nội dung: Cấu trúc chtrình có 2 phần: phần khai báo, phần thân.
c Các bước tiến hành:
1 Câu hỏi gợi ý: Một bài tập làm
văn thường viết có mấy phần?
Các phần có thứ tự không? Tại
sao phải chia ra như vậy?
2 Y/cầu Hs n/cứu Sgk và trả lời
các câu hỏi sau:
- Một chtrình có cấu trúc mấy
1 Suy nghĩ và trả lời.
- Có ba phần
- Có thứ tự: mở bài, thân bài, kết luận
- Dễ viết, dễ đọc và dễ hiểu nội dung
2 N/cứu sgk, thảo luận và
Trang 12Hoạt động 2: (15phút) Tìm hiểu các thành phần của chtrình.
a Mục tiêu: Hs biết được nội dung của các thành phần trong chtrình
1 Y/cầu Hs n/cứu Sgk và trả lời
câu hỏi:
- Trong phần khai báo có những
khai báo nào?
Dẫn dắt: Cách khai báo các đối
tượng này trong chtrình như thế
nào?
2 Y/cầu Hs tiếp tục n/cứu Sgk và
lấy ví dụ cho từng loại khai báo
* Cách khai báo biến sẽ được tìm
hiểu riêng trong tiết sau
* Khai báo và sử dụng CTC được
trình bày ở chươngVI
3 Y/cầu Hs cho biết cấu trúc của
1 N/cứu sgk, thảo luận và
trả lời:
- Khai báo tên chtrình
- Khai báo thư viện CTC
Trang 13Hoạt động 3: (15 phút) Xét một vài ví dụ về những chtrình đơn giản
a Mục tiêu: Hs nhận biết được từng phần của một chtrình đơn giản.
b Nội dung: Một vài chtrình đơn giản.
trong chtrình trên, nhưng kết quả
chtrình không thay đổi?
- Còn lại là phần thân
+ lệnh gán (: =)+ lệnh đưa thông tin ra màn hình
2 Suy nghĩ, thảo luận và trả
lời
Dòng khai báo tên Dòng khai báo thư viện.
3 Thảo luận và trả lời
Trình bày trên bìa trắng
Trang 14Xem trước bài: Một số kiểu dữ liệu chuẩn Khai báo biến (trang 21-23 sgk)
Xem trước nội dung phụ lục B phần 3: Một số kiểu dữ liệu chuẩn (trang 129 Sgk)
VI RÚT KINH NGHIỆM:
Trang 15
Ngày soạn:29/09/2010 §4-5 MỘT SỐ KIỂU DỮ LIỆU CHUẨN
Ngày dạy:01/10 /2010 KHAI BÁO BIẾN
TPP: 05
Tuần: 05
I MỤC TIÊU:
1 Kiến thức:
- Biết một số kiểu dữ liệu chuẩn: nguyên, thực, kí tự, logic
- Hiểu cách khai báo biến
2 Kĩ năng:
- Xác định được kiểu cần khai báo của dữ liệu đơn giản
- Biết khai báo biến đúng
3 Thái độ:
II ĐỒ DÙNG DẠY HỌC
1 Giáo viên: Máy tính, máy chiếu projector, một số ví dụ minh hoạ.
Bảng treo chứa một số khai báo biến cho Hs chọn Đúng - Sai
2 Học sinh: SGK.
III PHƯƠNG PHÁP: Thuyết trình, diễn giải.
IV HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Kiểm tra bài cũ:
H1: Nêu cấu trúc chung của một chương
trình?
H2: 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?
Nhận xét, đánh giá cho điểm 3 hs
Hs1: trả lời trước lớp
Hs2: trình bày trên bảng Hs3: nhận xét phần trả lời của Hs2
3 Bài mới:
Hoạt động 1: (3 phút)Đặt vấn đề
Trong toán học để thực hiện được
Đọc sách
Hoạt động 2: (20 phút)Một số kiểu dữ liệu chuẩn.
a Mục tiêu: Biết được tên và giới hạn biểu diễn của một số kiểu dữ liệu chuẩn.
Trang 161 Kiểu dữ liệu chuẩn là một tập
hữu hạn các giá trị, mỗi kiểu dữ
liệu cần một dung lượng bộ nhớ
cần thiết đẻ lưu trữ và xác định các
phép toán có thể tác động lên dữ
liệu
2 Y/cầu Hs n/cứu Sgk trả lời các
câu hỏi sau:
H 1 : Có bao nhiêu dữ liệu chuẩn
trong ngôn ngữ Pascal ?
H 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?
H 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?
H 4 : Trong ngôn ngữ Pascal, có bao
nhiêu kiểu kí tự?
H 5 : Trong ngôn ngữ Pascal, có
bao nhiêu kiểu logic, gồm các giá
trị nào?
Treo bảng
3 Giải thích một số vấn đề cho Hs
+ Vì sao phạm vi biểu diễn của các
loại số nguyên là khác nhau?
+ Miền giá trị của các loại kiểu
Hoạt động 3: (10 phút) Tìm hiểu cách khai báo biến
a Mục tiêu:
- Hs biết được rằng mọi biến trong chtrình đều phải được khai báo tên và kiểu dữ liệu
- Hs biết được cấu trúc chung của khai báo biến trong NNLT Pascal, khai báo được biến khi lập trình
b Nội dung: Cấu trúc chung của khai báo biến trong lập trình bằng Pascal:
Var tên_biến_1: kiểu_dữ_liệu_1;
Trang 171 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ấu trúc chung của khai báo biến
bằng Pascal:
Cho ví dụ: Cần một biến kiểu
nguyên, và một biến kiểu logic
2 Treo bảng có chứa một số khai
báo và yêu cầu Hs chọn khai báo
đúng trong Pascal?
3 Treo bảng có chứa một số khai
báo trong Pascal
Hỏi: Có tất cả bao nhiêu biến, bộ
nhớ phải cấp phát là bao nhiêu?
1 Đọc sách.
Mọi biến dùng trong chtrình đều phải đượ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
Var <danh sách biến>:
i(1byte), c(1byte)2+2+6+1+1=12byte
2 Khai báo biến
- Các kiểu dữ liệu chuẩn: nguyên, thực, kí tự, lôgic
- Cách khai báo biến
2 Câu hỏi, bài tập về nhà
- Làm bài tập 1,2,3,4,5 sgk trang 35
- Xem trước bài: Phép toán, biểu thức, lệnh gán sgk trang 24
Trang 18VI RÚT KINH NGHIỆM:
Trang 19
Ngày soạn: 29/09/2010 §6 PHÉP TOÁN, BIỂU THỨC, CÂU LỆNH GÁN
- Viết được các biểu thức số học và logic với các phép toán thông dụng
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
III PHƯƠNG PHÁP: Thuyết trình, diễn giải.
IV HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Kiểm tra bài cũ:
- Viết khai báo biến của bài toán:
Cho 2 số nguyên N, M Tính giá trị của biểu
thức p= (m+n)/(m*n)
Ghi đề bài và gọi tên 2 hs
- Hỏi thêm: Bộ nhớ cần cấp phát cho các
biến đó là bao nhiêu?
Nhận xét, đánh giá cho điểm.
Hoạt động 1: (10 phút)Tìm hiểu một số phép toán
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
Trang 203 Y/cầu Hs n/cứu Sgk và cho biết
có bao nhiêu nhóm phép toán?
H1: Phép chia (/) được sử dụng
cho kiểu dữ liệu nào?
H2: Phép Mod, Div được sử dụng
cho kiểu dữ liệu nào?
H3: Kết quả của phép toán quan hệ
thuộc kiểu dữ liệu nào?
1.Chú ý lắng nghe
2 Suy nghĩ và trả lời
- Phép: cộng, trừ, nhân, chia, lấy dư, so sánh, chia lấy nguyên
3 N/cứu sgk và trả lời.
- Phép toán số học: +, -, *, /, div, mod
Hoạt động 2: (20phút) Tìm hiểu về biểu thức
a Mục tiêu: Hs biết khái niệm về biểu thức số học, quan hệ, lôgic biết cách xây dựng các biểu
thức đó
Biết được một số hàm số học chuẩn trong lập trình
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 Các bước tiến hành:
1 ĐVĐ: Trong toán học ta đã làm
quen với khái niệm biểu thức Hãy
cho biết các yếu tổ cơ bản xây
dựng nên biểu thức?
Nếu trong một bài toán mà toán
hạng là hằng số, biến, hoặc hàm số
và toán tử là các phép toán số học
thì biểu thức có tên gọi là gì?
2 Treo bảng có chứa các biểu thức
toán học, yêu cầu: sử dụng phép
1 Suy nghĩ, trả lời
- Gồm 2 phần: toán hạng, toán tử
Toán tử: +, -, *, /, mod, div
* Thứ tự thực hiện: Sgk
* Chú ý:
+ Nên dùng biến trung
Trang 21toán số học để biễu diễn biểu thức
toán học đó thành biểu thức trong
- Từ việc xây dựng các biểu thức
trên, hãy nêu thứ tự thực hiện các
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
hàm
- Cho biểu thức
1
1 2
Hãy biểu diễn biểu thức toán trong
+ Biểu thức có chứa hằng hoặc biến kiểu thực, thì giá trị của biểu thức cũng thuộc kiểu thực
Trang 22- Thứ tự thực hiện của 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?
5 Biểu thức logic là biểu thức
quan hệ được liên kết với nhau bởi
phép toán logic
- Hãy quan sát biểu thức trong
toán học sau: 2< x ≤ 8 và biễu
diễn bthức này trong NNLT
Pascal
- Thứ tự thực hiện của bthức
lôgic?
- Kết quả mà bthức lôgic thuộc
kiểu dữ liệu nào?
Treo tranh có chứa bảng chân trị
của A và B, y/cầu hs điền giá trị
cho A and B, A or B, not B
- Kiểu logic
Suy nghĩ và trả lời bằng cách điền vào bảng
A an
d B
A
or B
No
t A
- Biểu thức logic đơn giản
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
Ví dụ: Cho 3 số a, b, c
Viết điều kiện xác định a,
b, c là độ dài 3 cạnh của 1 tam giác
(a+b>c) and (b+c>a)
- 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;
- Giải thích: Lấy 8 cộng với 3, đem
kết quả đặt vào i , ta được i = 11
Hỏi: Hãy cho biết chức năng của
lệnh gán?
- Y/cầu hs Sgk cho biết cấu trúc
chung của lệnh gán trong NNLT
- Quan sát ví dụ và suy nghĩ để trả lời
+ Tính gtrị của bthức+ Gán gtrị tính được vào tên biến
<tên biến> := <biểu thức>;
6 Câu lệnh gán.
- Lệnh gán là cấu trúc cơ bản của mọi NNLT, thường dùng để gán giá trị cho biến
Cấu trúc:
< tên _biến>:= <b_thức>;
Trang 23+ kiểu của bthức bên phải phải phù
hợp với kiểu của biến
Treo tranh, giới thiệu ví dụ về
x=2 y=4 TRUE
2 Câu hỏi, bài tập về nhà
- Xem trước bài: Các thủ tục chuẩn vào/ra đơn giản
- Soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình
VI RÚT KINH NGHIỆM:
Trang 24
Ngày soạn: 05/10 /2010 §7-8 CÁC THỦ TỤC CHUẨN VÀO RA ĐƠN GIẢN
Ngày dạy:07/10 /2010 SOẠN THẢO, DỊCH, THỰC HIỆN
TPP: 07 VÀ HIỆU CHỈNH CHƯƠNG TRÌNH
Tuần: 07
I MỤC TIÊU
1 Kiến thức
- Biết được ý nghĩa của các thủ tục vào/ ra chuẩn đối với lập trình
- Biết được các cấu trúc chung của thủ tục vào/ ra trong NNLT Pascal
- Biết được các bước để hoàn chỉnh một chtrình
- Biết được các file cơ bản của Turbo Pascal 7.0
2 Kĩ năng
- Viết đúng lệnh vào /ra dữ liệu
- Biết nhập đúng dữ liệu khi thực hiện chtrình
- Biết khởi đọng và thoát khỏi hệ soạn thảo Turbo Pascal 7.0
- Soạn được một chtrình vào máy Dịch được chtrình để phát hiện lỗi cú pháp
- Thực hiện được chtrì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 ĐỒ DÙNG DẠY HỌC
1 Giáo viên:
- Sgk, tranh chứa các biểu thức trong toán, Projector, máy vi tính, một số chtrình viết sẵn
- Máy vi tính có cài phần mềm Turbo Pascal 7.0, Projector
2 Học sinh: sgk
III PHƯƠNG PHÁP: Nêu vấn đề, diễn giải.
IV HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Kiểm tra bài cũ:
Cho M, N là 2 biến nguyên Điều kiện xác
Nhận xét đánh giá, cho điểm
2 Hs lên bảng trả lời bằng cách ghi bảng
Đ/a: ((M mod 2 = 0) and (N mod 2 = 0)) Or
((M mod 2 =1) and (N mod 2 = 1))
3 Bài mới:
Hoạt động 1: (10 phút)Tìm hiểu thủ tục nhập dữ liệu vào từ bàn phím.
a Nội dung:
Dùng để đưa nhiều bộ dữ liệu khác nhau cho cùng một chtrình xữ lí
Cấu trúc: Read/Readln(<biến 1>, <biến 2>, , <biến N>);
b Các bước tiến hành:
1 Nêu vđ: Khi giải quyết một bài
toán, ta phải đưa dữ liệu vào máy
tính xữ lí, việc đưa dữ liệu bằng
Trang 25lệnh gán sẽ làm cho chtrình chỉ có
tác dụng với một dữ liệu cố định
Để chtrình giải quyết được nhiều
bài toán hơn, ta phải sử dụng thủ
các đại lượng nào? viết lệnh nhập?
2 Treo bảng chứa chtrình Pascal
đơn giản có lệnh nhập giá trị cho 3
biến
- Mô phỏng kết quả chtrình cho hs
quan sát
Hỏi: Khi nhập giá trị cho nhiều
biến, ta phải thực hiện như thế
Hỏi: Lệnh Read và Readln khác
nhau như thế nào?
- Quan sát ví dụ của gv
- Suy nghĩ, trả lờiRead: ……
Readln: ……
1 Nhập dữ liệu từ bản phím
Hoạt động 2:(15 phút)Tìm hiểu thủ tục đưa dữ liệu ra màn hình.
a Nội dung:
- Dùng để đưa kết quả sau khi xữ kí ra màn hình để người sử dụng thấy
- Write/Writeln(<thamsố1>, ,<thamsốN>);
b Các bước tiến hành:
Trang 26Ví dụ: Khi viết CT giải pt:
ax+b=0, ta phải đưa ra màn hình
-b/a, ta phải viết lệnh như thế
nào?
2 Để nhập giá trị cho 1 biến từ
bàn phím, ta thường đưa thêm câu
dẫn dắt sau đó mới đến câu lệnh
4 Khi các tham số trong lệnh
write() thuộc kiểu Char hoặc Real
thì qui định vị trí như thế nào?
Viết ra màn hình dòng chữ và đưa con trỏ xuống dòng
- Dành 6 vị trí trên màn
hình để viết số x, 6 vị trí tiếp để viết số y, …
5 N/cứu sgk, suy nghĩ
Program vd;
Var x, y, z:integer;
Begin Writeln(‘Nhap vao hai so: ’);
Readln(x, y);
Z:= x+y;
Write(x:6, y:6, z:6);
Readln End.
- Khi tham số có kiểu nguyên hoặc kiểu kí tự việc qui định
<tham số>: <độ rộng>: <số chữ số thập phân>
Trang 27Thủ tục Readln và Writeln không
- Writeln để đưa con trỏ xuống đầu dòng dưới
Hoạt động 3: (3 phút)Làm quen với Turbo Pascal 7.0
a Mục tiêu: Biết được các file Ct cơ bản của TurboPascal 7.0 Biết cách khởi động và thoát khỏi
TP 7.0
b Các bước tiến hành:
1 ĐVĐ: Để sử dụng được Pascal
trên máy phải có các file chtrình
cần thiết Y/cầu hs tham khảo Sgk
và cho biết tên các file đó
egavga.bgi
Và các file *.chr
2 Học sinh quan sát và ghi nhớ
Hoạt động 4: (5 phút)Tập soạn thảo chtrình vào dịch lỗi cú pháp
a Nội dung:
Gõ các lệnh chtrình
Lưu file chtrình lên đĩa: bấm F2
Biên dịch lỗi cú pháp: Alt + F9
b Các bước tiến hành:
1 Soạn một chtrình làm ví dụ, lưu 1 Quan sát và ghi nhớ
DAY THON VI DA -
- - - <Han Mac Tu>
_
Trang 28- Thoát khỏi phầm mềm:
Alt+X
Hoạt động 5: (5 phút)Tập thực hiện chtrình và tìm lỗi thuật toán để hiệu chỉnh
a Mục tiêu: Hs biết cách thực hiện một chtrình, nhập dữ liệu và tìm lỗi thuật toán để hiệu chỉnh.
a=0, b=0 pt vô số nghiệm
- Chạy chtrình: bấm Ctrl+F9
IV CỦNG CỐ : (2 phút)
1 Nội dung đã học:
2 Câu hỏi, bài tập về nhà:
- So sánh sự giống nhau và khác nhau của các cặp lệnh write()/writeln() và read()/readln().
- Viết chtrình nhập vào một số và tính bình phương của số đó
- Viết chtrình nhập độ dài bán kính và tính chu vi, diện tích hình tròn tương ứng
- Làm bài tập 9, 10 sgk trang36
- Xem trước nội dung phần bài tập và thực hành số 1 sgk trang 34
* Xem phụ lục B sgk: Trang 122: Môi trường Turbo Pascal
Trang 136: Một số thông báo lỗi
Trang 29VI RÚT KINH NGHIỆM:
Trang 30
Ngày soạn:05/10/2010 BÀI TẬP THỰC HÀNH SỐ 1 (t1)
- Biết được một chương trình Pascal hoàn chỉnh
- Làm quen các dịch vụ chủ yếu của Turbo Pascal trong việc soạn thảo, lưu, dịch, thực hiện chương trình
2 Kĩ năng
- Soạn thảo được chtrình, lưu lên đĩa, dịch lỗi cú pháp, thực hiện và tìm lỗi thuật toán và hiệu chỉnh
- Bước dầu biết phân tích và hoàn thành chtrình đơn giản trên Pascal
3 Thái độ: Tự giác, tích cực và chủ động trong thực hành.
II ĐỒ DÙNG DẠY HỌC
1 Giáo viên: Phong máy vi tính được cài đầy đủ Turbo Pascal, projector để hướng dẫn
2 Học sinh: Sgk, sách bài tập và bài tập đã viết ở nhà.
III PHƯƠNG PHÁP: Thực hành trên máy, thuyết trình.
IV HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Kiểm tra bài cũ:
Viết chtrình nhập vào một số và tính bình
phương của số đó.
Cho 2 hs xung phong lên bảng
Nhận xét, đánh giá, cho điểm
Hoạt động 1: (30phút)Tìm hiểu một chương trình hoàn chỉnh
a Nội dung: Cho chương trình sau:
Trang 31b Các bước tiến hành:
1 Chiếu chương trình lên bảng
Y/cầu h/s thực hiện các nhiệm vụ:
- Soạn chtrình vào máy
EnterCtrl + F9Thông báo lỗi
Do căn bậc hai của một
số âm
Program Giai_pt;
Uses crt;
Var a, b, c, d, x1, x2: real; Begin
Readln
End.
V CỦNG CỐ : (7phút)
1 Nội dung đã họ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/ra
VI RÚT KINH NGHIỆM:
Trang 32
Ngày soạn:12/10/2010 BÀI TẬP THỰC HÀNH SỐ 1 (t2)
- Biết được một chương trình Pascal hoàn chỉnh
- Làm quen các dịch vụ chủ yếu của Turbo Pascal trong việc soạn thảo, lưu, dịch, thực hiện chương trình
2 Kĩ năng
- Soạn thảo được chtrình, lưu lên đĩa, dịch lỗi cú pháp, thực hiện và tìm lỗi thuật toán và hiệu chỉnh
- Bước dầu biết phân tích và hoàn thành chương trình đơn giản trên Pascal
3 Thái độ: Tự giác, tích cực và chủ động trong thực hành.
II ĐỒ DÙNG DẠY HỌC
1 Giáo viên: Phong máy vi tính được cài đầy đủ Turbo Pascal, projector để hướng dẫn
2 Học sinh: Sgk, sách bài tập và bài tập đã viết ở nhà.
III PHƯƠNG PHÁP: Thực hành trên máy, thuyết trình.
IV HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Kiểm tra bài cũ: GV kiểm tra trong khi thực hành.
Hoạt động 1: (45 phút) Rèn luyện kĩ năng lập chương trình.
a Mục tiêu: Hs soạn, lưu, dịch và thực hiện được chương trình
b Nội dung: Viết chương trình nhập từ bàn phím 2 số thực a và b, tính và đưa ra màn hình trung
bình cộng các bình phương của hai số đó
c Các bước tiến hành:
1 Định hướng để hs phân tích bài
- F2, gõ tên file để lưu
- Alt+F9 : biên dịch lỗi
V CỦNG CỐ : (7phút)
Trang 331 Nội dung đã họ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/ra
2 Câu hỏi, bài tập về nhà:
- Viết chương trình nhập vào độ dài 3 cạnh của một tam giác, tính chu vi, diện tích của tam giác đó
- Xem trước bài: Cấu trúc rẽ nhánh, sgk trang 38
VI RÚT KINH NGHIỆM:
Trang 34
Ngày soạn:19/10/2010 BÀI TẬP ÔN CHƯƠNG II
Ngày dạy: 21/10/2010
TPP: 10
Tuần: 10
I MỤC TIÊU:
1 Kiến thức: Biết phânbiệt các loại biểu thức trong NNLT.
2 Kĩ năng: Viết được các biểu thức số học và logic với các phép toán thông dụng.
II ĐỒ DÙNG DẠY HỌC:
1 Giáo viên: bài giải các bài tập sgk
2 Học sinh: sgk
III PHƯƠNG PHÁP: Thực hành trên máy, thuyết trình.
IV HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Kiểm tra bài cũ:
Phát đề cho h/s
3 Bài mới:
Hoạt động 1: (10 phút) Bài tập 8/sgk/36
a Mục tiêu: Xây dựng được biểu thức logic làm điều kiện để giải một số bài toán đơn giản/
b Nội dung: Viết biểu thức lôgic cho kết quả True khi tọa độ (x, y) là điểm nằm trong vùng gạch
chéo kể cả biên của hình 2.a và 2.b (trang 36/sgk)/
- Y/cầu hs từ các biểu thức quan
hệ viết ra bthức lôgic theo yêu cầu
Tự làm
Hoạt động 2: (15 phút)Bài 9/sgk/36
a Mục tiêu: Củng cố lại các bước khi xây dựng chương trình, sử dụng các dạng câu lệnh vào ra
đã học
Trang 35- Cách tính: a*a*pi/2
Hs độc lập viết chương trình
End.
V CỦNG CỐ : (5phút)
1 Nội dung đã học:
2 Câu hỏi, bài tập về nhà: Xem trước bài: Cấu trúc rẽ nhánh, sgk trang 38
VI RÚT KINH NGHIỆM:
Trang 36
Ngày soạn:26/10/2010 KIỂM TRA MỘT TIẾT
Ngày dạy:28 /10/2010
TPP: 11
Tuần: 11
I Mục tiêu:
1 Kiến thức: Cách khai báo hằng, biến, cách tạo các biểu thức, cách sử dụng lệnh gán, cách sử
dụng lệnh vào ra đơn giản
2 Kĩ năng:
- Biết khai báo biến đơn
- Biết diễn đạt đúng các câu lệnh, soạn được chương trình các bài toán đơn giản
3 Thái độ:
- Nghiêm túc ,cố gắng vượt qua những lúng túng
- Tiếp tục rèn luyện phẩm chất cần thiết cho người lập trình
II ĐỒ DÙNG DẠY HỌC:
1 Giáo viên: Đề kiểm tra.
2 Học sinh: Giấy kiểm tra.
III PHƯƠNG PHÁP: Trắc nghiệm khách quan, tự luận
IV HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Nội dung đề kiểm tra:
A PHẦN TRẮC NGHIỆM (15 phút - 3 điểm):
Câu 1: Trong ngôn ngữ lập trình Pascal, từ khoá VAR dùng để
Câu 2: Trong Turbo Pascal, để biên dịch chương trình
2 + +
+
x a
x a
Biểu thức tương ứng trong Pascal là:
A (a + sin(x))/srt(a*a + x*x + 1) B (a + sin(x))/sqr(a*a + x*x + 1).
C (a + sin(x))/sqrt(a*a + x*x + 1) D a + sin(x)/sqrt(a*a + x*x + 1).
Câu 5: Trong những biểu diễn dưới đây, biểu diễn nào là từ khoá trong Pascal?
Câu 6: Phát biểu nào dưới đây là đúng?
A 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
B 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.
C Mọi bài toán đều có chương trình để giải trên máy tính.
Trang 37D 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ể
Câu 7: Trong Turbo Pascal, để chạy chương trình
A Nhấn tổ hợp phím Alt + F9 B Nhấn tổ hợp phím Shift + F9.
Câu 8: Trong các phát biểu sau, phát biểu nào sai.
A Hằng là các đại lượng có giá trị thay đổi trong quá trình thực hiện chương trình.
B Biên dịch là dịch toàn bộ chương trình nguồn thành chương trình đích có thể thực hiện trên
máy và có thể lưu trữ để sử dụng lại khi cần
C Biến là những đại lượng được đặt tên dùng để lưu trữ giá trị và giá trị có thể thay đổi trong
quá trình thực hiện chương trình
D Chương trình viết trên 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ữ máy mới có thể thực hiện được
Câu 9: Cho biểu thức trong Pascal: abs(x+1) - 1 Biểu thức tương ứng trong Toán học là:
Câu 10: Trong ngôn ngữ lập trình Pascal, với câu lệnh sau: Writeln('KQ la:',a); sẽ ghi ra màn
hình?
Câu 11: Chương trình dịch Pascal sẽ cấp phát bao nhiêu byte bộ nhớ cho các biến trong khai báo
sau?
VAR M, N, I: Integer;
A, B: Real;
C: Word;
Câu 12: Trong Turbo Pascal, để đóng cửa sổ chương trình
C Nhấn tổ hợp phím Alt + F3 D Nhấn tổ hợp phím Alt + F4.
B PHẦN TỰ LUẬN (30 phút - 7 điểm):
Câu 1 (3 điểm): Chương trình dịch là gì? Nêu sự khác nhau giữa thông dịch và biên dịch?
Câu 2 (2 điểm): Trình bày sự khác nhau giữa tên dành riêng và tên chuẩn? Lấy một số ví dụ về
tên dành riêng và tên chuẩn trong ngôn ngữ lập trình Pascal?
Câu 3 (2 điểm): Hãy chuyển các biểu thức toán học dưới đây sang biểu thức trong ngôn ngữ lập
trình Pascal?
Trang 38V NHẬN XÉT SAU KHI CHẤM BÀI:
Trang 39
Ngày soạn: 02/11/2010 CHƯƠNG III: CẤU TRÚC RẼ NHÁNH VÀ LẶP
Ngày dạy: 04/11/2010 §9 CẤU TRÚC RẼ NHÁNH
TPP: 12
Tuần: 12
I MỤC TIÊU
1 Kiến thức:
- Hiểu nhu cầu của cấuu 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 đơn giản
- Viết được các lệnh rẽ nhánh thiếu, rẽ nhánh dạng đầy đủ và áp dụng được để thể hiện thuật toán của một số bài toán đơn giản
3 Thái độ: Khơi gợi lòng ham thích giải toán bằng lập trình trên máy tính.
II ĐỒ DÙNG DẠY HỌC
1 Giáo viên: + Soạn giáo án
+ Chuẩn bị bảng phụ sau:
2 Học sinh: sọan bài ở nhà.
III PHƯƠNG PHÁP: Giảng giải, phát vấn.
IV HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tổ chức: Kiểm tra sĩ số lớp.
2 Kiểm tra bài cũ: (5 phút)
Câu lệnh 2
Trang 40Hoạt động 1: (5 phút) Tìm hiểu cấu trúc rẽ nhánh thiếu và đủ
- Với bài toán trên làm thế nào để
+ Nếu a>b thì max = a
+ Nếu a<b thì max = b
- Nếu là người lớn thì 5000đ nếu trẻ em thì 1000đ
1 Rẽ nhánh:
* Một số mệnh đề có dạng điều kiện:
+ Dạng thiếu: Nếu…thì…+ Dạng đủ: Nếu … thì … nếu không thì …
* Cấu trúc dùng để mô tả các mệ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ấu trúc rẽ nhánh
Hoạt động 2: (12 phút) Câu lệnh If …then
1 Y/cầu hs n/cứu sgk và dựa vào
các ví dụ cấu trúc rẽ nhánh để đưa
ra cấu trúc chung của câu lệnh rẽ
nhánh
2 Khi không đề cập đến việc gì
xãy ra nếu điều kiện không thõa
max:=a; if a < b then max:=b;
Lưu ý: Trước từ khoá Else không
có dấu ;
- Dạng nào thuận tiện hơn?
1 N/cứu sgk và trả lời If<điều_kiện>Then<lện
Suy nghĩ và trả lời
-> tuỳ trường hợp cụ thể
2 Câu lệnh IF – THEN:
* Để mô tả cấu trúc rẽ nhánh, Pascal dùng câu lệnh: