Kiến thức: - Biết các lệnh vào/ra đơn giản để nhập dữ liệu từ bàn phím hoặc đưa dữ liệu ra màn hình; - Biết các bước: soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình; - Biết một số
Trang 1Tin học 11 – Giáo án
Tiết 7:
CÁC THỦ TỤC 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
I MỤC TIÊU:
1 Kiến thức:
- Biết các lệnh vào/ra đơn giản để nhập dữ liệu từ bàn phím hoặc đưa
dữ liệu ra màn hình;
- Biết các bước: soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình;
- Biết một số công cụ của Turbo Pascal hoặc Borland Pascal;
2 Kỹ năng:
- Viết đúng được một số lệnh vào/ra đơn giản;
- Biết nhập đúng dữ liệu khi thực hiện chương trình;
- Biết khởi động và thốt khởi Turbo Pascal hoặc Borland Pascal;
- Bước đầu sử dụng được chương trình dịch để phát hiện lỗi;
- Bướ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 Thái độ:
Tạo sự ham muốn giải các bài tập bằng lập trình, trước mắt thấy được ích lợi của lập trình phục vụ tính tốn và giải được một số bài tốn đã học
II CHUẨN BỊ:
1 Chuẩn bị của giáo viên: Giáo án, hình ảnh minh họa và máy tính.
2 Chuẩn bị của học sinh: Đọc trước SGK.
III HOẠT ĐỘNG DẠY HỌC:
1 Ổn định tình hình lớp: (3’)
2 Kiểm tra bài cũ:(7’)
Trang 2Câu hỏi:Hãy viết các biểu diễn sau sang dạng biểu diễn trong Pascal:
i ey + cosx
ii x x z y
iii u
iv
2
1
| 2 sin
| x
Trả lời:
a) exp(y)+ cos(x) b) (x+y)/(x-z) c) (u>= ) and (u<= ) d) abs(sin(( x)/2)) < 1/2
3. Gi ng bài m i:ảng bài mới: ới:
Th
ời
gia
n
Hoạt động của giáo
viên Hoạt động của học sinh Nội dung bài giảng
8’ * Hoạt động 1: Tìm
hiểu thủ tục nhập dữ
liệu vào từ bàn phím.
GV: Khi giải quyết
một bài tố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 số
1 Nhập dữ liệu vào từ bàn phím:
Việc nhập thông tin từ bàn phím được thực hiện bằng
các thủ tục chuẩn READ/ READLN.
Các lệnh nhập cú
dạng: READ(<Danh sách biến vào>);
Trang 3ời
gia
n
Hoạt động của giáo
viên Hoạt động của học sinh Nội dung bài giảng
dữ liệu cố định Để
chương trình giải
quyết được nhiều bài
tốn hơn, ta phải sử
dụng thủ tục nhập dữ
liệu
GV: Yêu cầu học
sinh nghiên cứu SGK
để 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
GV: Ví dụ khi viết
chương trình để giải
pt: ax + b =0, ta phải
nhập vào các đại
lượng nào? Viết các
lệnh nhập
GV: Chú ý: Khi nhập
giá trị cho nhiều
biến, ta phải nhập các
giá trị này cách nhau
HS: Nghiên cứu SGK suy
nghĩ để trả lời:
Read(<tên_biến_1>,
…,<tên_biến_k>);
Readln(<tên_biến_1>),
…,<tên_biến_k>);
HS: Ta phải nhập hai đại
lượng a và b
Các lệnh nhập: read(a,b);
Hoặc: readln(a,b);
hoặc
READLN(<Danh sách biến vào>);
trong đó Danh sỏch biến vào là một hoặc nhiều tên
biến đơn Trong trường hợp nhiều biến thì các tên
biến cách nhau bởi dấu phẩy.
Ví dụ:
read(N);
Readln(a,b,c);
Trang 4ời
gia
n
Hoạt động của giáo
viên Hoạt động của học sinh Nội dung bài giảng
ít nhất một dấu cách
trống hoặc kí tự
xuống dòng
7’ * Hoạt động 2: Tìm
hiểu về thủ tục đưa
dữ liệu ra màn hình:
GV: Dẫn dắt: Sau
khi xử lí xong, kết
quả tìm được đang
được lưu trong bộ
nhớ Để thấy được
kết quả trên màn hình
ta sử dụng thủ tục
xuất dữ liệu
GV: Yêu cầu học
sinh nghiên cứu SGK
và cho biết cấu trúc
chung của thủ tục
xuất trong ngôn ngữ
lập trình Pascal
GV: Ví dụ khi viết
chương trình để giải
pt: ax + b =0, ta phải
HS: Nghiên cứu SGK và
trả lời:
Write(<tên_biến_1>),
…,<tên_biến_k>);
Hoặc:
Writeln(<tên_biến_1>),
…,<tên_biến_k>);
2 Đưa dữ liệu ra màn hình:
Để đưa thông tin ra
màn hình từ vị trí con trỏ
TP cung cấp các thủ tục
chuẩn WRITE và WRITELN
Các lệnh đưa thông
tin ra màn hình cú dạng :
WRITE(<Danh sách kết
quả ra>);
hoặc
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ụ: Một chương trình hồn chỉnh có sử dụng các lệnh vào, ra:
Trang 5ời
gia
n
Hoạt động của giáo
viên Hoạt động của học sinh Nội dung bài giảng
đưa ra giá trị của
nghiệm –b/a, ta viết
lệnh như thế nào?
HS: trả lời:
Writeln(-b/a);
(SGK)
15’ * Hoạt động 3: Làm
quen với turbo
Pascal 7.0, tập soạn
thảo CT, dịch và
phát hiện lỗi, hiệu
chỉnh:
GV: Sử dụng máy
chiếu và để giới thiệu
màn hình soạn thảo
của chương trình
Pascal như: bảng
chọn, con trỏ, vùng
soạn thảo,…
GV: Soạn thảo một
chương trình có lỗi
cú pháp để cho học
sinh nghiên cứu và
sửa lỗi cú pháp ấy
Program Giai_PTB2;
Uses crt
HS: Sửa lại các lỗi sai là:
Program Giai_PTB2;
Uses crt; {Thiếu ;}
Var a, b; real;
c: real;
D: real;
x1, x2: real;
begin
clrscr;
3 Soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình:
Để có thể làm việc với TP 7.0, tối thiểu phải có các tệp :
- TURBO.EXE
- TURBO.TPL
- Soạn thảo: Các thao tác
soạn thảo chương trình về
cơ bản giống như trong soạn thảo văn bản: Gõ các lệnh của chương trình sửa các lỗi chính tả, ghi tệp chương trình vào đĩa
Biên dịch: Gõ đồng thời
hai phím Alt + F9 Nếu
chương trình có lỗi, sẽ có một thông báo chuẩn, báo lỗi trên nền đỏ Gõ phím
Trang 6ời
gia
n
Hoạt động của giáo
viên Hoạt động của học sinh Nội dung bài giảng
Var a, b; real;
c: real;
D: real;
x1, x2: real;
begin
clrscr;
write (‘Nhap a,
b,c’); redln(a, b, c);
D:= b*b – 4x
a*c;
If D < 0 then
write(‘’PT vo
nghiem)
Else if D = 0
then write(‘N.kep x =
‘, -b/ (a*2);
Else
Begin
X1= (-b-sqrt(D))/
(2*a);
X1= (-b-sqrt(D))/
(2*a);
Write(‘x1 = ’,
write (‘Nhap a, b,c’); readln(a, b, c); {viết sai chữ readln}
D:= b*b – 4*a*c;
{trong Pascal la dung dau
* thay cho dấu x}
If D < 0 then write(‘’PT vo nghiem)
Else if D = 0 then write(‘N.kep x = ‘, -b/
(a*2);
Else Begin X1=
(-b-sqrt(D))/(2*a);
X1=
(-b-sqrt(D))/(2*a);
Write(‘x1 = ’, x1:8:3, ‘x2 = ’, x2:8:3);
Readln;
End
Enter hoặc phím Esc,
thông báo sẽ biến mất và vị trí con trỏ nằm gần chỗ lỗi được chẩn đốn Sau khi sửa lỗi, lặp lại quá trình trên cho tới khi chương trình không còn lỗi cú pháp
- Thực hiện (Chạy) : Gõ
đồng thời hai phím Ctrl + F9.
- Đóng cửa sổ chương trình: Nhấn tổ hợp phím: Alt + F3.
- Thốt khỏi phần mềm: Nhấn tổ hợp phím: Alt + X.
Trang 7ời
gia
n
Hoạt động của giáo
viên Hoạt động của học sinh Nội dung bài giảng
x1:8:3, ‘x2 = ’,
x2:8:3);
Readln;
End
4 Củng cố: (3’)
Các thủ tục nhập/xuất dữ liệu trong Pascal;
Các thao tác soạn thảo, biên dịch, thực hiện, đóng chương trình,…
5 Dặn dò học sinh chuẩn bị cho tiết học sau: (2’)
BTVN:
- 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 giải phương trình bậc hai.
- Đọc trước phần nội dung bài tập và thực hành số 1.
IV RÚT KINH NGHIỆM, BỔ SUNG:
………
………
………
………
………
I MỤC TIÊU:
1 Kiến thức:
- Ôn tập một số kiến thức đã học trong chương 2;
Trang 8- Trình bày một số chương trình cụ thể để chuẩn bị cho tiết thực hành
2 Kỹ năng:
- Giải được các bài tập trong SGK và SBT
- Lập trình được một số bài tập đơn giản
3 Thái độ: Nghiêm túc trong thực hành.
II CHUẨN BỊ:
3 Chuẩn bị của giáo viên: Giáo án, hình ảnh minh họa và máy tính.
4 Chuẩn bị của học sinh: Đọc trước SGK.
III HOẠT ĐỘNG DẠY HỌC:
6 Ổn định tình hình lớp: (1’)
7 Kiểm tra bài cũ: (Kiểm tra bài cũ trong quá trình giải bài tập)
8. Gi ng bài m i:ảng bài mới: ới:
Thời
gian
Hoạt động của giáo
viên
Hoạt động của học
20’ * Hoạt động 1:
Hướng dẫn giải các
bài tập trong SGK
GV: Bài 3 Nếu trong
quá trình tính tốn biến
chỉ nhận giá trị nguyên
trong phạm vi từ 10
đến 25532 thì có
những cách khai báo
nào ?
4 Viết các biểu thức
tốn học dưới đây sang
biểu thức trong TP :
HS: Kiểu Integer, word, longint
HS:
1 Hướng dẫn để giải các bài tập trong SGK
Bài 3: Biến đó chỉ nhận giá
trị nguyên nên nó chỉ thuộc
4 kiểu nguyên là: byte, word, integer, longint Nhưng nó nằm trong phạm
vi từ 10 đến 25532 nên nó chỉ có thể khai báo bằng những kiểu là integer, word, longint
Trang 9gian
Hoạt động của giáo
viên
Hoạt động của học
a)
x y x z
;
1 x.y x
2
b)
3
y x z (1 z)
1 a
1 x
5 Hãy chuyển các
biểu thức trong TP
dưới đây sang biểu
thức tốn học :
а) a/b*2
b) a+b/c+1;
c) 1/a*b/c;
d) a*b*c/2;
e) (a*b)*c/2;
f)
b/sqrt(a*a+b)
6 Hãy viết các biểu
thức lô gíc cho kết quả
True khi toạ độ (x,y) là
điểm nằm trong vùng
gạch chéo hai hình
(x+y)/(x-1/2)-(x-z)/
(x*y)
b (1+z)*(x+(y/z))/(a-(1/(1+x*x*x))
HS:
a a2
b
b a b 1
c
c c
ba
Bài 4:
a (x+y)/(x-1/2)-(x-z)/(x*y)
b
(1+z)*(x+(y/z))/(a-(1/(1+x* x*x))
Bài 5:
a) 2a
b
b) a b 1
c
c) c
ba
Bài 6:
a Biểu thức logic:
Trang 10gian
Hoạt động của giáo
viên
Hoạt động của học
sau:
(x>=-1) and (x<=1) and (y>=0) and (y<=1) and (x+y>=0) and (x-y<=0)
b Biểu thức logic;
(x>=-1) and (x<=1) and (y>=-1) and (y<=1)
Thời
gian Hoạt động của giáo viên
Hoạt động của học
sinh Nội dung bài giảng
19’ * Hoạt động 2: Hướng
dẫn viết các chương
trình đơn giản của các
bài tập trong SGK
Bài tốn 1: Lập chương
trình nhập số a (a>0) rồi
tính và đưa ra diện tích
phần được gạch chéo
trong hình (kết quả làm
tròn đến bốn chữ số
thập phân.)
GV: Khai báo hai biến a
HS: Lắng nghe, có
thể ghi chép để thực hành
Bài 1: Chương trình như sau:
Program Tinhdientich; uses crt;
var a, S: real;
const PI = 3.14;
begin clrscr;
writeln(‘Nhap vao ban kinh a>0, a= ’);
readln(a);
S:= PI*a*a/2;
writeln(‘Dien tich phan gach cheo la: S = ’, S:6:2); readln;
Trang 11và S dùng để nhập bán
kính và biến S dùng để
lưu kết quả diện tích của
phần gạch
Bài tốn 2: tương tự bài
tốn 1
end
Bài 2: Chương trình như sau:
Program Tinhvantoc;
uses crt;
var v, h: real;
const g = 9.8;
begin clrscr;
writeln(‘Nhap vao h, h =
’);
readln(h);
v:= sqrt(2*g*h);
writeln(‘Van toc la: v = ’, v:6:2);
readln;
end
4 Củng cố: ( 4’)
Các kĩ năng ban đầu về lập trình
5 Dặn dò học sinh chuẩn bị cho tiết học sau: (1’)
Chuẩn bị bài thực hành 1
Trang 12Làm các bài tập trong SGK.
IV RÚT KINH NGHIỆM, BỔ SUNG:
………
………
………
………
Tiết 9 & 10: BÀI TẬP VÀ THỰC HÀNH 1
I MỤC TIÊU:
1 Kiến thức:
- Biết kích hoạt phần mềm pascal, làm quen với một số chương trình đơn giản
- Bước đầu thực hiện các thao tác cơ bản trong pascal như: gõ, lưu, dịch và sửa lỗi, thực hiện một chương trình đơn giản
- Làm quen với một số tổ hợp phím thông dụng
2 Kỹ năng:
- Gõ được một số nội dung chương trình trong sách giáo khoa hoặc
do giáo viên đưa ra; biết cách sửa các lỗi thông dụng của Pascal
- Biết sử dụng một số phím, tổ hợp phím để thực hiện các thao tác cơ bản
3 Thái độ:
- Có ý thức trong việc sử dụng máy tính.
- Tích cực học tập, thích tìm hiểu
II CHUẨN BỊ:
5 Chuẩn bị của giáo viên: Giáo án, bài tập thực hành và máy tính.
6 Chuẩn bị của học sinh: Đọc trước SGK, làm các bài tập 9 và 10 trang
36 để chuẩn bị cho tiết thực hành
Trang 13III HOẠT ĐỘNG DẠY HỌC:
9 Ổn định tình hình lớp: (1’)
10.Gi ng bài m i:ảng bài mới: ới:
Thời
gian
Hoạt động của giáo
viên Hoạt động của học sinh Nội dung bài giảng
Tiết 1:
* Hoạt động 1:
Thực hành các nội
dung trong sách
giáo khoa:
- GV: Hướng dẫn học
sinh cách khởi động
máy tính, kích hoạt
phần mềm pascal
- Giới thiệu một số
menu trên màn hình
làm việc của pascal
- Cho học sinh làm
quen với một số
chương trình đơn giản
đã chuẩn bị trước Yêu
cầu học sinh nhận xét
cấu trúc của chương
trình cũng như các dấu
hiệu đặc trưng ( màu
chử của các từ)
Thống nhất ý kiến
- HS Nghe giảng, quan sát máy tính và thực hiện theo chỉ dẫn
- Quan sát và ghi nhận
- Hai em ngồi kế nhau thảo luận, một số em đứng lên trình bày, rồi nhận xét lẫn nhau
- Ghi nhận
- Học sinh thực hiện yêu cầu
- Tiếp tục thực hiện yêu cầu và sửa đổi thói quen
- Hai em ngồi gần nhau thảo luận, trình bày ý kiến,
1 Nội dung:
a) Gõ vào từ bàn phím
chương trình giải phương trình bậc 2 :
AX2 + BX + C = 0 với
A 0
PROGRAM
G_P_T_B2;
USES CRT;
VAR A, B, C, D : REAL; X1, X2 : REAL;
BEGIN CLRSCR;
WRITE(' A, B, C: '); READLN(A,B,C);
D := SQRT(B*B – 4*A*C);
X1 := (-B – D)/(2*A); X2 := -B/A – X1;
WRITE('X1 = ', X1:6:2,' X2 = ',X2:6:2);
Trang 14gian
Hoạt động của giáo
viên Hoạt động của học sinh Nội dung bài giảng chung
- Yêu cầu học sinh gõ
nội dung chương trình
giải phương trình bậc
2(SGK Tin học
11/trang 34)
- Giáo viên quan sát
quá trình thực hiện và
chỉnh sửa những thói
quen không tốt mà học
sinh mắc phải trong
quá trình đánh máy
- Sau khi học sinh đã
thực hiện xong yêu
cầu Giáo viên có thể
cho học sinh phát biểu
nội dung chương trình
theo ngôn ngữ giả đề
bước đầu làm quen với
một chương trình đơn
giản
- Thống nhất ý kiến
chung
- Yêu cầu học sinh lưu
nôi dung chương trình
- Ghi nhận
- Nghe, thực hiện theo chỉ dẫn của GV bằng nhiều thao tác nhưng chú ý thao tác phím tắt
(nhấn F2), học sinh có
thể đặt theo một số tên mình thích dễ nhớ để sau này tiện sử dụng (nếu cần)
- Nghe và thực hiện yêu cầu theo sự hiểu biết ban đầu
- Tiếp tục thực hiện, yêu cầu sự giúp đở của bạn, của thầy (nếu cần)
- Thực hiện yêu cầu và quan sát kết quả trên
READLN END.
b) Gõ F2 và lưu chương
trình với tên là PHTR2.PAS,
c) Gõ Alt + F9 để dịch và
sửa lỗi cú pháp (nếu có),
d) Gõ Ctrl + F9 để thực
hiện chương trình, nhập vào các giá trị 1 -3 và 2 Kết quả phải có trên màn hình là : X1 = 1.00 X2 = 2.00
e) Gõ Ctrl + F9 và nhập
các giá trị 1 0 -2
Kết quả nhận được là : X1
= 1.41 X2 = 1.41
f) Sửa lại chương trình trên
sao cho không cần dùng biến trung gian D Sau khi sửa, thực hiện lại chương trình với các bộ dữ liệu trên
g) Sửa lại chương trình nhận
được ở mục c bằng cách thay đổi công thức tính X2 (còn có 2 cách tính X2 theo
Trang 15gian
Hoạt động của giáo
viên Hoạt động của học sinh Nội dung bài giảng vừa gõ với tên
THUCHANH1.PAS
vào ổ đĩa D:\ (ở đây
giáo viên có thể nhắc
lại cách đặt tên cho
một tệp cũng như các
thao tác lưu tệp trong
word để học sinh dể
dàng tiếp thu kiến thức
mới)
- Nói: một chương
trình sau khi các em đã
gõ hồn chỉnh thì chưa
chắc là hồn tồn chính
xác Để cho thật sự
chắc chắn là hồn tồn
đúng thì trước khi thực
hiện chương trình ta
hãy nhấn tổ hộp phím
Alt + F9 để dịch và
sửa lỗi cú pháp Yêu
cầu học sinh dịch, sửa
lỗi và nhận xét những
kết quả đó trên màn
hình
màn hình với đáp án sách giáo khoa để nhận định về chương trình mà mình thực hiện Tới đây học sinh sẽ đưa ra câu hỏi thắc mắc ( Sau khi
thực hiện nhập giá trị 4;
3; 5 thì chương trình
báo lỗi)
- Nghe và ghi nhận
công thức khác)
h) Thực hiện chương trình
với bộ dữ liệu 1 -5 6 ( Kết quả nhận được là 2 và 3)
i) Thực hiện chương trình
với bộ dữ liệu 1 1 1,
quan sát cách thông báo lỗi
của TP