Kiểm tra bài cũ: - Hãy nêu sơ lược giao diện của Turbo Pascal - Các thao tác làm việc với menu.. Nội dung bài mới: Đây là các hàm thường gặp trong lập trình tính toán.. 5 Dặn dò: Chuẩn
Trang 1Ngày soạn:2-9-2003 Ngày dạy:9-9-2003/11-9-2003/12-9-2003Tiết: 1
Tuần: 1
CHƯƠNG I: NGÔN NGỮ LẬP TRÌNH PASCAL
BÀI 1: MỞ ĐẦU
I Mục đích yêu cầu:
Học sinh nắm sơ lược tổng quan ngôn ngữ lập trình bậc cao,đó chính là ngôn ngữ lập trình Pascal
II Chuẩn bị:
Giáo viên: Chuẩn bị chuẩn bị bài giảng của mình
Học sinh:Coi trước bài ở nhà
III Kiến thức trọng tâm:
-Khởi động và thoát khỏi turbo Pascal
-Làm quen với ngôn ngữ lập trình
-Nắm được các thao tác soạn thao
IV Phương pháp giảng dạy:
- Nêu vấn đề và giải quyết vấn đề
- Mô tả và diễn giải
V Tiến trình bài giảng:
1 Ổn định lớp: Nắm sỉ số lớp và giới thiệu chương trình.
2 Kiểm tra bài cũ: Không
3 Nội dung bài mới:
PHƯƠNG PHÁP
* Chú thích: Các câu lệnh
ngăn cách nhau bởi dấu
chấm phẩy
- Dòng trên cùng gọi là
tựa đề
- Phần giữa tựa đề và từ
BEGIN là phần khai báo
- Phần giới hạn BEGIN và
END gọi là thân chương
trình
NỘI DUNG
I Cấu trúc cơ bản của 1 chương trình Pascal :
PROGRAM tên chương trình;
Phần khai báo ;BEGIN
Các câu lệnh ;END
VD1:
Program Vi_du;
Begin Write(‘đây là chương trình PASCAL:’);
Readln;
End
-Khai báo biến (có thể có hoặc không tuỳ theochương trình ):
Trang 2- Tương tự VD2 cho học
sinh liên hệ đến việc viết
chương trình tính tích 2 số
nguyên nhập từ bàn phím
- Tên chương trình không
được trùng với từ khoá ,và
ký tự đầu tiên phải là chữ
- Tìm kiếm dãy ký tự và
thay thế ctrl +Q+A
Var tên biến1,tên biến2,…,tên biến n :Kiểu
- Kiểu số thực: real
- Kiểu số nguyên: integer;
VD2: Viết chương trình tính tổng của 2 số nguyênnhập từ bàn phím
Program Tính toán;
User crt;
Var a,b:integer;
BeginClrscr;
Write(‘nhập a=’) ; Readln(a);
- Bảng từ khoá :AND,ARRAY, BEGIN,CASE,CONST,DIV,DO,DOWNTO,ELSE,END,FILE,FOR,FUNCTION,GOTO,IF,IN,LABEL,MOD,NIL,NOT,OF OR,PACKED,PROCEDDURE,SET,PROGRAM,RECORD,REPEAT,STRING,THEN,TO,TYPE,UNTIL,USES,VAR,WHILE,WITH
II Khởi động Turbo Pascal :
- Để làm việc được với Turbo Pascal ta cần ítnhất 2 tập:
+ Turbo.exe :chức năng soạn thảo + Turbo.Tpl :Chức năng các đơn vị chuẩn
III Soạn thảo trong Turbo Pascal:
1 Dịch chuyển con chạy :
+ Các phím: , , , , home,end.
2 Sửa chửa văn bản:
+ Các phím :del ,backspace,insert
3 Làm việc với khối:
+ Đánh dấu đầu khối: Ctrl-K B + Đánh dấu cuối khối:Ctrl-K K + Chuyển khối tới vị trí mới:Ctrl-K V + Sao chép Ctrl-K C
+ Xoá khối :Ctrl-Y
Trang 34 Củng cố:
- Khởi động và thoát khỏi Turbo Pascal.
- Soạn thảo văn bản trong môi trường Turbo Pascal.
Trang 4Ngày soạn:12-9-2003 Ngày dạy:16-9-2003
Tiết: 2
Tuần: 2
BÀI 2: LÀM VIỆC VỚI MÔI TRƯỜNG TURBO PASCAL
I Mục đích yêu cầu:
Học sinh nắm bắt giao diện của Turbo Pascal,cũng như các thao tác sử dụng menu của Turbo Pascal
II Chuẩn bị:
Giáo viên: Chuẩn bị chuẩn bị các tư liệu liên quan
Học sinh: Chuẩn bị bài mới trước ở nhà
III Kiến thức trọng tâm:
Các cách sử dụng menu và các thao tác cơ bản trên menu và soạn thảo văn bản
IV Phương pháp giảng dạy:
- Mô tả và diễn giải
V Tiến trình bài giảng:
1 Ổn định lớp:Nắm sỉ số lớp.
2 Kiểm tra bài cũ:
- Cấu trúc 1 chương trình đơn giản của Turbo Pascal cho VD?
- Nêu 10 từ khoá của Pascal mà em biết ? Khởi động và thoát khỏi Pascal
như thế nào
3 Nội dung bài mới:
PHƯƠNG PHÁP
- Dòng đầu tiên ta có thể còn
gọi là thanh menu
- Dòng thứ hai là thanh trạng
thái
- Kế tiếp là vùng làm việc.
- Dòng cuối cùng là các lệnh
cơ bản thông dụng thường sử
dùng
NỘI DUNG
I Môi trường của Turbo Pascal:
Sau khi khởi động Turbo Pascal màn hình sẽxuất hiện giao diện sau:
Trang 5- Turbo Pascal : Thường lưu
các chương trình dưới dạng
tệp có phần mở rộng *.Pas
Có mấy cách kích hoạt menu của
Turbo Pascal?
Hãy nêu 1 số thao tác cơ bản khi
làm việc với Turbo Pascal như
thao tác trên file ,chạy chương
trình …
- Môi trường của Turbo Pascal giúp ta
nhiều chức năng như soạn thảo chươngtrình,thực hiện chương trình,ghi và gọichương trình…
- Khi làm việc với môi trường Turbo pascal
thực chất là làm việc với hệ thống menu
II Cách làm việc với bảng chọn (menu).
- Có 2 cách làm việc với menu:
Cách1: Ấn phím F10 ,con chạy tạm thời biến
mất và hộp sáng sẽ định vị tại nhóm chứcnăng trên dải menu Muốn thực hiện chứcnăng nào ta đưa hộp sáng về chức năng đóbằng phím , , , sau đó nhấn phímEnter
Cách 2: Ấn phím ALT + Chữ cái đại diện.
Alt +F – 0 hoặc F3 mở tập tin
Alt + F- S hoặc F2 lưu lại Alt + R –R hoặc ctrl F9 :kiểm tra vàchạy chương trình
Alt + F-X hoặc Alt+X:thoát khỏiTurbo Pascal
F9:Kiểm tra chương trình
* Kiểm quay về soạn thảo -> ấn phím ESC
4 Củng cố:
- Giao diện của Turbo Pascal.
- Các thao tác cơ bản.
5 Dặn dò:Chuẩn bị bài mới.
Trang 6Ngày soạn:20-9-2003 Ngày dạy:23-9-2003
Tiết: 3
Tuần: 3
BÀI 3: BÀI TẬP
I Mục đích yêu cầu:
Học sinh ôn luyện lại các kiến thức đã học và nắm vững để vận dụng sau này
II Chuẩn bị:
Giáo viên: Tìm thêm các dạng bài tập khác
Học sinh: Làm các bài tập trước ở nhà
III Kiến thức trọng tâm:
Ôn tập các kiến thức cũ
IV Phương pháp giảng dạy:
- Luyện tập kiểm tra
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
- Hãy nêu sơ lược giao diện của Turbo Pascal
- Các thao tác làm việc với menu.
3 Nội dung bài mới:
Đây là các hàm thường gặp trong
lập trình tính toán
Gọi học sinh lên bảng làm bài :
Program chuc mung;
MỘT SỐ HÀM CHUẨN:
-Hàm đại số:
abs(x):cho trị tuyệt đối của x.
sqr(x): tính bình phương của x.
sqrt(x): tính căn bậc hai của x.
int(x): lấy phần nguyên của x
frac(x): lấy phần lẻ của x
-Hàm lượng giác:
sin(x) : tính sin của x.
cos(x): tính cos của x
arctan(x): tính arctang của x
Bài 1:
Hãy viết chương trình chúc mừng in ramàn hình các dòng:
- Dòng 1: Họ tên
- Dòng 2: Ngày tháng năm sinh
- Dòng 3: Tên lớp
- Dòng 4: Dòng văn bản :Xin chào bạn!
Chúc một ngày tốt lành!
Trang 7một ngày tốt lành!’);
Readln;
End
Các kiểu chuẩn:
-Kiểu integer:Kiểu số nguyên từ
-kiểu Real: số thực
-Kiểu Char: kiểu ký tự (từ ký tự 0
đến 255)
-Kiểu Boolean: Kiểu logic gồm 1
trong hai giá trị True và False
- Lần lượt gọi các em học sinh
lên bảng giải các bài tập
- Cố gắng giảng cho các em nắm
bắt các cách thành lập biểu thức
và khai báo biến
Bài 2:
Cho 5 tên hợp lệ trong Turbo Pascal?
Bài 3:
Viết khai báo cho các biến sau :
- a,b là các biến thực
- i nhận các giá trị nguyên từ -32768 đến
32767
- j1,j2 nhận các giá trị nguyên không âm
65535
- k nhận các giá trị nguyên từ 0 đến 255;
- Các biến nguyên m,n,i,j;
- Các biến ký tự a,c,tên;
- 5 biến logic và 3 biến nguyên.
* Giải bài tập 1.2 ->1.6 trang 9 sách bàitập
4 Củng cố:
- Cách thành lập biểu thức phép gán.
- Cách khai báo và sử dụng các biến
5 Dặn dò: Chuẩn bị bài mới và làm các bài tập còn lại trong SGK.
Trang 8Ngày soạn:25-9-2003 Ngày dạy:30-9-2003
Tiết: 4
Tuần: 4
BÀI 4: LẬP TRÌNH TÍNH TOÁN
I Mục đích yêu cầu:
Học sinh làm quen với 1 CT Pascal hoàn chỉnh cụ thể đơn giản
II Chuẩn bị:
Giáo viên: Chuẩn bị các bài tập và VD đơn giản
Học sinh: Chuẩn bị trước ở nhà
III Kiến thức trọng tâm:
Hằng số và các phép tính ở nhà
IV Phương pháp giảng dạy:
- Giảng giải và mô tả
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
- Gọi học sinh lên bảng làm bài tập.
3 Nội dung bài mới:
Gọi HS nhắc lại các kiến thức cũ
Giải thích sơ lược cho học sinh
hiểu
Gợi ý sơ lược cho học sinh đồng
thời viết sơ lược dàn bài để học
Write(‘cho a= ’); Readln(a);
Write(‘cho b= ’); Readln(b);
Cv := 2*(a+b);
Dt := a*b;
Write (‘cho vi la=’,cv);
Write (‘dien tich=’,dt);
Trang 9lập trình tiếp theo.
Hằng số là gì?
Các phép toán trong ngôn ngữ
lập trình cơ bản của Pascal là gì?
HS cho VD ?
Chú ý: Kiểu của biến phải
trùng với biểu thức
Để xuất văn bản hay giá trị của
biến ra màn hình ta dùng lệnh gì?
độ dài 3 cạnh của tam giác
Giải : HS tự giải
II Hằng và biến số:
1/ Hằng số: Là các đại lượng không
thay đổi giá trị trong quá trình thực hiệnchương trình
- Dùng trực tiếp :cv:=2*(a+b)
- Dùng gián tiếp: const m =2;
2/ Biến số: Là các đại lượng mà giá trị
của nó có thể thay đổi trong quá trình thựchiện chương trình
III.Biểu diễn số thực : Có 2 dạng biểu diễn
số thực -Dạng dấu phẩy tĩnh:
VD: 18.6 có nghĩa là 18,6 -Dạng dấu phẩy động:
VD:18.000000000E+01 có nghĩa là1,8000000000*10 01=18
IV.Các phép tính: Các phép toán số học được
ký hiệu như sau:
Phép cộng: + Phép trừ : - Phép nhân: * Phép chia : /
V.Câu lệnh gán: Ký hiệu (:=)
-Biến:= <Biểu thức>
-Tính giá trị của biểu thức bên phải dấugán và sau đó gán giá trị vừa tính được chobiến
4.Củng cố:
-Cách sử dụng hằng số ,biến số và các câu lệnh gán cũng như nhập xuất dữ liệu
5.Dặn dò:Học bài và chuẩn bị bài tập trong SGK.
Trang 10Tiết: 5
Tuần: 5
BÀI 5: BÀI TẬP
I Mục đích yêu cầu:
Học sinh ôn luyện kỹ năng làm các biểu thức, kiểm tra tính đúng của câu lệnh
II Chuẩn bị:
Giáo viên: Các bài tập tương tự cho học sinh
Học sinh: Học sinh làm bài tập trước ở nhàø
III Kiến thức trọng tâm:
-Hằng số và biến số , lệnh gán…
IV Phương pháp giảng dạy:
- Ôn luyện , kiểm tra
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
- Viết 1 chương trình đơn giản.
3 Nội dung bài mới:
Gọi các học sinh nhắc lại các
biểu thức đã học?
Gọi lần lượt các học sinh lên
bảng làm bài tập?
Sửa bài tập nhắc nhở những
điểm hay sai sót của học sinh
và cách khắc phục
Bài 1: Viết các biểu thức theo ngôn ngữ Pascal
a/ (x y) /(x y)
y x
y x
Bài 2: Trong các câu lệnh sau đây câu lệnh nào
sai tại sao?
a/ const x:=555;
y=’Ha Noi’;
b/ var sin , a,i: integer;
c/ var x,y,then :real;
d/ const a=(5+7=3)
Bài 3: Chuyển các biểu thức theo Pascal thành
Trang 11trong vở a/ (5*x-6*y)/x*y
b/ (cos(3*x)/4+sin( / 4 ) /a / b)c/ sqrt(2+sqrt(sqr(u)+sqr(v)))
* Giải các bài tập :1.9 trang 10 và 1.12 trang 11;
4 Củng cố:
-Cách sử dụng biến số và khai báo biến cũng như cách thành lập biểu thức
5 Dặn dò:Chuẩn bị bài tập trong SGK để tiết sau thực hành.
Kiểm tra 15’
Đề 1:Viết hương trình tính trung bình cộng của 4 số nhập từ bàn phím
Đề 2:Viết chương trình đổi từ inch sang cm ,biết 1inch=2.54cm
Đề 3:viết chương trình giải phương trình bậc nhất y=ax+b
Tiết: 6
Trang 12Tuần: 6
BÀI 6: THỰC HÀNH
I Mục đích yêu cầu:
Học sinh ôn luyện các bài học cũ đồng thời kiểm chứng chúng trên máy
II Chuẩn bị:
Giáo viên: Chuẩn bị máy móc cho học sinh thực hành
III Kiến thức trọng tâm:
- Kỹ năng thao tác và lập trình trên máy.
IV Phương pháp giảng dạy:
- Làm mẫu ,mô tả và kiểm tra.
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
- Các thao tác cơ bản soạn thảo văn bản?.
3 Nội dung bài mới:
GV:Nhắc nhở 1 số thao tác trên
máy và kiểm tra sự nắm bắt của
học sinh về các thao tác này
Hỏi cách thành lập các công thức
tính toán trong ngôn ngữ Pascal
Bài 1: Hãy đọc họ tên,ngày ,tháng,năm sinh
của 1 học sinh bất kỳ vào máy từ bàn phím vàđưa dữ liệu đó ra màn hình
Chú ý:Phân biệt write vàwriteln,read,readln
Bài 2: Đọc từ bàn phím độ dài 3 cạnh của tam
giác ABC rồi tính diện tích và các đường caocủa tam giác.Chiếu các kết quả lên màn hình
Hướng dẫn:
Dùng công thức Hêrong
s p(p a)(p b)(p c) với p=(a+b+c)/2
Bài 3: Đọc từ bàn phím toạ độ 3 điểm A,B và
O.Tính tích vô hướng của 2 vector OA.OB.Đưa kết quả ra màn hình
Trang 134 Củng cố:
- Các thao tác nhập xuất ,cách thành lập các biểu thức,…
5 Dặn dò :Chuẩn bị bài mới ,về nhà làm các bài tập 2.7 và 2.8 trang 12 sách
bài tập
Ngày soạn:14-10-2003 Ngày dạy:21-10-2003
Tiết: 7
Tuần: 7
Trang 14BÀI 7: HỆ THỐNG HÓA CÁC PHẦN TỬ CƠ SỐ
CỦA TURBO PASCAL
I Mục đích yêu cầu:
Học sinh nắm được các phần tử của ngôn ngữ lập trình Pascal 1 cách có hệ thống
II Chuẩn bị:
Giáo viên: Chuẩn bị các VD minh hoạ
Học sinh: Học bài cũ chuẩn bị bài mới
III Kiến thức trọng tâm:
- Các từ khóa ,bảng chữ và tên chuẩn.
IV Phương pháp giảng dạy:
- Thuyết trình mô tả ,nêu vấn đề.
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
- Viết chương trình tính trung bình cộng của 4 số.
3 Nội dung bài mới:
- Nhắc lại 1 số ý tưởng cơ
sở bảng mã ASCII
Nhắc sơ lược về lệnh gán trong
ngôn ngữ lập trình Turbo Pascal
VD: dt := pi*R*R;
I Bảng chữ: (char)
Bảng chữ gốc của TP là bảng mã ASCII(American Standar for InformationInterchanges ): Gồm 128 ký tự cố định và
128 ký tự mở rộng
- Bộ chữ cái la tinh: A -> Z, a -> z
- Bộ chữ số : 0, 1, 2, …, 9
- Các dấu:
+ phép toán học:+,-,*,/
+ So sánh:=,<,>
Các ký hiệu khác:@,#,$
II.Các từ khóa và các dấu kép:
1 Từ khóa: Được TP qui định sẵn, không
dùng nó với nghĩa khác
+ Bảng từ khóa: Trang 135 SGK
2 Dấu kép:
- Dấu gán ký hiệu là :=
- Dấu khác : <>
- Lớn hoặc bằng: >=
- Bắt đầu chú thích (*
- Kết thúc chú thích *)
Trang 15 Những tên chuẩn được đặt sẵn
chẳng hạn như: pi, readln, integer,
Giải thích sơ lược sự cần thiết của
chú thích và cho VD cụ thể
III Tên chuẩn:
Là những tên được đặt sẵn trong TPcó ý nghĩa được qui định nhưng ta vẫn có thểdùng tên chuẩn để đặt tên cho đối tượng mớivà khi đó ý nghĩa cũ sẽ bị mất đi
IV Hằng văn bản:
Là dãy ký hiệu được bắt đầu và kếtthúc là dấu nháy đơn Nếu trong hằng vănbản có chứa nháy đơn ta phải viết 2 lần
V Chú thích :
Nội dung của chú thích được đặt trong
2 dấu {và } hoặc (* và *)
VD :
Delta:=b*b-4*a*c {tính delta }
4.Củng cố:
- Các từ khoá và dấu khép.
- Tên chuẩn và chú thích.
5 Dặn dò:Học bài và các bài tập trong SGK.
Ngày soạn:17-10-2003 Ngày dạy:28-10-2003
Tiết: 8
Tuần: 8
Trang 16BÀI 8: BÀI TẬP
I Mục đích yêu cầu:
Nhằm ôn lại cho học sinh các kiến thức đã học về các thành phần ngôn ngữvà lập trình
II Chuẩn bị:
Giáo viên: Giải tất cả các bài tập trong sách giáo khoa
Học sinh: Học bài cũ và làm bài trước ở nhà
III Kiến thức trọng tâm:
- Lập trình tính toán các bài toán đơn giản.
IV Phương pháp giảng dạy:
- Luyện tập và ôn tập ,kiểm tra.
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ: (Kiểm tra 15’)
3 Nội dung bài mới:
Ôn lại cách biểu diễn số học
và cách hiển thị các con số thực
Gọi học sinh lên bảng làm bài
tập
GV: Sửa bài và nhận xét
Bài tập học sinh tự làm
HS: Xung phong làm bài trên
bảng
Gọi học sinh nhắc lại tính diện
tích và chiều dài của đường tròn
Bài1: Lập trình đổi inch ra cm biết 1
inch=2,54cm (kết quả viết dưới dạng thôngthường)
Write(‘bạn hãy nhập a=’);
Bài 2: Lập chương trình tính trung bình cộng
của 4 số bất kỳ (kết quả viết dưới dạng thôngthường)
HD: (a+b+c+d)/4
Bài 3: Hãy lập chương trình tính độ dài
đường tròn và diện tích hình tròn,trongđó có chú ý khuôn dạng kết quả và đối
Trang 17cv=2 *r;
dt= * r2;
Gọi học sinh lên bảng trình bày
bài giảng
GV: Sửa bài và nhận xét bài làm
của học sinh
HS: Lên bảng (xung phong)
Cho bài tập về nhà
HD: SQR(x) -> cho giá trị x2 Giải :
Write(‘nhập bán kính đường tròn=’);Readln(r);
cv:=2*pi*r;
dt:=pi*r*r;
write(‘chu vi đường tròn=’,cv:8:2);
write(diện tích đường tròn=’,dt:8:2);Readln;
End
Bài 4: Viết chương trình giải phương trình
ax+b=0 với a 0
Bài 5: Lực hút giữa 2 vật có trọng lượng
m1,m2 ở cách nhau 1 khoảng b làF=a.m1m2.Lập chương trình tính lực d2 húthấp dẫn 2 vật đó biết rằng số hấp dẫna=6,673*10 8
4 Củng cố:
- Thông qua các bài làm của học sinh đưa ra những sai sót thường mắc
phải và chỉnh sửa lại cho đúng với yêu cầu
5 Dặn dò: Giải các bài tập còn lại trong SGK.
* Đề kiểm tra 15’:
Viết chương trình tính đường cao của tam giác Biết 3 cạch a,b,c, nhập từ bàn phím
Write(‘nhập cạnh a=’); Readln(a);
Write(‘nhập cạnh b=’); Readln(b);
Write(‘nhập cạnh c=’); Readln(c);
Trang 18S:= SQRT(p*(p-a)*(p-b)*(p-c));
; /
* 2 :
; /
* 2 :
; /
* 2 :
c s h
b s h
a s h
c b a
Trang 19BÀI 9: KIỂU DỮ LIỆU ĐƠN GIẢN
I Mục đích yêu cầu:
Học sinh nắm được kiểu dữ liệu mà mình thường hay sử dụng trong lập trình rõ hơn
II Chuẩn bị:
Giáo viên: cần chuẩn bị các VD cho bài giảng
Học sinh: Học bài cũ và chuẩn bài mới
III Kiến thức trọng tâm:
- Kiểu dữ liệu: integer, real, boolean
IV Phương pháp giảng dạy:
- Diễn giải và nêu vấn đề.
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
Viết chương trình tính thời gian khi biết vận tốc và quãng đường
3 Nội dung bài mới:
Khái niệm kiểu dữ liệu ?
-GV liên hệ với các VD cụ thể
Khái niệm biểu thức?
Cho VD?
Phân tích và diễn giải?
Kiểu nguyên là gì?
Nhắc sơ lược về mã hóa dữ
liệu
Integer ->mã hóa 2 byte
Nêu các hàm thường thao tác
trên kiểu nguyên cho VD?
Liên hệ đến các chương trình
đã giải
Gọi HS cho VD?
Kiểu thực là gì?
HS cho 1 vài ví dụ thao tác
I.Khái niệm kiểu dữ liệu và biểu thức:
a Kiểu dữ liệu: Là 1 khái niệm quan trọng
của ngôn ngữ lập trình.Dữ liệu được lưu trữtrong bộ nhớ và được xử lý bằng các câu lệnhcủa chương trình
b Biểu thức : Là một dãy các toán hạng
liên kết nhau bởi các phép toán,các dấu mởngoặc “(“và đóng ngoặc”)”,
Hai biểu thức có thể liên kết với nhau bởicác phép toán so sánh Thứ tự thực hiện cácphép toán được qui ước như toán học thôngthường
II Kiểu nguyên(integer) Là các số nguyên
nằm trong đoạn [-maxInt.maxInt]
TRUNC(x):bỏ phần thập phân lấy phần
Trang 20theo cách phép toán trên kiểu
thực
Nêu 1 số hàm thông dụng
thường sử dụng trên kiểu
thực ?
HS cho VD?
GV:Phân tích
Kiểu ký tự là gì?
Nhắc lại sơ lược về mã hóa
dữ liệu mà bảng mã ASCII và
từ bảng của ASCII liên hệ đến
các hàm chuẩn
HS nêu các hàm chuẩn thường
sử dụng
HS cho VD và phân tích trên
VD đó
Nhắc lại các phép toán logic
mệnh đề ->liên hệ đến kiểu
III.Kiểu thực(real): Là tập các số biểu diễn
theo kiểu dấu phẩy động ,có trị bé nhất khoảng-1038
- Các phép toán :+,-,*,/
- Các hàm chuẩn:
ABS(x): x
SQR(x): x2SQRT(x): x
Cos(x) :cosin(x)Sin(x) …
Arctang(x): arctg(x)…
IV.Kiểu ký tự (char): Dùng để biểu diễn các
ký hiệu kiểu này thường lấy giá trị thuộc bảngASCII mở rộng Để biểu diễn hằng ký tự ta viếtký tự đó giữa 2 dấu nháy
- Các hàm chuẩn :
ORD(c) cho thứ tự c trong bảng chữ ASCII CHR(i) cho ký tự có thứ tự là I trong bảng chữASCII
SUCC(c) cho ký tự đứng ngay sau ký tự cPRED(c) cho ký tự đứng ngay trước ký tự c
- Các phép toán quan hệ: <,>,<=,>=,=,<>
V.Kiểu logic (booolean):
Có 2 giá trị:Đúng (true) Sai (false)Các phép toán : and,or,not
4 Củng cố:
- Cách sử dụng các kiểu dữ liệu trong thực tế lập trình tính toán.
5 Dặn dò:Học bài cũ và chuẩn bị các bài trong SGK.
Tiết: 10
Tuần: 10
BÀI 10: BÀI TẬP
Trang 21I Mục đích yêu cầu:
Nhằm ôn lại các kiểu dữ liệu cơ bản của NNLT Pascal thông qua các bài tập
II Chuẩn bị:
Giáo viên: Giải tất cả các bài tập trong sách giáo khoa
Học sinh: Học bài cũ và làm bài trước ở nhà
III Kiến thức trọng tâm:
- Kiểu dữ liệu và thao tác trên kiểu dữ liệu.
IV Phương pháp giảng dạy:
- Luyện tập và ôn tập ,kiểm tra.
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
-Nêu các kiểu dữ liệu cơ bản ?Các hàm đặc trưng?
3 Nội dung bài mới:
Hỏi HS lần lượt với các dữ liệu:
integer , real, char, boolean
Các hàm cơ bản với các kiểu dữ
liệu nào?
Gọi học sinh lên bảng làm bài
Nhắc sơ lược lại và chốt những
ý chính cho học sinh nắm rõ hơn
?HS :Các cách biểu diễn sơ lược
lại -> học sinh ôn lại
Gọi học sinh lên bảng giải bài
Bài 1: Giả thiết có các khai báo
Var x,y,x,:real;
e/ 465.0 f/65535g/ -15 h/65536i/-32769 j/ ‘1992’
k/ ‘a’ l/ “”
m/ i*3/j n/ p+k-xo/ odd(i) p/ x=y+g
Bài 2: Cho 3 số A=555;
Đưa các dữ liệu trên vào máy tính bằng lệnhgán và đưa các số đó ra màn hình theo cáchdùng 14 vị trí trong đó có 3 số lẻ nếu là số thựcGiải:
Consta=555;
b=-4.3;
Trang 22 Áp dụng các kiến thức vừa ôn
để làm các bài lập trình tính
toán
Nhấn mạnh các kiểu dữ liệu
Cho bài tập về nhà
c=2.1e+9;
BeginWriteln(‘A=’,a:14);
4 Củng cố:
-Dựa vào bài 1 về các kiểu dữ liệu và giới hạn của các kiểu ,bài 2 cách hiển thị
5.Dặn dò :
- Làm các bài tập từ 2.4->2.9 những bài mà trên lớp làm chưa hoàn chỉnh.
Ngày soạn:14-11-2003 Ngày dạy:17-11-2003
Tiết: 11
Tuần: 11
CÂU LỆNH RẼ NHÁNH VÀ CÂU LỆNH GHÉP
Trang 23I Mục đích yêu cầu:
- Học sinh nắm được các câu lệnh rẽ nhánh
- Sử dụng câu lệnh này để giải một số bài tập
II Chuẩn bị:
Giáo viên: cần chuẩn bị các VD cho bài giảng
Học sinh: Học bài cũ và chuẩn bài mới
III Kiến thức trọng tâm:
- Cú pháp câu lệnh rẽ nhánh
IV Phương pháp giảng dạy:
- Diễn giải và nêu vấn đề.
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
-Viết chương trình tính tiền điện khi biết số kw sử dụng và giá tiền mỗi kw
3 Nội dung bài mới:
Hãy nêu dạng cú pháp câu
lệnh rẽ nhánh dạng khuyết?
VD: Tìm giá trị lớn nhất trong
2 số a,b:
C := a;
If ( b> a) then c:= b;
Write (‘Giá trị lớn nhất ‘,c);
Cho các số cụ thể a=?,b=?
VD: Tương tự như vd trên ta có
thể cài đặt như sau:
I Câu lệnh rẽ nhánh dạng khuyết:
*Dạng lệnh: IF< Điều kiện> THEN <lệnh >;
- Nếu điều kiện đúng thì câu lệnh sau THEN thực hiện
- Nếu điều kiện sai thì máy không phải làm gì và chỉ việc chuyển sang công việc tiếp theo
II Câu lệnh rẽ nhánh dạng đầy đủ :
*Dạng lệnh : IF< ĐIỀU KIỆN> THEN < LỆNH 1>ELSE<lệnh 2>;
- Kiểm tra điều kiện đúng thì thực hiệnlệnh 1
- Ngược lại thực hiện lệnh 2
III Diễn tả các điều kịên :
- Đơn giản: Dùng các phép toán về sosánh:, < , = , < =, > = ,< > ,
Phối hợp : Dùng phép toán so sánh , quan hệand , or , not
IV Câu lệnh ghép:
- Là một dây chuyền câu lệnh được ghéplại với nhau thành một nhóm lệnh giữa hai từkhoá là BEGIN và END
Trang 24Câu lệnh ghép có dạng như
Hướng dẫn học sinh giải?
* Chú ý :Trong câu lệnh rẽ nhánh sau từkhoá THEN và ELSE nếu có nhiều hơn một câulệnh ta cần sử dụng câu lệnh ghép
VD: Viết chương trình giải và biện luậnphương trình : ax + b = 0
PROGRAM PTBI ; USES CRT ;VAR a , b , x : REAL ;BEGIN
CLR SCR ;WRITE (`’Nhap 2 số a , b =’ );
READLN ( a , b ) ;
IF ( a = 0 ) THEN WRITE ( ’PT vô nghiệm ‘ ) ELSE
BEGIN
X : = - B / A ; WRITE (` N0 PT Là :’, x :8 : 2 ) ; END ;
READLN ;END
4 Củng cố :
- Ở câu lệnh rẽ nhánh dạng đầy đủ sau câu lệnh 1 chưa kết thúc câu lệnhrẽ nhánh nên không có dấu hiệu kết thúc câu lệnh ” ;”
-Nhắc lại : cấu trúc câu lệnh rẽ nhánh
5 Dặn dò: giải các bài tập ở SGK.
Ngày soạn:15-11-2003 Ngày dạy:24-11-2003
Tiết: 12
Trang 25BÀI TẬP
I Mục đích yêu cầu:
- Học sinh vận dụng dược cấu trúc câu lệnh rẽ nhánh và ghép để giải các bài tập
II Chuẩn bị:
Giáo viên: cần chuẩn bị các bài tập
Học sinh: Học bài cũ và làm các bài tập ở nhà trước
III Kiến thức trọng tâm:
- Cú pháp câu lệnh rẽ nhánh
IV Phương pháp giảng dạy:
- Kiểm tra, ôn luyện, luyện tập.
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
Hãy nêu câu lệnh rẽ nhánh dạng đầy đủ? Cho VD?
3 Nội dung bài mới:
Hãy nêu dạng cú pháp câu
lệnh rẽ nhánh dạng khuyết?
VD: Tìm giá trị lớn nhất trong
h2 số a,b:
C := a;
If ( b> a) then c:= b;
Write (‘Giá trị lớn nhất ‘,c);
Cho các số cụ thể a=?,b=?
VD: Tương tự như vd trên ta có
thể cài đặt như sau:
If a > b then
Max := a
Else
Max := b;
Hãy nêu 1 số vd về biểu thức
BÀI 1 : GIẢI VÀ BIỆN LUẬN
Phương trình : ax2+ bx +c = 0 PROGRAM PTB II;
Uses crt ;Var a ,b , c, dt , x1 , x2 : real ; Begin
clrscr ;Write ( ‘Nhập 3 số a, b, c’ ) Readln (a ,b ,c ) ;
Dt : = b * b – 4 * a * c ;
If dt < 0 then Write (‘ pt vn ‘)Else
If dt = 0 then Write (‘pt có n kép ‘) Else
Begin : X1 =( -b sqrt (dt) / ( 2 *4 ) ; X2 = ( -b- sqrt (dt ) / (2* 4) ;End ;
Write (`N0 pt là x1 =’,x1: 8 /2 ,’x2=;, x2 : 8,2 ) ;Readln ;
End
BÀI 2: GIẢI VÀ BIỆN LUẬN HỆ PHƯƠNG
Trang 26 Hướng dẫn học sinh giải?
GV: Cho bài tập
HS: Nêu cách giải
GV: hướng dẫn và gợi ý
Bài làm cho học sinh
Dx, Dy ,DD : Readln;
Begin Clrscr ;Writeln ( `Cho các hệ số a, b, c,’) ;Readln (a 1, b1, c1, );
Writeln (` Cho các hệ số a1, b2, c2 ` ) ;Readln a 2, b2, c2 `) ;
Begin Write ( `x = ; Dx / DD :8:2 ` );
Write ( ` y= ; Dy / DD : 8: 2 `) ;End ;
Readln ;End
BÀI 3: Viết chương trình tính tiền điện biết
định mức sử dụng cho mỗi hộ là: 50 Kw /Hộ Phần giá định mức là 200đ/kwh.Nếu vược định mức giá sẽ là 400đ/kwh
Trang 27- Tiết sau thực hành.
Ngày soạn:15-11-2003 Ngày dạy:1-12-2003Tiết: 13
Tuần: 13
Trang 28THỰC HÀNH
I Mục đích yêu cầu:
-Học sinh ôn luyện các bài học cũ đồng thời kiểm chứng chúng trên máy
II Chuẩn bị:
Giáo viên: Chuẩn bị máy cho học sinh thực hành
III Kiến thức trọng tâm:
- Kỹ năng thao tác và lập trình trên máy.
IV Phương pháp giảng dạy:
- Làm mẫu ,mô tả và kiểm tra.
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
- Kiểm tra bài làm của học sinh trong vở ?.
3 Nội dung bài mới:
GV: Kiểm tra việc tự thực hành
của các em
- Nhắc nhở những sai sót thường
gặp của các em
GV:Nhắc nhở học sinh tự làm
bài
Hỏi cách thành lập các công thức
tính toán trong ngôn ngữ Pascal
- Học sinh nêu cách giải quyết
bài toán
GV: nhận xét và góp ý sửa chữa
Học sinh tự giác làm bài
If(a<>0)then write(‘Nghiệm là:’,-b/a:8:2)Else
If b = 0 then Writeln(‘PT co vo so nghiem’) Else
Write(‘PT vo nghiệm’);
End
Bài 2: trang 147
Giải :Program maxab;
Var a,b,max: integer;
Write(‘Cho hai so’);
Readln(a,b);
Max:=a;
If(max<b)then Max:=b;
Write(max);
Readln;
End
Trang 29Cho Vd các số để minh họa.
Học sinh tự giải bài trên máy
Giải :Program maxabc;
Var a,b,c,max: integer;
Write(‘Cho ba so’);
Readln(a,b,c);
If(a<b)then Max:=b;
If(max<c)then Max:=c;
- Giải các bài tập ở tiết trước.
- Chuẩn bị bài câu lệnh lặp while do.
Trang 30I Mục đích yêu cầu:
- Học sinh nắm được câu lệnh While Do
- Sử dụng câu lệnh này để giải một số bài tập
II Chuẩn bị:
Giáo viên: cần chuẩn bị các VD cho bài giảng
Học sinh: Học bài cũ và chuẩn bài mới
III Kiến thức trọng tâm:
- Cú pháp câu lệnh lặp
IV Phương pháp giảng dạy:
- Diễn giải và nêu vấn đề.
V Tiến trình bài giảng:
1 Ổn định lớp:
2 Kiểm tra bài cũ:
Câu lệnh rẽ nhánh ?
3 Nội dung bài mới:
- Liên hệ bài toán thực tế
khác
- Cách giải bài toán này ?
- Điều kiện dừng của bài
toán
- Điều kiện bài toán lặp lại
Kiểm tra đi ều kiện đúng
thì câu lệnh sau DO sẽ thực
hiện Quay về kiểm tra điều
kiện sau WHILE và quá
trình lặp đi lặp lại cho đến
khi điều kiện sai thì kết
thúc
Vẽ lưu đồ thể hiện câu lệnh
while …do
I Bài toán: Một người có số tiền ban đầu là a
gởi tiết kiệm với lãi suất k=1% Hỏi sau bao nhiêu tháng người đó có số tiền không nhỏ hơnb?
II Ý tưởng giải thuật :
Số tiền gởi đầu tháng là a
Số tiền cuối tháng sẽ là :a + a*k Đó chính là số tiền để gởi vào tiết kiệm cho tháng sau
Quá trình gởi sẽ chấm dứt khi số tiền thu được không nhỏ hơn b
III Câu lệnh lặp với điều kiện trước(câu lệnh while):
Dạng lệnh: WHILE đk DO lệnh;
Quá trình thực hiện:
B1:Tính giá trị của biểu thức điều kiện
B2:Nếu biểu thức đúng thì thực hiện câu lêïnh sau DO và quay lại đk
Ngược lại thì thoát khỏi câu lệnh
IV Chương trình:
Program t_kiệm;
Use crt;
Trang 31trúc một chương trình Pascal.
Nhắc lại sơ lượt và điểm một
số sai soát thong mắc phải của
học sinh
Gọi học sinh nhắc lại câu
lệnh ghép và câu lệnh lặp
Var a,b: Real;
t :integer;
BeginClrscr;
Write(‘số tiền gởi ban đầu ’);
4.Củng cố:Nhắc lại cú pháp của câu lệnh lặp WHILE…DO…?
Ý nghĩa của câu lệnh lặp WHILE…DO…?
5.Dặn dò: Học bài cũ
Làm các bài tập trong SGK
Ngày soạn:30-11-2003 Ngày dạy:16-12-2003
Tiết: 15
Tuần: 15
THỰC HÀNH
I./Mục đích yêu cầu:
-Học sinh ôn luyện các bài học cũ và kiểm chứng chúng trên máy ,đồng thời giúphọc sinh quen thuộc với các thao tác trên máy
II./Kiến thức trọng tâm:
-Kỹ năng thao tác và lập trình chúng trên máy
-Các bài tập về câu lệnh lặp dạng WHILE
III./Phương pháp giảng dạy:
-Thực hành.
IV./Tiến trình bài giảng:
Trang 321.Ổn định lớp: Nắm sỉ số lớp và giới thiệu bài mới.
2 Kiểm tra bài cũ:
3 Nội dung bài mới
BÀI 1:Tìm số nguyên lớn nhất của hai số nguyên
*m<n thì UCLN(m,n)=UCLN(m,n-m)
*Từ ý tưởng giải thuật học sinh tự viết ra thành một chương trình và kiểm chứng chương trình đó trên máy
*GV theo dõi quá trình làm bài thực hành của học sinh từ đó hướng dẫn nếu học sinh có gặp khó khăn
*Sau khi kiểm tra và giảng giải những sai phạm mà học sinh hay gặp phải,giáo viên cho đề bài tập thứ hai
*Học sinh tự làm và kiểm chứng bằng máy vi tính
*Giáo viên theo dõi quá trình làm bài của học sinh
*Giáo viên chấm vở và bài làm của một số học sinh
Trang 33-Câu lệnh lặp dạng WHILE.
-Ý tưởng giải thuật của chương trình tìm UCLN của hai số nguyên dương
5.Dặn dò:
BTVN: Ôn tập tất cả các bài đã học
Ngày soạn:15-12-2003 Ngày dạy:23-12-2003
Tiết: 16
Tuần: 16
ÔN TẬP HỌC KỲ I
I./Mục đích yêu cầu:
-Giúp học sinh ôn tập lại tất cả các kiến thức đã được học từ đầu học kỳ
II./Kiến thức trọng tâm:
-Cấu trúc cơ bản của một chương trình pascal
-Lặp trình tính toán
-Câu lệnh rẽ nhánh và câu lệnh ghép
III./Phương pháp giảng dạy:
Trang 34-Nêu vấn đề và giải quyết vấn đề.
-Mô tả và diễn giải
IV./Tiến trình bài giảng:
1.Ổn định lớp: Nắm sỉ số lớp và giới thiệu bài mới.
2 Kiểm tra bài cũ:
3 Nội dung bài mới
NỘI DUNG ÔN TẬP:
1.Viết chương trình tính tổng-tích của hai số nhập
5.Viết chương trình in ra dòng văn bản:”Chúc các
bạn thi tốt”
6.Viết CT tính chu vi -diện tích tam giác khi biết 3
cạnh
7.Viết CT tính chu vi -diện tích hình chữ nhật khi
biết hai cạnh
8.Viết CT tính chu vi -diện tích hình vuông khi biết
1 cạnh
9.Viết CT tính chu vi -diện tích hình thang khi biết
4 cạnh và đường cao
10.Viết CT tính chu vi -diện tích đường tròn khi
biết bán kính R
11.Viết CT giải và biện luận pt ax+b=0
12.Viết CT giải và biện luân pt ax2+bx+c=0
13.Viết CT giải và biện luận hệ pt:
*Gọi HS lên bảng ghi lại cấu trúc cơ bản của chương trình pascal?
*Câu lệnh gán?
*Cú pháp của câu lệnh rẽ nhánh?
*Câu lệnh ghép là câu lệnh ntn?
*Khai báo hằng,khai báo biến ntn?
*Nêu một số kiểu biến thường sử dụng?
*Nêu một số từ khoá?
*Cho 14 bài tập ôn tập
*Gọi một vài học sinh lên bảng làm các bài tập cơ bản:1-10-12
*Giáo viên sửa bài ,nhắc nhởhọc sinh những điều cần luư
ý qua quá trình làm bài
4.Củng cố: