- BiÕt thùc hiÖn c¸c c©u lÖnh rÏ nh¸nh vµ lÆp cña ng«n ng÷ lËp tr×nh Pascal... N¾m ®îc cÊu tróc chung cña cÊu tróc nh¸nh..[r]
Trang 1 Biết đợc khái niệm lập trình và ngôn ngữ lập trình
Biết đợc khía niệm chơng trình dịch
Phân biệt đợc 2 loại chơng trình dịch là biên dịch và thông dịch
III Hoạt động dạy và học
1 Hoạt dộng 1: tìm hiểu khái niệm lập trình và ngôn ngữ lập trình:
a Mục tiêu:
- Giúp học sinh biết đợc lập trình là gì ý nghĩa của việc lập trình
- Biết đợc khái niệm của ngôn ngữ lập trình và biết một số loại ngôn ngữ lập trình
- Hãy xác định các yếu tố Input và
Output của bài toán?
- Hãy xác định các bớc để tìm Output?
* Các bớc trên ta gọi là gì?
- Nếu trình bày thuật toán này với một
ngời nớc ngoài, em dùng ngôn ngữ nào
để diễn đạt?
- Nếu diễn đạt thuật toán này cho máy
hiểu, em sẽ dùng loại ngôn ngữ nào ?
1 Quan sát nội dung của bài toán và theorõi yêu cầu của giáo viên:
- Input: a,b
- Output: Tổng:=a+b; Tích:=a*b
Bớc 1: Nhập a,b Bớc 2: Gán: Tổng:=a+b; Tích:=a*b
Bớc 3: Đa ra Tổng, Tích rồi kết thúc
* Gọi là thuật toán của bài toán trên
- Sử dụng sơ đồ khối hoặc ngôn ngữ củangời đó để diễn đạt
- Ngôn ngữ máy
Trang 2Hoạt động của giáo viên Hoạt động của học sinh
*Đúng vậy quá trình diễn đạt đó ta cần
sử dụng ngôn ngữ mà máy tính có thể
nhận biết và những ngôn ngữ nh vậy ta
gọi là “Ngôn ngữ lập trình”
- Diễn giải: Hoạt động để diễn đạ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
- Yêu cầu HS đọc SGK và cho biết KN
lập trình
Hỏi: Kết quả của hoạt động lập trình.
2 Phát phiếu học tập Yêu cầu các em
Hỏi: Vì sao ngời ta không lập trình trên
ngôn ngữ máy để khỏi mất công
chuyển đổi mà ngời ta phải lập trình
- Ngôn ngữ bậc cao các lệnh đợc mã hoábằng ngôn ngữ gần với ngôn ngữ tiếngAnh, chơng trình viết bằng ngôn ngữ bậccao phải đợc chuyển đổi thành chơng trìnhtrên ngôn ngữ máy mới có thể thực hiện
đợc
- Phải sử dụng một chơng trình để chuyển
đổi NNBC thành ngôn ngữ máy
- Lập trình bằng NNBC dễ viết hơn vì cáclệnh đợc mã hoá gần với ngôn ngữ tựnhiên Lập trình trên ngôn ngữ máy rấtkhó, thờng chuyên gia lập trình với lậptrình đợc
2 Hoạt động 2: Tìm hiểu 2 loại ch ơng trình, thông dịch và biên dịch.
- Cần phải có một chơng trình dịch để chuyển chơng trình viết bằng ngôn ngữ khácthành ngôn ngữ máy
Trang 3- Đầu vào của một chơng trình dịch là một chơng trình viết bằng ngôn ngữ bậc cao,
đầu ra cũng là một chơng trình nhng đợc viết bằng ngôn ngữ máy
- Biên dịch: kiểm tra phát hiện lỗi và dịch toàn bộ chơng trình nguồn thành chơngtrình có thể thực hiện ở trên máy
- Thông dịch là dịch từng câu lệnh một
c Các b ớc tiến hành:
1 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ó 2 cách thực hiện
Cách 1: Cần môt ngời biết 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 2: Em soạn nội dung cần giới thiệu
ra giấy và ngời phiên dịch dịch toàn bộ nội
dung đó ra tiếng Anh rồi đọc cho ngời
khách
- Hãy lấy một ví dụ tơng tự trong thực tế
biên dịch từ tiếng Anh ra tiếng Việt
2 Yêu cầu học sinh nghiên cứu SGK và sử
dụng các ví dụ trên để cho biết các tiến
Bớc 2: Dịch toàn bộ chơng trình nguồnthành một chơng trình trên ngôn ngữ máy
- Thông dịch:
Bớc 1: Kiểm tra tính đúng đắn của lệnhtiếp theo chơng trình nguồn
Bớc 2: Chuyển lệnh đó thành ngôn ngữmáy
Bớc 3: Thực hiện các câu lệnh vừa chuyển
đổi (phù hợp với môi trờng đối thoại giữangời và máy)
IV Đánh giá cuối bài:
1 Những nội dung đã học:
- Khái niệm lập trình và ngôn ngữ lập trình
- Có ba loại ngôn ngữ lập trình: Ngôn ngữ máy, hợp ngữ, và ngôn ngữ bậc cao
- Khái niệm chơng trình dịch
- Có hai loại chơng trình dịch là thông dịch và biên dịch
2 Câu hỏi và bài tập về nhà: SGK
Trang 41 Chuẩn bị của giáo viên:
- Tranh chứa bảng chữ cái, tranh chứa các tên sai - đúng để học sinh chọn, phiếuhọc tập
2 Chuẩn bị của học sinh:
- SGK, Đọc bài mới trớc khi đến lớp
III Hoạt động dạy và học
1 Hoạt động 1: Tìm hiểu các thành phần của ngôn ngữ lập trình.
a Mục tiêu:
Biết đợc một ngôn ngữ lập trình gồm 3 thành phần: Bảng chữ cái cú pháp và ngữnghĩa
b Nội dung:
+ Bảng chữ cái: là tập hợp các ký tự đợc dùng để viết chơng trình, không đợc dùngbất kỳ ký tự nào ngoài các ký tự quy định trong bảng chữ cái
+ Cú pháp: là bộ quy tắc để viết chơng trình
+ Ngữ nghĩa xác định ý nghĩa thao tác cần phải thực hiện, ứng với mỗi tổ hợp dựavào ngữ cảnh của nó
c Các bớc tiến hành:
1 Đặt vấn đề: có những yếu tố nào để xây
dựng tiếng Việt?
2 Giảng: trong một ngôn ngữ lập trình
cũng vậy nó gồm các thành phần: Bảng
chữ cái, cú pháp và ngữ nghĩa
3 Lớp chia làm 3 nhóm Thảo luận và
thống nhất cho 1 bạn trả lời các câu hỏi
- Ngữ nghĩa của từ và câu
Trang 5Hoạt động của giáo viên Hoạt động của học sinh
- Nêu một số các ký tự đặc biệt khác
- Gọi đại diện của nhóm lên trình bày Sau
đó gọi đại diện nhóm khác lên nhận xét,
bổ xung
- Treo tranh của giáo viên đã chuẩn bị để
tiểu kết cho hoạt động này
bổ xung những thiếu sót
- Tập trung xem tranh và ghi nhớ
2 Hoạt động 2: Tìm hiểu khái niệm tên trong thành phần của ngôn ngữ lập trình.
1.Đặt vấn đề: Mọi đối tợng trong chơng
trình phải đợc đặt tên
- Hãy nghiên cứu SGK trang 10, để nêu
quy cách đặt tên trong Turbo Pascal?
2.Treo tranh chứa các tên đúng, sai, yêu
3.Yêu cầu HS nghiên cứu SGK(trang 10 -11)
để biết các khái niệm về tên dành riêng,
tên chuẩn và tên do ngời lập trình đặt
- Chia lớp thàn 4 nhóm Nhóm 1,2,3 trình
bày hiểu biết của mình về một loại tên và
cho ví dụ Nhóm 4 cho nhận xét chung
1 Nghiên cứu SGK và trả lời
- Gồm các chữ cái, chữ số và dấu gạch dới
- Bắt đầu bằng chữ cái hoặc dấu gạch dói
- Độ dài không quá 127
2 Quan sát và trả lời
AR12_45
3 HS nghiên cứu SGK để trả lời
- Thảo luận theo nhóm và điền phiếu họctập
+ Tên dành riêng: Là những tên do ngônngữ lập trình quy định dùng với ý nghĩaxác định, ngời lập trình không đợc dùngvới ý nghĩa khác
+ Tên chuẩn là những tên đợc ngôn ngữlập trình quy định dùng với một ý nghĩanào đó, ngời lập trình có thể định nghĩa lại
để dùng nó với ý nghĩa khác
+ Tên do ngời lập trình đặt: là tên đợc
Trang 6Hoạt động của giáo viên Hoạt động của học sinh
- Treo tranh chứa một số tên trong ngôn
ngữ lập trình Pascal đã đợc chuẩn bị sẵn:
Program Asb Integer Type Xyx Byte tong
- yêu cầu học sinh mỗi nhóm thực hiện:
- Tiểu kết cho các vấn đề này bằng cách bổ
xung thêm cho mỗi nhóm để đa ra trả lời
đúng
dùng theo ý nghĩa riêng của từng ngời lậptrình, tên này đợc khai báo trớc khi sửdụng Các tên không đợc trùng với têndành riêng
- HS quan sát và điền phiếu học tập
Tên dành riêng: Program typeTên chuẩn: Asb Interger ByteTên tự đặt: Xyx Tong
- Quan sát kết quả các nhóm khác và nhậnxét, đánh giá và bổ xung
- Theo rõi bổ xung của giáo viên để hoànthiện kiến thức
+ Hằng số học là các số nguyên và số thực, có dấu hoặc không dấu
+ Hằng xâu là một chuỗi ký tự bất kỳ Khi viết, chuỗi ký tự này đợc đặt trong cặpdấu nháy đơn
+ Hằng lôgic là gí trị đúng (true) hoặc sai (false)
- Biến là đại lợng đợc đặt tên và lu trữ giá trị và giá trị có thể thay đổi trong quátrình thực hiện chơng trình Các biến dùng trong chơng trình đều phải đợc khai báo
- Chú thích đợc đặt giữa cặp dấu {} hoặc (* *) để giải thích cho chơng trình dễhiểu và rõ ràng
c Các bớc tiến hành.
1 Yêu cầu học sinh cho một số ví dụ về
- Hằng xâu: là chuỗi ký tự trong bộ mãASCII, đợc đặt trong cặp dấu nháy
- Hằng logic: là giá trị đúng (true) hoặc sai(false)
2 quan sát và trả lời:
- Hằng số: - 32767, 1.5E+2
- Hằng xâu: ‘QB’ ‘50’
Trang 73 Yêu cầu học sinh nghiên cứu SGK, cho
biết khái niệm biến
- Cho ví dụ một số biến
4 Yêu cầu học sinh nghiên cứu SGK và
cho biết chức năng của chú thích trong
ch-ơng trình
- Cho ví dụ về một dòng chú thích
- Hỏi: Tên biến tên hằng là tên dành riêng
hay tên do ngời lập trình đặt
- Hỏi : các lệnh đợc viết trong cặp lệnh
{} có đợc TP Pascal thực hiện không vì sao
3 Nghiên cứu SGK và trả lời
- Biến là đại lợng đợc đặt tên và lu trữ giátrị và giá trị có thể thay đổi trong quátrình thực hiện chơng trình Các biến dùngtrong chơng trình đều phải đợc khai báo
- VD: tên 2 biến là xyz tong
4 Học sinh độc lập trả lời
- Chú thích đợc đặt giữa cặp dấu {} hoặc(* *) để giải thích cho chơng trình dễhiểu và rõ ràng
- { lenh xuat du lieu}
Trang 81 Chuẩn bị của giáo viên
- Máy vi tính có máy chiếu dùng để chiếu các ví dụ(Nếu có)
- Một số chơng trình mẫu viết sẵn
2 Chuẩn bị của học sinh
- SGK
III Hoạt động dạy học:–
1 Hoạt động : Tìm hiểu cấu trúc chung và các thành phần của chơng trình
a Mục tiêu:
- Học sinh biết đợc chơng trình có 2 phần và nội dung của từng phần
b Nội dung:
- Cấu trúc của chơng trình có 2 phần: phần khai báo và phần thân
- Phần khai báo: Khai báo tên chơng trình, khai báo th viện chơng trình, khai báobiến, khai báo hằng, khai báo chơng trình con
- Phần thân chơng trình: Bao gồm dãy lệnh đợc đặt trong cặp dấu hiệu mở đầu vàkết thúc
Mở đầu
Các câu lệnhKết thúc
c Các b ớc tiến hành:
1 Phát vấn gợi ý: 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 ra nh vậy
1 Lắng nghe và trả lời:
- Có 3 phần
- Có thứ tự: Mở bài, thân bài kết luận
- Dễ biết, dễ đọc, dễ hiểu nội dung
Trang 9Hoạt động của giáo viên Hoạt động của học sinh
2 Yêu cầu học sinh nghiên cứu SGK để
trả lời câu hỏi sau:
+ Program: Từ khoá (Tên riêng)
+ <ten_chuong_trinh> Đặt theo quy tắc
đặt tên
- Yêu cầu học sinh lấy ví dụ khai báo th
viện chơng trình con trong ngôn ngữ
Pascal
USES <Ten_thu_vien>;
Trong đó:
+ Uses: Từ khoá (Tên riêng)
+ <Ten_thu_vien> Là nơi chứa chơng trình
chuẩn của Pascall
- Yêu cầu học sinh lấy ví dụ khai báo hằng
- Giữa ký hiệu mở đầu và ký hiệu kết thúc
2.Nghiên cứu SGK và trả lời
- Cấu trúc : Program ten_chuong_trinh;
KT = TRUE;
CH = ‘C’;
Đợc xác định từ ký hiệu mở đầu đến kýhiệu kết thúc
Ký hiệu mở đầu: Begin
Ký hiệu kết thúc: End
Là dãy câu lệnh để thực hiện thuật toán
Trang 10Hoạt động của giáo viên Hoạt động của học sinh
- Cách khai báo: Tên CT, Th viện CT, Hằng
- Thân chơng trình trong Pascal bắt đầu bằng Begin và kết thúc bởi End
4: Một số kiểu dữ liệu chuẩn
(Tiết dạy theo PPCT: 5 Từ 31/08 – 06/09/2009)
1 Chuẩn bị của giáo viên
- Máy vi tính có máy chiếu dùng để chiếu các ví dụ(Nếu có)
2 Chuẩn bị của học sinh
- SGK
III Hoạt động dạy học:–
1 Hoạt động : Tìm hiểu một số kiểu dữ liệu chuẩn
Longint: - 2148473648 2148473647
Trang 11- Giảng: nh ta đã biết bài toán trong tin
học là giải quyết các bài toán thực tế vì
vậy trong cuộc sống có kiểu dữ liệu nào thì
ngôn ngữ lập trình pải biểu diễn đợc kiểu
dữ liệu đó
- Trong thời điểm ngôn ngữ bạc cao ra đời
máy tính đang gặp phải những hạn chế lớn
đó là dung lợng bộ nhớ rất nhỏ, tốc độ xử
lý thông tin chậm Trong khi đó nếu chỉ sử
dụng nguyên kiểu dữ liêu trên thi xảy ra
tr-ờng hơp lãng phí bộ nhớ do đó các ngôn
ngữ lập trình bạc cao dựa vào các kiểu dữ
liệu chuẩn đó chia ra các kiểu dữ liệu con
với dung lợng bộ nhớ và phạm vi biểu diễn
khác nhau
- Ta có thể hiểu 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ữ kiệu
Trang 12Hoạt động của giáo viên Hoạt động của học sinh
2 Yêu cầu HS nghiên cứu SGK trả lời các
câu hỏi sau:
-Từ kiểu dữ liệu số nguyên ngôn ngữ lập
trình Pascal chia ra các kiểu dữ liệu nào?
-Từ kiểu dữ liệu số Thực ngôn ngữ lập
trình Pascal chia ra các kiểu dữ liệu nào?
-Từ kiểu dữ liệu kiểu ký tự ngôn ngữ lập
trình Pascal chia ra các kiểu dữ liệu nào?
- Trong ngôn ngữ Pascal, có bao nhiêu
kiểu lôgic, gồm các giá trị nào?
3 Giáo viên 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
kiểu nguyên khác nhau?
+ Miền giá trị của các loại kiểu thực, số
chữ số có nghĩa?
4 Phát vấn:
+ Giả sử ta cần sử dụng 1 biến để lu Tuổi
của ngời thì ta nên dùng kiểu dữ liệu nào?
vì sao?
+Khi giải PT bậc hai ta cần có các biến
a,b,c,x1,x2,delta: giã sử a,b,c kiểu số
nguyên thì ta cần đặt x1,x2,delta có kiểu dữ
liệu nào? Tại Sao?
2 Học sinh xem SGK để trả lời câu hỏi
10 -4932 10 4932
- Có 1 kiểu là các ký tự của bảng mãASCII
Trang 13V Bài tập Củng cố
1) Giã sử có các biến sử dụng kiểu dữ liệu nh sau: a, b, c: Integer ; x1,x2,delta: Real Hỏi
bộ nhớ sẽ phải cung cấp bao nhiêu ô nhớ?
5 Khai báo biến
(Tiết dạy theo PPCT: 6 Từ 31/08 – 06/09/2009)
1 Chuẩn bị của giáo viên
- Giáo án, SGK, Tranh ảnh khai báo biến
2 Chuẩn bị của học sinh
- SGK
III Hoạt động dạy học:–
Trang 141.Hoạt động Tìm hiểu cách khai báo biến.
1 Yêu cầu HS nghiên cứu SGK và hỏi:
Tại sao lại phải khai báo biến?
- Câu trúc chung của khai báo biến trong
ngôn ngữ Pascal?
- Trong đó
Var <danh sách biến>: <kiểu dữ liệu> là
gì? cho ví dụ?
- Cho ví dụ về cách khai báo biến
2 Treo tranh chứa một số khai báo biến
1.HS nghiên cứu và trả lời
- Mọi biến trong chơng trình đều phải đợckhai 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ữabiến với địa chỉ bộ nhớ nơi lu trữ giá trịcủa biến
- Var <danh sách biến>: <kiểu dữ liệu>;
+ Var: là từ khoá
+ <Danh sách biến>: là một hoặc nhiềubiến có cùng kiểu dữ liệu Có thể khai báonhiều danh sách biến
+<Kiểu dữ liệu>: Là một trong các kiểu dữliệu chuẩn của Pascal hoặc kiểu dữ liệu dongời lập trình định nghĩa
Trang 15Hoạt động của giáo viên Hoạt động của học sinh
yêu cầu HS chọn cách khai báo đúng
- Hỏi: Có bao nhiêu biến tất cả, bộ nhớ
phải cấp phát là bao nhiêu?
x (2 byte); y (2 byte); z (4 byte);
h (2 byte); i (1 byte); tổng 11 byte
1) thực hiện phần khai báo cho chơng trình: Giải PT bậc 2: ax2 + bx + c = 0
2) Cho a, b, c là 3 số nguyên dơng thực hiện phần khai báo cho chơng trình tính TBCcủa 3 số đó
Trang 16 6: Phép toán, biểu thức, lệnh gán
(Tiết dạy theo PPCT: 7)
I Mục tiêu
1 Kiến thức
- Biết đợc các phép toán thông dụng trong ngôn ngữ lập trình
- Biết cách diễn đạt một biểu thức trong ngôn ngữ lập trình
- Biết đợc cấu trúc của lệnh gán và một số hàm chuẩn thông dụng trong ngôn ngữlập trình Pascan
- Biết đợc chức năng và hoạt động của câu lệnh gán
2 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 Đồ dùng dạy học
1 Chuẩn bị của giáo viên
- Sách giáo khoa, tranh chứa các biểu thức trong toán học
- Tranh chứa bảng các hàm số học chuẩn, tranh chứa bảng chân trị
III Hoạt động dạy học
1 Hoạt động 1: Tìm hiểu một số phép toán
a Mục tiêu:
- Học sinh biết đợc tên các phép toán, kí hiệu của các phép toán và cách sử dụngcủa các phép toán đối với mỗi kiểu dữ liệu
b Nội dung:
- Các phép toán số học: +, -, *, / , DIV, MOD
- Các phép toán quan hệ: <, <=, >, >=,=, <> Dùng để so sánh hai đại lợng, kết quảcủa các phép toán này là True hoặc False
- Các phép toán Logic: NOT , OR , AND, thờng dùng để tạo các biểu thức logic
từ các biểu thức quan hệ đơn giản
c Các bớc tiến hành
1 Đặt vấn đề:
Nh ta đã biết quá trình lập trình là quá
trình mô tả các thao tác của thuật toán Để
mô tả các thao tác trong thuật toán, mỗi
- Yêu cầu học sinh nghiên cứu sách giáo
khoa và cho biết các nhóm phép toán
Trang 17Hoạt động của giáo viên Hoạt động của học sinh
- Hỏi: Phép Div, Mod đợc sử dụng cho
những kiểu dữ liệu nào?
- Hỏi: Kết quả của phép toán quan hệ
thuộc kiểu dữ liệu nào?
- Chỉ sử dụng đợc cho kiểu nguyên
- Thuộc kiểu Logic
2 Hoạt động 2: Tìm hiểu kiến thức
- Hàm số học chuẩn thông dụng
Giá trị tuyệt đối: ABS(X) I hoặc R Theo kiểu của đối số
Luỹ thừa của số e ex exp(x) I hoặc R R
- Hai biểu thức có cùng kiểu dữ liệu đợc liên kết với nhau bởi phép toán quan hệcho ta một biểu thức quan hệ
<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ác biểu thức
+ Thực hiện phép toán quan hệ
- Các biểu thức quan hệ liên kết với nhau bởi phép toán logic ta đợc biểu thứclogic Biểu thức logic đơn giản là giá trị True hoặc False
C Các bớc tiến hành:
1 Nêu vấn đề: (Biểu thức số học)
- Trong toán học ta đã làm quen với khái
niệm biểu thức, hãy cho biết 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à các hạng là
biến số, hằng số 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 tranh có chứa các biểu thức toán
học lên bảng, yêu cầu: Sử dụng các phép
Trang 18Hoạt động của giáo viên Hoạt động của học sinh
toán số học, hãy biểu diễn biểu thức toán
học sau thành biểu thức trong ngôn ngữ
- Nghiên cứu sách giáo khoa và 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 phép toán
3 Nêu vấn đề: (Hàm số học chuẩn)
Trong các bài toán có những phép toán
phải thực hiện liên tục.Để tránh mất thời
gian và gây nhàm chán cho ngời lập trình
các ngôn ngữ lập trình xây dựng các thao
tác thông dụng đó thành các chơng trình
con.Gọi là các hàm chuẩn và lu trong th
viện chơng trình Ngời lập trình khi cần có
thể gọi hàm chuẩn đó ra để sử dụng
- Trong toán học ta đã làm quen với một số
hàm số học, hãy kể tên một số hàm đó?
- Trong một số ngôn ngữ lập trình ta cũng
có một số hàm nh vậy nhng đợc diễn đạt
bằng một cách khác
- Treo tranh chứa bảng một số hàm chuẩn,
yêu cầu học sinh điền thêm các thông tin
nh chức năng của hàm, kiểu của đối số và
kiểu của hàm số
- Cho biểu thức:
2 4 2
b b ac a
, hãy biểudiễn biểu thức trên sang biểu thức trong
ngôn ngữ lập trình
4 Nêu vấn đề: (Biểu thức quan hệ)
- Khi hai biểu thức số học liên kết với
nhau bằng một phép toán quan hệ ta đợc
một biểu thức mới, biểu thức đó gọi là biểu
thức gì?
- Hãy lấy một ví dụ về biểu thức quan hệ?
- Yêu cầu HS nghiên cứu SGK và cho biết
cấu trúc chung của biểu thức quan hệ?
- Thứ tự thực hiện của biểu thức quan hệ?
- Cho biết kết quả của phép toán quan hệ
thuộc kiểu dữ liệu nào đã học?
5 Nêu vấn đề: (Biểu Thức Logic)
- Các biểu thức quan hệ đợc liên kết với
(a + b + c)*2x*y/(2*z)
- Thực hiện trong ngoặc trớc; ngoài ngoặcsau Nhân, chia, chia nguyên, chia lấy d tr-ớc; cộng trừ sau
+ Thực hiện phép toán quan hệ
- Kiểu logic
5 Chú ý theo dõi dẫn dắt của giáo viên vàsuy nghĩ để trả lời
Trang 19Hoạt động của giáo viên Hoạt động của học sinh
nhau bởi phép toán logíc đợc gọi là biểu
thức logic
- Hãy cho một ví dụ về biểu thức lo gic?
- Trong toán học, ta có biểu thức 0<=x<=n,
hãy biểu diễn biểu thức này trong ngôn
ngữ lập trình
- Thứ tự thực hiện biểu thức logic
- Kết quả của biểu thức logic có kiểu dữ
liệu là gì?
- Treo tranh có chứa bảng chân trị của a
và b, yêu cầu học sinh điền giá trị cho A
and B; A or B; not A
- Ví dụ: (A>B) or ((X +1)< Y) (5>2) and ((3+2)<7)
Not(x>y)
- Biểu thức trong ngôn ngữ lập trình:(0<=x) and (x<=n)
+ Thực hiện các biểu thức quan hệ
+ Thực hiện các phép toán logic
- Kết quả kiểu logic
- HS suy nghĩ và trả lời bằng cách điền vàobảng
- Lệnh gán dùng để tính giá trị của biểu thức và chuyển giá trị đó vào một biến
- Cấu trúc: tên_biến:= biểu_thức;
- Sự thực hiện của máy:
+ Tính giá trị của biểu_thức
+ Đặt giá trị vào tên_biến
c Các bớc tiến hành
- Giới thiệu một ví dụ về lệnh gán trong
- Yêu cầu HS nghiên cứu SGK và cho biết
cấu trúc chung của lệnh gán trong ngôn
- Quan sát ví dụ và suy nghĩ để trả lời
+ 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
<tên_biến>:=<biểu_thức>;
x:=(-b+sqrt(b*b-4*a*c))/(2*a);
Trang 20Hoạt động của giáo viên Hoạt động của học sinh
- Quan sát kết quả của chơng trình
IV Đánh giá cuối bài
1 Những nội dung đã học
- Các phép toán trong TB Pascal: số học, quan hệ và logíc
- Các biểu thức trong TB Pascal: số học, quan hệ và logíc
- Cấu trúc lệnh gán trong TB Pascal: tên_biến: = biểu_thức
2 Câu hỏi và bài tập về nhà
Bài tập 1-8 trang 35,36 SGK tin học 11
7,8: 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
(Tiết dạy theo PPCT: 9)
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ấu trúc chung của thủ tục vào/ra trong ngôn ngữ lập trình Pascal
Trang 21- 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 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 chơng trình
- Biết khởi động và thoát hệ soạn thảo Turbo Pascal
- Soạn đợc một chơng trình vào máy
- Dịch đợc chơng trình để phát hiện lỗi cú pháp
- Thực hiện đợ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 Đồ dùng dạy học
1 Chuẩn bị của giáo viên
- SGK, máy chiếu Projector, máy vi tính, một số chơng trình viết sẵn
2 Chuẩn bị của học sinh:
SGK
III Hoạt động dạy và học
1 Hoạt động 1: Tìm hiểu thủ tục nhập dữ liệu vào từ bàn phím
a Mục tiêu:
- Giúp HS thấy đợc sự cần thiết của thủ tục nhập dữ liệu
- Biết đợc cấu trúc chung của thủ tục nhập dữ liệu
b Nội dung:
- Dùng để đa nhiều bộ dữ liệu khác nhau cho cùng một chơng trìn xử lí
- Nhập: Read/Readln(<tên-biến_1>, ,<tên_biến_k>);
c Các bớc tiến hành:
1 Nêu vấn đề: Việc giải quyết bài toán
trong tin học là quá trình:
Đa dữ liệu vào Xử lý Đa dữ liệu ra
Vậy làm cách nào để đa dữ liệu vào máy
trong ngôn ngữ lập trình Pascal?
- Yêu cầu HS nghiên cứu SGK và cho biết
cấu trúc chung của thủ tục nhập dữ liệu
- Hỏi: Khi nhập giá trị cho nhiều biến, ta
phải thực hiện nh thế nào?
- Yêu cầu HS thực hiện nhập dữ liệu cho
- Những giá trị này phải đợc gõ cách nhau
ít nhất một dấu cách hoặc kí tự xuốngdòng
- Lên bảng thực hiện nhập theo yêu cầucủa GV
Trang 222 Hoạt động 2: Tìm hiểu thủ tục đa dữ liệu ra màn hình
a Mục tiêu:
- Giúp HS thấy đợc sự cần thiết của thủ tục đa dữ liệu ra màn hình
- Biết đợc cấu trúc chung của thủ tục đa dữ liệu ra màn hình
b Nội dung:
- Dùng để đa kết quả sau khi xử lí ra màn hình để ngời sử dụng thấy
- Xuất: Write/ Writeln(<tham_số_1>, <tham_số_k>);
c Các bớc tiến hành:
1.Nêu vấn đề: Sau khi xử lí xong, kết quả
tìm đợc đang đợc lu trong bộ nhớ Để thấy
đợc kết quả trên màn hình ta xử dụng thủ
tục xuất dữ liệu
- Yêu cầu HS nghiên cứu SGK cho biết cấu
trúc chung của thủ tục xuất dữ liệu trong
ngôn ngữ Pascal:
- Nêu ví dụ: Khi viết chơng trình giải
ph-ơng trình ax+b=0, ta đa ra màn hình giá trị
của nghiệm –b/a, ta viết lệnh nh thế nào?
2 Chiếu một chơng trình Pascal đơn giản
- Hỏi: Chức năng của lệnh Writeln();
- Hỏi: ý nghĩa của : 6 trong lệnh Write( )
- Hỏi: Khi các tham số trong lệnh Write()
thuộc kiểu Char hoặc real thì quy định vị
trí nh thế nào?
1 Chú ý lắng nghe dẫn dắt của giáo viên
- Nghiên cứu SGK và trả lời
Write(<tên_biến_1>, <tên_biến_k>);Writeln(<tên_biến_1>, <tên_biến_k>);
- Viết lệnh:
Write(-b/a); hoặc Writeln(-b/a);
2 Quan sát chơng trình ví dụ của giáoviên
- 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 và 6 vị trí tiếp để viết
số z
- Khi các tham số có kiểu kí tự, việc quy
định vị trí giống kiểu nguyên
- Khi các tham số có kiểu thực thì phải quy
định hai loại vị trí: vị trí cho toàn bộ sốthực và vị trí cho phần thập phân
- Ví dụ: Write(c:8);
Write(r:8:3);
3 Hoạt động 3: Làm quen với Turbo Pascal 7.0
Trang 23a Mục tiêu:
- Biết đợc các file chơng trình cơ bản của Turbo Pascal 7.0 Biết cách khởi động
và thoát Turbo Pascal 7.0
b Nội dung:
- Chuyển vào th mục chứa file Turbo.exe
- Gõ turbo.exe và enter
(nếu ở môi trờng Win thì chỉ cần bấm biểu tợng Turbo Pascal )
c Các bớc tiến hành
1 Đặt vấn đề: Để sử dụng đợc Turbo
Pascal, trên máy phải có các file chơng
trình cần thiết Tham khảo SGK và cho
biết tên các file chơng trình đó?
2 Trình diễn cách khởi động Turbo Pascal
thông qua máy chiếu Projector
- Giới thiệu màn hình soạn thảo chơng
trình: Bảng chọn, con trỏ, vùng soạn thảo
1 Tham khảo SGK và trả lời
Turbo.exe Turbo.tpl Graph.tpu egavga.bgi và các file *.chr
- Gõ các lệnh của chơng trình (giống nh trong hệ soạn thảo văn bản)
- Lu file chơng trình lên đĩa bấm F2
- Biên dịch lỗi cú pháp: bấm ALT_F9
c Các bớc tiến hành
1 Soạn một chơng trình làm ví dụ, lu
ch-ơng trình, dịch lỗi
- Dùng máy chiếu vật thể để minh hoạ
thao tác lu file chơng trình và biên dịch
2 Soạn một chơng trình, hỏi các lỗi cú
pháp trong chơng trình, gọi HS dịch lỗi và
Begin Write(‘Nhap mot so nguyen duong’); readln(x);
Trang 24- Nhập dữ liệu: Read/ Readln(<tên_biến_1>, ,<tên_biến_k>);
- Xuất dữ liệu: write/writeln(<tham_số_1>, ,<tham_số_k>);
- Khởi động Turbo Soạn chơng trình Dịch lỗi cú pháp Thực hiện chơng trình.Tìm lỗi thuật toán và hiệu chỉnh
2 Câu hỏi và bài tập về nhà
- Bằng thực hành trên máy:
+ Hãy so sánh sự giống và khác nhau giữa Write(); và writeln();
+ Hãy so sánh sự giống và khác nhau giữa Read(); và Readln();
+ Tìm hiểu chức năng của lệnh Readln; Writeln;
- Viết chơng trình nhập vào một số và tính bình phơng của số đó
- Viết chơng trình nhập độ dài bán kính và tính chu vi diện tích của hình tròn tơng ứng
- Biết đợc một chơng trình Pascal hoàn chỉnh
- Làm quen với các dịch vụ chủ yếu của Turbo Pascal trong việc soạn thảo, lu
ch-ơng trình, dịch chch-ơng trình và thực hiện chch-ơng trình
2 Kĩ năng
- Soạn đợc chơng trình, lu trê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
Trang 25- Bớc đầu biết phân tích và hoàn thành một chơng trình đơn giản trên TurboPascal.
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 Chuẩn bị của giáo viên
- Phòng máy vi tính đã đợc cài đầy đủ Turbo Pascal, máy chiếu Projector để hớngdẫn
2 Chuẩn bị của học sinh
- SGK, sách bài tập và bài tập đã viết ở nhà
III Hoạt động dạy – học
1 Hoạt động 1: Tìm hiểu một chơng trình hoàn chỉnh
a Mục tiêu:
- HS biết đợc một chơng trình hoàn chỉnh
- Biết soạn một chơng trình
- Biết lu, biên dịch, thực hiện chơng trình
- Biết tìm lỗi và sửa lỗi
1 Chiếu chơng trình lên bảng Yêu cầu
học sinh thực hiện các nhiệm vụ:
- Soạn chơng trình vào máy
F2Alt_F9Ctrl_F9x1=1.00 x2=2.00Enter
Trang 26- Thực hiện chơng trình
- Nhập dữ liệu 1 0 2 Thông báo kết quả
- Hỏi: Vì sao có lỗi xuất hiện?
- Sửa lại chơng trình không dùng biến d
Ctrl_F9Thông báo lỗi
Do căn bậc hai rcủa một số âmReadln(a,b,c);
s:=s1-s2;
2 Thực hiện các yêu cầu của giáo viên
- Soạn chơng trình
- Bấm phím F2, gõ tên file để lu
- Bấm phím ALT_F9 để dịch lỗi cú pháp -Bấm phím CTRL_F9 để thực hiện chơngtrình
- Thông báo kết quả cho giáo viên
3 Nhập dữ liệu theo yêu cầu
- Với a=3, ta đợc:s=9(Pi-2)=10.26
- Với a=-3, kết quả không đúng, vì độ dàicạnh phải là một số dơng
IV Đánh giá cuối bài
1 Những 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, dữ liệu ra
Trang 27- Hiểu rõ về các kiểu dữ liệu.
- Cách khai báo biến, hằng nh thế nào là đúng
b Kỹ năng:
- Cách đặt tên
- Cách khai báo
c Chuẩn bị của giáo viên:
- Các bài tập đánh máy phát cho các nhóm (bàn)
- Sách giáo khoa
II.Các hoạt động:
1.Phát các bài tập
2.Chữa bài tập
III Nội dung bài tập.
1 Hãy tự viết ra ba tên đúng theo quy tắc của ngôn ngữ Pascal
2 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 trongngôn ngữ Pascal và chỉ rõ lỗi trong từng trờng hợp:
a) 150.0 b) -22 c) 6,22 d) ‘43’
e) A20 f) 1.06E -15 g) 4+6 h) ‘C
i) ‘TRUE’
3.Trong Pascal, nếu một biến chỉ nhận giá trị nguyên trong phạm vi từ 10 đến
25532 thì biến đó có thể khai báo bằng các kiểu dữ liệu nào là hợp lí? Tại sao?
4 Biến P có thể nhận các giá trị 5; 10; 15; 20; 25; 30; 40; 60; 90; và biến X có thểnhận các giá trị 0.1; 0.2; 0.3; 0.4; 0.5 Khai báo nào trong các khai báo sau là đúng? a) var X,P: Byte ; b) var P,X: real;
c) var P: real ; d) var X: real;
X: byte; P: Byte;
5 Để tính diện tích S của hình vuông có cạnh a với giá trị nguyên nằm trong phạm
vi từ 100 đến 200, cách khai báo nào dới đây là đúng và tốn bộ nhớ nhất
a) Var s : integer; b) Var s : real ; c) Var s : word;
d) Var s : longint ; e) Var s : boolean;