HS: Học sinh đọc sách và trả lời: Tên do người lập trình đặt Chú thích GV: Khi viết chương trình, có những đoạn chương trình khó hiểu, để chương trình rõ ràng, người đọc có thể dễ dàng
Trang 1Tuần: 01 – Tiết 01 Ngày dạy:…./…./……
• Biết và phân biệt được có 3 lớp ngôn ngữ lập trình là 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 một trong những nhiệm vụ quan trọng của chương trình dịch là phát hiện lỗi cú pháp của chương trình nguồn
1 Giáo viên: Sách giáo viên
2 Học sinh: xem trước bài ở nhà.
III Phương Pháp : Thuyết trình, vấn đáp.
IV Tiến Trình Dạy Học:
1 Ổn định lớp : Kiểm diện và ổn định lớp.
2 Kiểm tra bài cũ : thông qua
3 Giảng bài mới:
Hoạt động của thầy, trò Nội dung
Khái niệm lập trình
GV: phát vấn học sinh : “Em hãy nêu các bước
giải bài toán trên máy vi tính?”.
HS: Suy nghĩ và trả lời câu hỏi.
GV:Phân tích câu trả lời và nhắc lại các bước giải
một bài toán trên máy vi tính
GV: Làm sao để máy tính có thể hiểu và thực
hiện các thuật toán đã lựa chọn để giái bài toán?
HS: Suy nghĩ và trả lời
GV: Giới thiệu các em khái niệm lập trình.
HS: Lắng nghe ghi chép.
Lưu ý: giải thích thêm
Ý nghĩa của lập trình là để tạo ra các chương trình
giải được các bài toán trên máy tính Về cấu trúc
dữ liệu, cần lựa chọn sao cho ít tốn kém bộ nhớ
GV: Chuyển mạch: “Vậy thì có bao nhiêu lớp
ngôn ngữ lập trình?” Giới thiệu cho học sinh
biết có 3 lớp ngôn ngữ lập trình
HS: Quan sát, ghi chép.
GV: Chuyển mạch: “Sau đây chúng ta sẽ tìm
hiểu khái niệm về mỗi lớp ngôn ngữ lập trình”
Giáo viên nhắc lại :
Có 5 bước:
• Bước 1: Xác định bài toán
• Bước 2: Lựa chọn hoặc thiết kế thuật toán
• Bước 3: Viết Chương Trình
• Bước 4: Hiệu Chỉnh
• Bước 5: Viết tài liệu
I Khái niệm lập trình:
Lập Trình là sử dụng một cấu trúc dữ liệu và các câu 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 bài toán
• Chương trình viết bằng ngôn ngữ máy có
BÀI 1: KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
Trang 2Trình bày cho học sinh xem.
HS: Quan sát, ghi chép, lắng nghe.
GV: Lưu ý học sinh: “Chương trình viết bằng
ngôn ngữ máy có thể nạp trực tiếp vào bộ nhớ và
thực hiện ngay ” Trình bày và giới thiệu cho học
sinh biết về hợp ngữ
HS: Quan sát, ghi chép, lắng nghe.
GV: Giới thiệu với các em về ngôn ngữ bậc cao.
HS: Lắng nghe, ghi chép, quan sát.
Khái niệm chương trình dịch
GV: “Để thực hiện trên máy tính, chương trình
cần được dịch sang ngôn ngữ máy”.
HS: Lắng nghe, ghi chép.
GV: giới thiệu khái niệm và cơ chế hoạt động của
chương trình dịch
HS: Quan sát, lắng nghe, ghi chép.
GV: Chuyển mạch: “Vậy có mấy loại chương
trình dịch” và tiến hành cho học sinh xét ví dụ
• Cách 2: Có 2 tài liệu tiếng Việt và tiếng
Anh có thể lưu trữ dùng lại về sau”
HS: Lắng nghe, ghi chép.
GV: Chuyển mạch: “Cũng tương tự như vậy ta
có 2 loại chương trình dịch là : thông dịch và
biên dịch” Trình chiếu và giới thiệu cho học sinh
về thông dịch (interpreter)
HS: Quan sát, ghi chép, suy nghĩ
GV: Chú ý cho học sinh: “Thông dịch thích hợp
trong đối thoại giữa người và hệ thống Tuy
nhiên một câu lệnh nào đó được lập lại bao nhiêu
lần thì nó sẽ được dịch bấy nhiêu lần” Nêu ví dụ
cho học sinh
HS: Lắng nghe, ghi chép.
GV:giới thiệu cho học sinh biết về biên
dịch(compiler).
HS: Quan sát, ghi chép, suy nghĩ.
GV: Nêu ví dụ cho học sinh và nhận xét: “Trong
thể nạp trực tiếp vào bộ nhớ và thực hiện ngay
• Là ngôn ngữ duy nhất máy tính có thể trực tiếp hiểu và thực hiện
• Mỗi loại máy tính có một ngôn ngữ riêng của mình
2 Hợp ngữ:
• Phát triển từ ngôn ngữ máy
• Ít phụ thuộc vào máy và dễ viết chương trình hơn ngôn ngữ máy Rất gần với ngôn ngữ máy
3 Ngôn ngữ bậc cao:
• Khá gần với ngôn ngữ tự nhiên
• Không phụ thuộc vào loại máy Có thể thực hiện trên nhiều loại máy tính khác nhau
II Chương trình dịch:
Chương trình chuyển đổi từ ngôn ngữ bậc cao sang
ngôn ngữ máy gọi là Chương Trình Dịch
Hoạt động:
Xét ví dụ:
Bạn chỉ biết tiếng Việt và người phiên dịch giúp
bạn dịch sang tiếng Anh Để giới thiệu về trường cho đoàn khách nước Mỹ,chỉ biết tiếng Anh
Bạn có 2 cách thực hiện:
o Cách 1: Cứ sau mỗi câu hoặc một vài câu giới
thiệu trọn vẹn một ý của bạn, người phiên dịch sẽ dịch sang tiếng Anh cho đoàn khách Cách dịch trực
tiếp như vậy được gọi là thông dịch.
o Cách 2: Bạn soạn nội dung giới thiệu ra giấy,
người phiên dịch dịch toàn bộ nội dung đó sang tiếng Anh rồi đọc hoặc trao cho đoàn khách Cách
làm như vậy gọi là biên dịch.
1 Thông dịch được thực hiện bằng cách lặp lại các bước sau:
• Kiểm tra tính đúng đắn của câu lệnh
kế tiếp trong chương trình nguồn;
• Chuyển đổi câu lệnh đó thành 1 hay nhiều câu lệnh tương ứng trong ngôn ngữ máy;
• Thực hiện câu lệnh vừa chuyển đổi
Ví dụ: Thực hiện các câu lệnh trong môi trường DOS là
thông dịch
Chương trình dịchChương trình nguồn
Chương trình đích
Trang 3chương trình thông dịch, không có chương trình
đích để lưu trữ Trong biên dịch cả chương trình
nguồn và đích đều có thể lưu trữ”
HS: Suy nghĩ, ghi chép.
2 Biên dịch gồm 2 bước:
• Duyệt, phát hiện lỗi, kiểm tra tính dúng đắn của câu lệnh trong chương trình nguồn
• Dịch toàn bộ chương trình nguồn thành chương trình đích và có thể lưu trữ để sử dụng khi cần thiết
Ví dụ: Ngôn ngữ lập trình Turbo Pascal sử dụng trình
biên dịch
4 Củng cố và luyện tập :
Có 3 lớp ngôn ngữ lập trình: ngôn ngữ máy, hợp ngữ, ngôn ngữ bậc cao
Nhắc lại khái niệm biên dịch và thông dịch
Lưu ý: Chương trình dịch chỉ có thể phát hiện lỗi cú pháp, không thể phát hiện lỗi ngữ nghĩa Chỉ phát hiện lỗi ngữ nghĩa khi có số liệu cụ thể
5 Hướng dẫn học sinh tự học ở nhà :
Chuẩn bị bài 2: CÁC THÀNH PHẦN CƠ BẢN CỦA NGÔN NGỮ LẬP TRÌNH
Trả lời câu hỏi 1, 2, 3 trong sách giáo khoa trang 13
V Rút kinh nghiệm:
Trang 4
• Biết ngôn ngữ lập trình có 3 thành phần cơ bản là: Bảng chữ cái, cú pháp, và ngữ nghĩa.
• Biết được tên chuẩn với tên dành riêng và tên tự đặt
• 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
2 Kỹ năng :
Phân biệt được tên, hằng và biến
Biết đặt tên đúng và nhận biết được tên sai qui định
3 Thái độ:
Chăm chú lắng nghe và nắm vững vấn đề
II Chuẩn bị :
1 Giáo viên: Sách giáo viên
2 Học sinh: xem trước bài ở nhà.
III Phương Pháp : Thuyết trình, vấn đáp.
IV Tiến Trình Dạy Học:
1 Ổn định lớp : Kiểm diện và ổn định lớp.
2 Kiểm tra bài cũ :
Câu hỏi: Biên dịch và thông dịch khác nhau như thế nào?(5đ)
∗ Thông dịch: không có chương trình đích để lưu trữ Lần lượt dịch từng câu lệnh.Một câu lệnh nào đó phải thực hiện bao nhiêu lần thì nó phải được dịch bấy nhiêu lần
∗ Biên dịch: Trong biên dịch cả chương trình nguồn và đích đều có thể lưu trữ Dịch toàn
bộ chương trình nguồn thành chương trình đích
Câu hỏi: Ngôn ngữ LT có bao nhiêu thành phần cơ bản?kể ra?Cú pháp là gì? Ngữ nghĩa là gì?(5đ)
∗ Ngôn ngữ lập trình có 3 thành phần cơ bản: Bảng chữ cái, cú pháp, và ngữ nghĩa
∗ Cú pháp: Là bộ quy tắc dùng để viết chương trình.Giúp người lập trình và chương trình dịch có thể hiểu được tổ hợp kí tự nào là hợp lệ và không hợp lệ Giúp mô tả chính xác thuật toán
∗ Ngữ nghĩa: Xác định ý nghĩa thao tác cần thực hiện, ứng với tổ hợp kí tự dựa vào ngữ cảnh của nó
3 Giảng bài mới:
Hoạt động của thầy, trò Nội dung
Các thành phần cơ bản của ngôn ngữ lập trình
GV: giới thiệu cho học sinh về 3 thành phần cơ bản
của mỗi ngôn ngữ lập trình
HS: Quan sát, ghi chép.
GV: dẫn dắt HS: Trong tiếng việt của chúng ta có sử
dụng bảng chữ cái không? “ta sử dụng các ký tự
Trang 5trong bảng chũ cái tiếng việt để ghép thành từ, thành
câu, thành văn bản Tương tự trong ngôn ngữ lập
trình cũng có bảng chữ cái
GV: Giới thiệu khái niệm bảng chữ cái và tập hợp
các kí tự hợp lệ
HS: Chú ý quan sát, ghi chép.
GV: Chú ý thêm cho học sinh: “Bảng chữ cái của
các ngôn ngữ lập trình khác nhau có sự khác nhau
không nhiều” và nêu ví dụ cho học sinh.
HS: Ghi chép, lắng nghe.
GV: giới thiệu cho học sinh biết cú pháp là gì? Và
nêu tác dụng của cú pháp
GV: Lưu ý thêm cho học sinh: “Cú pháp cũng có sự
khác nhau giữa các ngôn ngữ lập trình” và nêu ví dụ
GV: Đưa ví dụ minh họa: Từ “Chạy” trong 2 câu sau
mang nghĩa khac nhau
Bình và Hưng thi chạy
Nhân dân ĐBSCL chạy lũ.
Tổ hợp ký tự trong ngữ cảnh khác nhau mang
nghĩa khác nhau
HS: Quan sát, suy nghĩ, ghi chép.
GV: Lưu ý HS, lỗi cú pháp dễ phát hiện, lỗi về ngữ
nghĩa khó phát hiện Chỉ khi đưa vào số liệu cụ thể
Tên: tên dành riêng, tên chuẩn, tên do người lập
trình đặt
GV: Đặt câu hỏi: Trong đời sống thực, tên là gì? Tại
sao phải đặt tên?
HS: Trong cuộc sống hằng ngày ta phân biệt giữa
người này với người kia qua tên
Nêu ý nghĩa của việc đặt tên trong lập trình
GV: Trong ngôn ngữ lập trình cũng vậy, để phân biệt
các đối tượng trong chương trình thì phải đặt tên cho
các đối tượng đó
1 Bảng chữ cái
Bảng chữ cái là tập các kí tự dùng để viết chương trình Không được dùng bất kì kí tự nào ngoài các kí tự quy định trong bảng chữ cái
Ví dụ: Bảng chữ cái của ngôn ngữ C++ so với Pascal
• Giúp mô tả chính xác thuật toán
Ví dụ: Pascal dùng cặp từ Begin…End để gộp nhiều
A+B (2) A,B là các số nguyên
Dấu + trong (1) là cộng 2 số thực, trong (2) là cộng 2
Trang 6GV: Quy tắc đặt tên được tuân theo từng ngôn ngữ
lập trình và chương trình dịch cụ thể
GV: Cho học sinh làm một số ví dụ để phân biệt
được tên đúng, tên sai
HS: Học sinh tìm tên đúng trong Pascal
GV: Trong Pascal, người ta đặt tên các đối tượng theo
3 nhóm: tên dành riêng, tên chuẩn, tên do người lập
trình đặt
GV: Yêu cầu học sinh đọc sách và phát biểu khái
niệm về 3 nhóm tên
HS: Học sinh phát biểu khái niệm về tên dành riêng,
tên chuẩn, tên do người lập trình đặt
GV: bổ sung khái niệm về các loại tên và giải nghĩa
thêm chức năng của vài loại tên thông dụng:
PROGRAM, begin, end, uses, const,
GV: hãy chỉ ra các tên sai trong các đặt tên sau đây:
A, R23, _65, A GH, P34_c, 8Jh, F#j, GJ, F@j ?
Trả lời: Tên sai là: A GH, 8Jh, F#j, F@j
Hằng và biến
GV: Trong ngôn ngữ Pascal, khi cần lưu trữ những
đại lượng có giá trị thay đổi hay không đổi người ta
sẽ dùng đại lượng hằng và biến
Vậy hằng hay biến là gì? Chức năng của chúng ra
sao? Phần cuối cùng ta sẽ đi tìm hiểu khái niệm hằng
và biến
HS: Học sinh lắng nghe
GV: Các em hãy đọc sách và cho biết thế nào là hằng
,có mấy loại hằng và thế nào là biến ?
HS: Học sinh đọc sách và trả lời câu hỏi của giáo
viên
GV: Các em hãy nhìn lên bảng ví dụ sau và cho biết
đâu là hằng xâu, hằng chuỗi, hằng logic
24,74,12.3
‘NhaTrang’, ‘tour’
False, True.
_Timx #abc ?thoikhoabieu 6Pq
*tcTzvU PROGRAM integer type AbsPascal phân biệt 3 loại tên:
Ví dụ: Program, uses, conts, type, var, begin, end….
b Tên chuẩn: Là những tên được ngôn ngữ lập
trình qui định dùng với ý nghĩa nhất định nào đó, người lập trình có thể khai báo và dùng chúng ý nghĩa và mục đích khác
Ví dụ: Abs, sqr, sqrt, integer, real…
c Tên do người lập trình đặt: Là tên được
dùng theo ý nghĩa riêng, xác dịnhh, 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ên dành riêng, tên gọi nên đặt liên quan đến chương trình, gợi nhớ
Ví dụ: 24, 74,12.3
Hằng xâu: Là chuỗi kí tự trong bộ mã ASCII, được đặt trong cặp dấu nháy
Ví dụ: ‘ Day la hang xau ‘, ‘tour’.
Hằng logic: Là giá trị Đúng (true) hoặc Sai ( false)
Ví dụ: False, True.
b Biến:
Là đại lượng được đặt tên, dùng để lưu trữ giá trị
và giá trị có thể được thay đổi trong quá trình thực hiện chương trình
Trang 7GV: Yêu cầu hs đọc sách và nêu khái niệm Biến là
gì?
HS: Đọc sách, trả lời câu hỏi, và ghi chép.
GV: Các em hãy cho biết tên biến và tên hằng là tên
chuẩn hay tên dành riêng hay tên do người lập trình
đặt
HS: Học sinh đọc sách và trả lời:
Tên do người lập trình đặt
Chú thích
GV: Khi viết chương trình, có những đoạn chương
trình khó hiểu, để chương trình rõ ràng, người đọc có
thể dễ dàng hiểu được phần mã mà người lập trình
viết, ngôn ngữ Pascal đưa ra khái niệm chú thích.Các
em hãy tìm xem để chú thích trong Pascal, người ta
phải làm sao?
Học sinh trả lời câu hỏi
GV: Sau khi viết được một chương trình thì người
lập trình phải tiến hành “chạy thử” để kiểm tra xem
phần mã mình viết có đúng như ý tưởng ban đầu khi
thiết kế không, vậy em nào cho biết, các lệnh được
viết trong cặp dấu {} hay (* *) có được chương trình
biên dịch không?
HS: Dấu chú thích sẽ được bỏ qua khi Pascal biên
dịch chương trình
Các biến dùng trong chương trình đều phải được khai báo
Ví dụ: Tong, Tam, x, y,
3 Chú thích Chú thích giúp cho người đọc và người lập trình nhận biết ý nghĩa của chương trình đó dễ hơn Trong Pascal, chú thích được đặt giữa cặp dấu {} hay (* *) Ví dụ: Var x,y: integer ; (* khai báo biến x, y thuộc kiểu số nguyên *) Const Min = 10; { Khai báo hằng } 4 Củng cố và luyện tập : Thế nào là tên dành riêng, tên chuẩn, tên do người lập trình đặt? Hằng và biến khác nhau như thế nào? Cách để ghi chú thích trong Pascal? 5 Hướng dẫn học sinh tự học ở nhà : Học bài cũ Trả lời câu hỏi 4, 5, 6 sách giáo khoa trang 13 Chuẩn bị bài tập cuối chương I trong sách bài tập V Rút kinh nghiệm:
Trang 8
Tuần: - Tiết PPCT: Ngày dạy: / /
Tên bài dạy:
I MỤC TIÊU:
1 Về kiến thức:
Học sinh sau tiết học sẽ:
Củng cố lại các kiến thức vừa học
Phân biệt được tên chuẩn với tên dành riêng và tên tự đặt
Phân biệt được tên, hằng và biến
Biết đặt tên đúng và nhận biết được tên sai qui định
2 Kiểm tra bài cũ:
Câu hỏi: Tên trong ngôn ngữ pascal được đặt theo quy tắc nào?Cho ví dụ một vài tên đúng? Hãy cho biết
điểm khác nhau giữa tên dành riêng và tên chuẩn.Tên do người lập trình đặt?(5đ)
Trong Turbo Pascal, tên là một dãy liên tiếp không quá 127 kí tự Gồm chữ cái, chữ số hoặc dấu gạch dưới
và bắt đầu bằng chữ cái hoặc dấu gạch dưới Pascal không phân biệt chữ hoa chữ thường
Vd: lop_11A, _123Tin,…
Tên dành riêng: Người lập trình không được sử dụng với ý nghĩa khác
Tên chuẩn: Người lập trình có thể khai báo và sử dụng với ý nghĩa và mục đích khác
Tên do người lập trình đặt: được dùng với ý nghĩa riêng, xác định bằng cách khai báo trước khi sử dụng Tên này không được trùng với tên dành riêng
Câu hỏi: Hằng là gì? Có những loại hằng nào ? kể ra? cho ví dụ về từng loại hằng ? Biến là gì ?(5đ)
Hằng là đại lương có giá trị không thay đổi trong quá trình thực hiện chương trình Thường có :
Hằng số học: là các số nguyên hay số thực
Hằng logic là giá trị đúng (TRUE) hoặc sai (FALSE)
Hằng xâu là chuỗi kí tự trong bộ mã ASCII, được đặt trong cặp dấu nháy (Pascal : nháy đơn, C++ : nháy kép)
Vd : -3, 4.2, -2.7, TRUE, FALSE, ‘lop_11CB4’
Bài: BÀI TẬP
Trang 9Biến là đạ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 Biến phải được khai báo trước khi sử dụng.
3 Giảng bài mới:
GV: Vừa rồi chúng ta đã học bài
GV: Yêu cầu một hs đọc câu hỏi
và yêu cầu một hs khác trả lời
GV: Đưa ra bài tập cho hs.
HS: lắng nghe và thực hiện yêu
GV: Tiếp tục đưa ra những câu
hỏi cho hs Hướng dẫn hs làm
các bài tập tiếp theo
HS: Nghiêm túc lắng nghe, ghi
chép và tích cực phát biểu xây
dựng bài
1/13 SGK Tại sao người ta phải xây dựng ngôn ngữ lập trình bậc cao?
Lập trình bằng ngôn ngữ bậc cao dễ viết hơn vì các lệnh được mã hoá gần với ngôn ngữ tự nhiên Chương trình viết bằng ngôn ngữ lập trình bậc cao nói chung không phụ thuộc vào loại máy, nghĩa là 1 chương trình có thể thực hiện trên nhiều loại máy tính khác nhau
2/13 SGK Chương trình dịch là gì? Tại sao cần phải có chương trình
dịch?
Chương trình dịch là 1 chương trình có chức năng chuyển đổi các ngôn ngữ khác sang ngôn ngữ máy Cần phải có chương trình dịch để chuyển chương trình được viết bằng các ngôn ngữ khác thành ngôn ngữ máy thì máy tính mới có thể hiểu và thực hiện được
3/13 SGK Biên dịch và thông dịch khác nhau như thế nào?
Trong thông dịch không có chương trình đích để lưu trữ Trong biên dịch cả chương trình nguồn và chương trình đích có thể lưu trữ lại để sử dụng về sau
4/13 SGK Điểm khác nhau giữa tên dành riêng và tên chuẩn.
Tên dành riêng được dùng với ý nghĩa xác định, không được dùng với
ý nghĩa khác Tên chuẩn được dùng với ý nghĩa nhất định, có thể khai báo
và dùng với ý nghĩa khác
5/13 SGK Viết ra 3 tên đúng theo quy tắc của Pascal.
Giai_PT; Baitap1nangcao; _1chuongtrinh;
6/13 SGK Cho biết những biểu diễn không phải là biểu diễn hằng trong
Pascal
Những biểu diễn không phải là biểu diễn hằng trong Pascal:
c) dấu phẩy thay bằng dấu chấme) là tên chưa rõ giá trị
g) là biểu thức hằng trong Pascalh) sai quy định về hằng xâu: thiếu dấu nháy đơn ở cuối
1.3/6 SBT Trong chế độ biên dịch, một chương trình đã được dịch thông
suốt, hệ thống không báo lỗi Có thể khẳng định rằng ta đã có một chương trình đúng hay chưa? Tại sao?
Không thể khẳng định vì chương trình có thể vẫn còn chứa lỗi ngữ nghĩa
1.5/6 SBT Sau khi chương trình đã được dịch thông suốt, không còn lỗi
cú pháp, có cần tiếp tục hiệu chỉnh, tức là tìm và sửa lỗi trong chương trình nguồn nữa hay không?
Có Cần kiểm tra ngữ nghĩa
1.9/7 SBT Hãy chọn những biểu diễn hằng trong những biểu diễn dưới
đây
A) Begin B) ‘65c’ C) 1024D) -46 E) 5.A8 F) 12.4E-5
B, C, D, F
Trang 10GV: yêu cầu hs giải thích lý do
tại sao không chọn những
phương án khác giúp hs hiểu rõ
bài hơn
GV: Tiếp tục hướng dẫn học
sinh làm các bài tập còn lại cho
đến hết Trong quá trình giải bài
tập, nên nhắc lại các kiến thức đã
học giúp học sinh nắm vững kiến
thức
1.10/7 SBT Hãy chọn những biểu diễn tên trong những biểu diễn dưới
đây
C, E
1.11/7 SBT Trong những biểu diễn dưới đây, biểu diễn nào là từ khóa
trong Pascal ?
A, F
1.15/7 SBT Trong dòng thông tin chú thích có thể chứa kí tự ngoài bảng
chữ cái của ngôn ngữ hay không và tại sao ?
Có thể vì chương trình dịch bỏ qua chú thích khi dịch chương trình
Câu 1 : Các chú thích nào dưới đây là đúng ?
A) (*Day la mot chuong trinh Pascal*) B) /* Day la mot chuong trinh Pascal*/
C) { Day la mot chuong trinh Pascal}
D) A & C đều đúng
4 Củng cố bài học:
Nhắc lại các kiến thức quan trọng cần nắm
5 Hướng dẫn học sinh chuẩn bị bài ở nhà:
Chuẩn bị bài 3: CẤU TRÚC CHƯƠNG TRÌNH
II RÚT KINH NGHIỆM:
Trang 11
Tuần: - Tiết PPCT: Ngày dạy: / /
Chương II
CHƯƠNG TRÌNH ĐƠN GIẢN
Tên bài dạy
I MỤC TIÊU:
1 Về kiến thức:
Học sinh sau tiết học sẽ:
Biết được cấu trúc chung và các thành phần của một chương trình viết trên ngôn ngữ lập trình bậc cao
Biết ý nghĩa và cách khai báo: Tên chương trình, thư viện và hằng
Nhận biết được các thành phần của một chương trình đơn giản
2 Về kỹ năng:
HS biết cách khai báo tên chương trình, khai báo thư viện, khai báo các loại hằng trong Pascal
Làm quen và biết cách viết một vài chương trình đơn giản trong Pascal
Phương pháp thuyết trình, hỏi đáp, đặt vấn đề, so sánh
IV TIẾN TRÌNH DẠY HỌC:
1 Ổn định tổ chức: kiểm diện
2 Kiểm tra bài cũ:
3 Giảng bài mới:
Hoạt động của thầy, trò Nội dung
Hoạt động 1: Giúp HS có cái nhìn tổng quan về cấu
trúc chung của chương trình viết bằng ngôn ngữ lập
trình bậc cao
− GV đưa ra 1 số VD về các cấu trúc mà HS đã
được biết trong thực tế: cấu trúc bài văn, cấu trúc
máy tính
− GV đặt câu hỏi: “Một chương trình viết bằng
ngôn ngữ bậc cao có cấu trúc như thế nào?”
− Từ các VD, GV phân tích và đưa ra cấu trúc
Trang 12− GV giải thích thêm cho HS về qui định khi
viết các thành phần trong chương trình
Hoạt động 2: Tìm hiểu chi tiết về từng thành phần
trong chương trình và cách khai báo tên chương
trình, khai báo thư viện, khai báo hằng
− GV phân tích ý nghĩa của thành phần khai
báo tên chương trình và giới thiệu cách khai báo tên
chương trình trong Pascal
− GV đưa ra 1 số VD khai báo tên chương
trình trong Pascal, yêu cầu HS nhận xét đúng hay
sai
− GV phân tích khái niệm thư viện chương
trình trong ngôn ngữ lập trình
− GV đưa vd cho HS thấy cách khai báo thư
viện của Pascal và C/C++
− GV yêu cầu HS trình bày lại khái niệm hằng
và phân biệt các loại hằng trong NNLT
− GV giải thích ý nghĩa của việc khai báo hằng
− GV đưa vd cho HS thấy cách khai báo hằng
và phân biệt sự khác nhau giữa khai báo hằng trong
Pascal và trong C/C++
− GV yêu cầu HS trình bày lại khái niệm biến
và phân biệt các loại biến trong NNLT
− GV giới thiệu và phân tích cho HS hiểu ý
nghĩa của việc khai báo biến trong chương trình
− GV có thể giải thích thêm, khai báo biến là
xin máy tính cấp cho chương trình 1 vùng nhớ để
lưu trữ và xử lý thông tin trong bộ nhớ trong
− GV đưa ra VD, yêu cầu HS xác định tên và
đặc điểm các biến trong chương trình
− GV dẫn dắt vấn đề “mỗi NNLT có cách tổ
chức chương trình khác nhau” rồi giải thích ý nghĩa
của thân chương trình
− GV yêu cầu HS xem vd SGK để hiểu về các
dấu hiệu xác định phạm vi thân chương trình
− GV giới thiệu thêm về dấu hiệu bắt đầu và
kết thúc thân chương trình của ngôn ngữ C/C++ là
cặp dấu ngoặc { và }
Hoạt động 3: Giới thiệu cách viết một chương trình
đơn giản, bước đầu làm quen với việc viết chương
trình trên ngôn ngữ Pascal
− GV yêu cầu HS xem vd1 SGK rồi nhận xét
về cách viết của 2 chương trình trong 2 ngôn ngữ
khác nhau và xác định từng thành phần của chương
trình
− GV nhận xét và phân tích để HS nhận ra: 2
chương trình cùng thực hiện 1 công việc nhưng viết
bằng 2 ngôn ngữ khác nhau nên hệ thống câu lệnh
II Các thành phần của chương trình:
Trong Turbo Pascal:
Program <tên chương trình>;
Tên chương trình do người lập trình tự đặt theo đúng quy tắc đặt tên
VD1: Program Giai_PTB2;
VD2: Program Baitoan;
b) Khai báo thư viện
Thư viện chương trình trong ngôn ngữ lập trình: cung cấp 1 số chương trình thông dụng
đã được lập sẵn
Trong ngôn ngữ Pascal:
Uses <Tên thư viện>;
Trong ngôn ngữ C/C++:
# include <Tên tệp thư viện>
Vd: Trong Pascal: Uses crt;
Trong C++: #include <studio.h>
#include <conio.h>
c) Khai báo hằng
Những hằng sử dụng nhiều lần trong chương trình thường được đặt tên cho tiện sử dụngVd:
Trong Pascal: const MaxN = 1000;
PI = 3.1416;
KQ = ‘Ket qua:’;
Trong C++: const int MaxN = 1000;
const float PI = 3.1416;
const char* KQ = ‘Ket qua:’;
d) Khai báo biến
Mọi biến sử dụng trong chương trình đều phải khai báo cho chương trình dịch biết để xử lý
2 Phần thân chương trình
− Thân chương trình thường là nơi chứa toàn
bộ các câu lệnh của chương trình hoặc lời gọi chương trình con
Trang 13trong chương trình cũng khác nhau
− GV yêu cầu HS xem tiếp vd2 và giải thích
cách đưa câu thông báo ra màn hình: sử dụng lệnh
Writeln và xâu được để trong dấu nháy đơn
− Thân chương trình thường có cặp dấu hiệu bắt đầu (BEGIN) và kết thúc (END.)
Vd: Trong ngôn ngữ Pascal
Begin
[<Các câu lệnh>]
End.
trình đơn giản
− Xét VD1, VD2 trong SGK/trang 20
4 Củng cố bài học:
Nhắc lại các kiến thức quan trọng cần nắm
5 Hướng dẫn học sinh chuẩn bị bài ở nhà:
Chuẩn bị bài 4: MỘT SỐ KIỂU DỮ LIỆU CHUẨN và Bài 5 : KHAI BÁO BIẾN
V RÚT KINH NGHIỆM:
Trang 14
Tuần: - Tiết PPCT: Ngày dạy: / /
Tên bài dạy
I MỤC TIÊU:
Học sinh sau tiết học sẽ:
HS nắm được tên, phạm vi giá trị của các kiểu dữ liệu chuẩn thường dùng và dung lượng bộ nhớ dùng để lưu trữ một giá trị của chúng
Xác định được kiểu cần khai báo của dữ liệu đơn giản
Hiểu cách khai báo biến trong Pascal và biết khai báo biến đúng
Phương pháp thuyết trình, hỏi đáp, đặt vấn đề
IV TIẾN TRÌNH DẠY HỌC:
1 Ổn định tổ chức: kiểm diện
2 Kiểm tra bài cũ:
Câu hỏi: Cấu trúc của một chương trình? Khai báo tên, khai báo thư viện? Cho ví dụ?
Câu hỏi: Cấu trúc phần thân chương trình? Khai báo hằng, khai báo biến? cho ví dụ?
3 Giảng bài mới:
Hoạt động 1:
GV: Khi cần viết chương trình quản lí học sinh
ta cần xử lí thông tin ở dạng nào?
HS: Suy nghĩ, trả lời
GV: Phân tích câu trả lời của học sinh, đưa ra
một vài dạng thông tin như sau:
- Họ tên học sinh là những thông tin dạng văn
bản hay là dạng các kí tự
- Điểm của học sinh là các thông tin dạng số
thực
Bài 4: MỘT SỐ KIỂU DỮ LIỆU CHUẨN
• Mỗi ngôn ngữ lập trình thường cung cấp một
số kiểu dữ liệu chuẩn cho biết:
• Phạm vi giá trị
• Dung lượng bộ nhớ cần để lưu trữ
• Các phép toán có thể tác động lên dữ liệu
• Ngôn ngữ lập trình Pascal có
Bài 4: MỘT SỐ KIỂU DỮ LIỆU CHUẨN
BÀI 5: KHAI BÁO BIẾN
Trang 15- Số thứ tự của học sinh là các số nguyên
- Một số thông tin khác chỉ cần biết chúng là
đúng hay sai
GV: - Ngôn ngữ lập trình nào cũng đưa ra một
số kiểu dữ liệu chuẩn
- Kiểu dữ liệu nào cũng có miền giới hạn
của nó Tùy thuộc vào ngôn ngữ lập trình mà tên
của các kiểu dữ liệu khác nhau và miền giá trị
của các kiểu dữ liệu này cũng khác nhau
- Với mỗi kiểu dữ liệu người lập trình cần
ghi nhớ tên kiểu, miền giá trị, và số lượng ô nhớ
để lưu một giá trị thuộc kiểu đó
Giới thiệu các kiểu dữ liệu chuẩn thường dùng
trong Pascal, hình thành trong HS ý thức sử
dụng các kiểu dữ liệu sao cho phù hợp với yêu
cầu bài toán và tiết kiệm tài nguyên
GV : Giới thiệu các kiểu dữ liệu nguyên trong
Pascal
Lưu ý HS phạm vi giá trị và dung lượng bộ nhớ
để lưu trữ giá trị
GV: Nhấn mạnh khi thực hiện phép toán đối với
số nguyên cần chú ý xem các phép toán đó có
cho kết quả vượt ra khỏi phạm vi của kiểu số
nguyên mà đã khai báo không!
GV : đưa ra vài ví dụ rồi gọi HS trả lời.
GV: giới thiệu các kiểu dữ liệu thực trong
Pascal
Lưu ý: HS phạm vi giá trị và dung lượng bộ nhớ
để lưu trữ giá trị
GV: giải thích đối với kiểu thực thì kết quả tính
toán là gần đúng với sai số không đáng kể,
nhưng miền giá trị được mở rộng hơn so với
kiểu nguyên
GV nhấn mạnh phép toán chứa các toán hạng
gồm cả kiểu nguyên và kiểu thực sẽ cho kết quả
kiểu thực
GV đưa ra vài ví dụ gọi HS trả lời, sau đó giải
thích cho HS hiểu
HS chú ý nghe giảng và trả lời các câu hỏi
Dẫn dắt : Máy tính điện tử không chỉ có khả
năng xử lý các dữ liệu bằng số nguyên, số thực
(10-4932 104932 )
Ví dụ:
1 Số thực kiểu Real: 3/2, 115, 2.3, 5.0, -3546, …
2 Cách viết số thực như sau là sai, không đầy đủ:
3 (phải viết là 3.0 hoặc 3) 12 (phải viết là 0.12)
3 Khai báo như sau có hợp lệ không?
x: real
x = (156+52)*1.0
III Kiểu kí tự
- Tên kiểu: CHAR
- Miền giá trị: là các kí tự trong bảng mã ASCII
gồm 256 kí tự
- Mỗi kí tự có một mã tương ứng từ 0 255
- Các kí tự có quan hệ so sánh, việc so sánh dựa
trên mã của từng kí tự
Kiểu Bộ nhớ lưu trữ một giá trị Phạm vi giá trị
char 1 byte 256 kí tự trong bộ mã ASCII
Trang 16phải lưu mã thập phân tương ứng của nó
HS: Chú ý, lắng nghe và ghi nhận vào tập
Trong thực tế chúng ta thường hay gặp loại đại
lượng chỉ có 2 giá trị: Đúng (True) hoặc Sai
(False) Ví dụ một mệnh đề, một câu nói, một
phép toán…có thể được xem xét đúng hay sai
GV: Kiểu logic là kiểu thường chỉ có 2 giá trị
đúng, sai Giới thiệu kiểu logic
HS: Chú ý, lắng nghe và ghi nhận vào tập.
GV nhấn mạnh, một đại lượng thuộc kiểu logic
chỉ nhận một trong hai giá trị: True hoặc False
Hoạt động 2 : Giúp HS hiểu cách khai báo biến
trong Pascal và biết vận dụng để khai báo biến
cho các bài toán cụ thể
GV: Khai báo biến là chương trình báo cho máy
biết phải dùng những tên nào trong chương trình
và để cấp phát bộ nhớ cho biến
HS: Nghiêm túc lắng nghe và ghi nhận vào tập
GV: Đưa ra ví dụ, yêu cầu học sinh xác định các
biến Giới thiệu với học sinh cách khai báo biến
HS : Lắng nghe và tích cực phát biểu xây dựng
bài
VD: Giải phương trình bậc hai
ax2 + bx + c = 0
Khai báo các biến như sau:
var a, b, c, x 1 , x 2 , delta: real;
VD: Để tính chu vi và diện tích tam giac cần
khai báo như sau:
var a, b, c, cv, s: real;
Trong đó:
- a, b, c: dùng để lưu độ dài 3 cạnh của tam giác
- cv: chu vi tam giác
- s: diện tích tam giác
GV: Hướng dẫn học sinh cách đặt khai báo biến
trong chương trình
HS: Chăm chú nghe giảng và ghi nhận vào tập
Trong khai báo này có 3 biến thực X, Y, Z Bộ
nhớ cấp phát cho ba biến này là 18 byte ( 3 * 6
= 18 ) C là biến kí tự và bộ nhớ dành cho nó là
1 byte Các biến I, J nhận giá trị nguyên trong
phạm vi từ 0 đến 255 và bộ nhớ dành cho mỗi
biến là 1 byte Biến N cũng nhận các giá trị
nguyên, nhưng trong phạm vi từ 0 đến 65535
Ví dụ: A mã 65 a mã 97 O mã 48
VI Kiểu Logic
- Miền giá trị: chỉ có 2 giá trị là TRUE (đúng) hoặc FALSE (sai)
- Một số ngôn ngữ có cách mô tả các giá trị logic bằng những cách khác nhau
- Khi viết chương trình bằng ngôn ngữ lập trình nào thì cần tìm hiểu đặc trưng của các kiểu dữ liệu của ngôn ngữ đó
Chú ý:
− Khai báo biến cần quan tâm đến phạm vi giá trị của nó, nghĩa là:
o Phù hợp yêu cầu bài toán
o Phù hợp với không gian bộ nhớ của máy tính
Bài 5: KHAI BÁO BIẾN
I Khai báo biến
• Trong ngôn ngữ lập trình Pascal biến được khaibáo như sau:
var <danh sách biến>: <kiểu dữ liệu>;
Trong đó:
- Var: từ khóa dùng để khai báo biến
- Danh sách biến: tên các biến (được viết cách nhau bởi dấu phẩy)
- Kiểu dữ kiệu: là một kiểu dữ liệu nào đó trong ngôn ngữ Pascal
Chú ý: Sau var có thể khai báo nhiều danh sách biến
có những kiểu dữ liệu khác nhau
• Cách đặt khai báo biến trong chương trình
Giải thích Cấu trúc chương trình
Phần khai báo
Program <tên chương trình>;
Uses <tên các thư viện>;
Const <tên hằng> = <giá trị của hằng>;
Var <danh sách biến>: <kiểu dữ liệu>;
II Một số ví dụ cụ thể:
Giả sử trong chương trình cần các biến thực A, B, C,
D, X1, X2 và các biến nguyên M, N Khi đó có thể khai báo các biến đó như sau:
Trang 17Bộ nhớ cấp phát cho biến N là 2 byte Như vậy,
tổng bộ nhớ dành cho các biến đã khai báo là :
18 + 1 + 2 + 2 = 23 ( byte )
GV: Đặt câu hỏi: khi khai báo biến cần chú ý
những điều gì
HS: Suy nghĩ trả lời
GV: Nhận xét và phân tích câu trả lời của HS,
cho ví dụ minh họa
- Điều này rất có lợi cho việc đọc, hiểu và sửa
đổi chương trình khi cần thiết Ví dụ, cần đặt tên
hai biến biểu diễn điểm toán, điểm tin thì không
nên vì ngắn gọn mà đặt tên biến là d1, d2 mà
nên đặt là dtoan, dtin
- Dễ mắc lỗi khi viết nhiều lần tên biến Ví dụ,
không nên dùng d1, d2 hay diemmontoan,
diemmontin cho điểm
- Ví dụ, khi khai báo biến biễu diễn số học sinh
của một lớp có thể sử dụng kiểu byte, nhưng
biến biểu diễn số học sinh của toàn trường thi
phải thuộc kiểu word
Var
A, B, C, D, X1, X2 : real ;
M, N : integer ;
2 Ví dụ 2 : Xét khai báo biến:
Var
X, Y, Z : real ;
C : char ;
I, J : byte ;
N : word ; III Một số chú ý:
- Cần đặt tên biến sao cho gợi nhớ đến ý nghĩa của nó
- Không nên đặt tên quá ngắn hay quá dài dễ dẫn đến mắc lỗi hoặc hiếu nhầm
Khai báo biến cần quan tâm đến phạm vi giá trị của nó
Nhắc lại các kiến thức quan trọng cần nắm
5 Hướng dẫn học sinh chuẩn bị bài ở nhà:
Học bài cũ
Làm các bài tập 2.14, 2.15, 2.16/ 11 Sách bài tập
Chuẩn bị bài 6 PHÉP TOÁN, BIỂU THỨC, CÂU LỆNH GÁN
V RÚT KINH NGHIỆM:
Trang 18
Tuần: - Tiết PPCT: Ngày dạy:
I MỤC TIÊU:
1 Về kiến thức:
Học sinh sau tiết học sẽ:
Biết các khái niệm phép toán, biểu thức số học, hàm số học chuẩn, biểu thức quan hệ
Rèn luyện tư duy lôgic, cách làm việc khoa học và chính xác
Có tính kỉ luật cao, nỗ lực trong quá trình nghiên cứu độc lập và tình thần làm việc theo nhóm
Phương pháp thuyết trình, hỏi đáp, đặt vấn đề
IV TIẾN TRÌNH DẠY HỌC:
1 Ổn định tổ chức: kiểm diện
2 Kiểm tra bài cũ:
Câu hỏi: Hãy chọn khai báo đúng (5đ)
Var
x,y,z:word; X:longint; i:byte;
i:byte;
Câu hỏi: có bao nhiêu biến tất cả, bộ nhớ phải cấp phát là bao nhiêu? (5đ)
Var x,y:word; h:integer;
z:longint; i:byte;
- Có 5 biến
- Tổng bộ nhớ cần cấp phát: x(2byte), y(2byte), x(4byte), h(2byte), i(1byte) Tổng 11byte
3 Giảng bài mới:
GV: HS mở SGK trang 24
GV: Trong khi viết chương trình ta thường
phải thực hiện các tính toán, thực hiện các
so sánh để đưa ra quyết định xem làm việc
gì Vậy trong chương trình ta làm thế nào?
Có giống với ngôn ngữ tự nhiên không? Tất
• Ngôn ngữ lập trình nào cũng sử dụng đến phép toán, biểu thức, câu lệnh gán
I PHÉP TOÁN
ôn ngữ lập trình Pascal sử dụng một số phéptoán sau:
Trang 19cả các ngôn ngữ có sử dụng chung một
cách giống nhau không?
GV: Toán học có những phép toán nào?
HS: Đưa ra một số phép toán thường dùng
trong toán học
GV: Chúng có dùng được trong ngôn ngữ
lập trình không?
Chỉ có một số phép dùng được, một số phép
phải được xây dựng từ các phép toán khác
GV: Mỗi ngôn ngữ lập trình khác nhau lại
có cách kí hiệu phép toán khác nhau
GV: Trong toán học, biểu thức là gì?
HS: Đưa ra khái niệm
GV: Đưa ra khái niệm biểu thức logic trong
lập trình
GV: Cách viết các biểu thức này trong lập
trình có giống cách viết trong toán học?
HS: Đưa ra ý kiến của mình
GV: Phân tích ý kiến của học sinh
GV: Đưa ra cách viết biểu thức và thứ tự
thực hiện phép toán trong lập trình
GV: Cách viết biểu thức phụ thuộc cú pháp
từng ngôn ngữ lập trình
GV: Đưa ra một số biểu thức toán học và
yêu cầu học sinh viết bằng ngôn ngữ lập
GV: Để tính 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 giúp người lập trình tính toán
nhanh các giá trị thông dụng
GV: Với các hàm chuẩn cần quan tâm đến
kiểu của đối số và kiểu của giá trị trả về
GV: Trong lập trình người ta thường phải
so sánh hai giá trị nào trước khi thực hiện
lệnh nào đó Biểu thức quan hệ còn được
gọi là biểu thức so sánh được dùng để so
sánh 2 giá trị, cho kết quả là đúng hoặc sai
(logic)
VD: 3 > 5: Cho kết quả sai
GV: Muốn so sánh đồng thời nhiều điều
Các phép toán quan hệ <, <=, >, >=, =, <>: cho kết quả
là một giá trị logic (TRUE hoặc FALSE)
Các phép toán logic: NOT (phủ định), OR(hoặc), AND (và): thường dùng để kết hợp nhiều biểu thức quan hệ với nhau
II BIỂU THỨC SỐ HỌC K/n: Biểu thức số học là một biến kiểu số, hằng số hoặc
các biến kiểu số và các hằng số liên kết với nhau bởi các phép toán số học
* Lưu ý:
+ Chỉ dùng dấu ngoặc đơn ( ) khi muốn xác định trình tự các phép toán
+ Viết lần lượt từ trái qua phải
+ Không được bỏ qua dấu * trong tích
Vd: 3*(a* SIN(x) + b* COS(y))+2*sin(x)
Thứ tự ưu tiên các phép toán:
+ Phép trong ( )+ Phép *, /+ Phép DIV, MOD+ Phép +, -
- Trong Pascal, các chương trình tính giá trị những hàm toán học thường dùng được gọi là hàm số học chuẩn
- Cách viết: Tên hàm (Đối số)
- Kết quả của hàm phụ thuộc vào kiểu của đố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: √x2-asinx sqrt((x*x)-a*sin(x))
Hai biểu thức cùng kiểu 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ệ Có dạng như sau:
<biểu thức1> <phép toán quan hệ> <biểu thức2>
Trong đó:
* Biểu thức 1, biểu thức 2 phải cùng kiểu
* Kết quả của biểu thức quan hệ là TRUE hoặc FALSE
Trang 20GV: Đưa ra ví dụ và cách viết đúng trong
ngôn ngữ Pascal
Chú ý: Mỗi ngôn ngữ có cách viết khác
nhau
- Giới thiệu 1 ví dụ về lệnh gán trong Pascal
như sau: x:=8+4;
- Giải thích: lấy 8 cộng 4, đem kết quả đặt
vào x ta được x=12
GV: Mỗi ngôn ngữ lập trình có cách viết
lệnh gán khác nhau
GV: Cần chú ý điều gì khi viết lệnh gán
HS: Chú ý, lắng nghe
GV: Chú ý kiểu của biến và kiểu của biểu
thức
GV: Minh họa một vài lệnh gán bằng ví dụ
cụ thể Cho chương trình
Var I,z : integer;
Begin
z:=4; i:=6;
z:=z-1; i:=i+1;
writeln(‘i=’,i); writeln(‘z=’,z);
readln;
End
- Hỏi: Chương trình in ra màn hình giá trị
bằng bao nhiêu? - In ra màn hình z=3 và
i=7
Thứ tự thực hiện:
* Tính giá trị các biểu thức
* Thực hiện các phép toán quan hệ
* Cho kết quả biểu thức
Ví dụ:
• x+y > 5
− Nếu x=2, y=1 thì x+y > 5 có giá trị FALSE
− Nếu x=3, y=4 thì x+y > 5 có giá trị TRUE
• i+1 <= 2*j
− Nếu i=2,j=3 thì i+1 <= 2*j có giá trị TRUE Nếu i=2,j=1 thì i+1 <= 2*j có giá trị FALSE
Biểu thức logic là các biểu thức quan hệ liên kết với nhau bởi phép toán logic Biểu thức logic đơn giản là biến logic hoặc hằng logic
Các biểu thức quan hệ thường được đặt trong cặp ngoặc ()
(5<=x) and (x<=11)
Lệnh gán thường dùng để gán giá trị cho biến
<tên biến>:= <biểu thức>;
Trong đó:
* Kiểu của biểu thức phải phù hợp với kiểu của biến Có nghĩa là kiểu của biến phải cùng kiểu với kiểu của biểu thức hoặc phải bao hàm kiểu của biểu thức
• Hoạt động của lệnh gán: có chức năng gán giá trị cho một biến
Ví dụ: x:= x+1; y:=y-1;
4.Củng cố bài học:
Nhắc lại các kiến thức quan trọng cần nắm
5.Hướng dẫn học sinh chuẩn bị bài ở nhà:
Chuẩn bị bài 7 CÁC THỦ TỤC CHUẨN VÀO/ RA ĐƠN GIẢN và bài 8 SOẠN THẢO, DỊCH, THỰC HIỆN VÀ HIỆU CHỈNH CHƯƠNG TRÌNH
V RÚT KINH NGHIỆM:
Trang 21
Trang 22
Tuần: - Tiết PPCT: Ngày dạy:
I MỤC TIÊU:
1 Về kiến thức:
Học sinh sau tiết học sẽ:
• Biết được các lệnh vào ra đơn giản để nhập thông tin từ bàn phím và đưa thông tin ra màn hình (bài 7)
• Biết được các bước: soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình (bài 8)
• Biết một số công cụ của môi trường Turbo Pascal (bài 8)
2.Về kỹ năng:
• Viết được một số lệnh vào ra đơn giản (bài 7)
• Bước đầu sử dụng được chương trình dịch để phát hiện lỗi (bài 8)
• Buố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ính hợp lí của kết quả thu được
3.Về thái độ:
Rèn luyện tư duy lôgic, cách làm việc khoa học và chính xác
Có tính kỉ luật cao, nỗ lực trong quá trình nghiên cứu độc lập và tình thần làm việc theo nhóm
II CHUẨN BỊ:
1 Giáo viên:
Sách giáo viên
2 Học sinh:
Chuẩn bị bài 7 CÁC THỦ TỤC VÀO RA ĐƠN GIẢN và bài 8 SOẠN THẢO, DỊCH, THỰC
HIỆN VÀ HIỆU CHỈNH CHƯƠNG TRÌNH
III PHƯƠNG PHÁP:
Phương pháp thuyết trình, hỏi đáp, đặt vấn đề
IV TIẾN TRÌNH DẠY HỌC:
1 Ổn định tổ chức: kiểm diện
2 Kiểm tra bài cũ:
Câu hỏi: Biểu diễn biểu thức sau bằng NNLT Pascal (5đ)
Trang 233 Giảng bài mới:
GV: HS mở SGK trang 32
nêu vấn đề: 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 lệnh gán sẽ làm cho
chương trình chỉ có tác dụng với một dữ
liệu cố định Để chương trình giải quyết
được nhiều bài toán hơn, ta pahỉ sử dụng
thủ tục nhập dữ liệu
- Yêu cầu học sinh nghiên cứu sách
giáo khoa và cho biết cấu trúc chung của
thủ tục nhập dữ liệu trong ngôn ngữ lập
trình Pascal:
- Nêu ví dụ: Khi viết chương trình giải
phương trình ax+b=0, ta phải nhập vào
các đại lượng nào? Viết lệnh nhập?
GV: Đưa 2 ví dụ để dẫn vào bai mới
GV: Khi sử dụng các ứng dụng ta thường
phải nhập thông tin vào, như vậy bằng
cáh nào ta nhập được thông tin vào khi
lập trình? Làm thế nào để nhập giá trị từ
bàn phím cho biến
GV: Diễn giải hoạt động của
READ/READLN, nêu sự khác nhau khi
GV: Chạy chương trình cho học sinh
quan sát, nhận xét về chương trình Giải
thích việc nhập giá trị cho nhiều biến
đồng thời
HS: Chú ý theo dõi
GV: Việc ghi ra dữ liệu thì 3 giá trị a, b, c
dính liền vào nhau và người sử dụng
không thể phân biệt được giá trị của từng
biến Vậy làm thế nào và có những cách
nào để hiển thị dữ liệu theo ý muốn của
người lập trình
GV: Mỗi ngôn ngữ có cách đưa thông tin
ra màn hình khác nhau Lấy thêm ví dụ
về các thủ tục đưa thông tin ra màn hình
của ngôn ngữ khác
I. NHẬP DỮ LIỆU TỪ BÀN PHÍM
dùng thủ tục chuẩn READ hoặc READLN có cấu trúc như sau:
Read (<biến 1, biến 2, …biến n>);
Readln (<biến 1, biến 2, …biến n>);
Ví dụ:
Read (N);
Readln (a, b, c);
Chú ý: Khi nhập dữ liệu từ bàn phím READ và READLN có ý
nghĩa như nhau, thường hay dùng READLN hơn READLN luôn chờ gõ phím Enter
Việc nhập dữ liệu cho nhiều biến thì mỗi giá trị phải cách
nhau ít nhất một dấu cách hoặc dấu Enter, máy sẽ gán giá trị cho
biến theo thứ tự như trong lệnh nhập tương ứng
đưa dữ liệu ra màn hình, ta dùng thủ tục WRITE hoặc
WRITELN với cấu trúc:
write (<danh sách kết quả ra>);
writeln (<danh sách kết quả ra>);
Trong đó: danh sách kết quả ra có thể là tên biến đơn, biểu thức
hoặc hằng
Ví dụ 1:
Write (a, b, c);
Writeln (‘Gia tri cua N là: ‘, N);
- Thủ tục Writeln sau khi đưa kết quả ra sẽ chuyển con trỏ màn hình xuống đầu dòng tiếp theo
writeln(‘vay la ban co’,N-1,’nguoi trong lop’);
write(‘go enter de ket thuc chuong trinh’);
readln End.
Ngoài ra trong TP còn có quy cách đưa thông tin ra màn hình như sau: