Tải bản đầy đủ (.doc) (59 trang)

Giáo án Tin 8 kì II (2010-2011)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.26 MB, 59 trang )

Tuần 20:
Ngày soạn :05/01/2011
Ngày dạy :
Tiết 39
BÀI 7: CÂU LỆNH LẶP
A. MỤC TIÊU :
•Biết nhu cầu cần có cấu trúc lặp trong ngôn ngữ lập trình.
•Biết ngôn ngữ lập trình dùng cấu trúc lặp để chỉ dẫn máy tính thực hiện lặp đi lặp lại
công việc nào đó một số lần.
•Hiểu hoạt động của câu lệnh với số lần biết trước for do trong Pascal.
•Viết đúng được lệnh for do trong một số tình huống đơn giản.
•Hiểu lệnh ghép trong Pascal
•Thái độ nghiêm túc cẩn thận.
B. CHUẨN BỊ :
1. Giáo viên : - SGK, SGV, tài liệu, Giáo án
- Đồ dùng dạy học
2. Học sinh : - Đọc trước bài
- SGK, Đồ dùng học tập
C. TIẾN TRÌNH TIẾT DẠY :
I. Ổn định tổ chức lớp :
II. Kiểm tra bài cũ :
III. Dạy bài mới :
HOẠT ĐỘNG CỦA THÀY VÀ
TRÒ
KIẾN THỨC CẦN ĐẠT
HOẠT ĐỘNG 1 : Các công việc phảI thực hiện nhiều lần.
Trong cuộc sống hằng ngày,
nhiều hoạt động được thực hiện
lặp đi lặp lại nhiều lần. ví dụ:
- Các ngày trong tuần các
em đều lặp đi lặp lại hoạt


động buổi sáng đến
trường và buổi trưa trở
về nhà
- Các em học bài thì phải
đọc đi đọc lại nhiều lần
cho đến khi thuộc bài.
Hãy cho thêm một vài ví dụ
trong thực tế trong đời sống
hằng ngày mà ta phải thực hiện
các thao tác được lặp đi lặp
nhiều lần?
1> Các công việc phảI thực hiện nhiều lần
- Trong cuộc sống hàng ngày, nhiều hoạt động
được thực hiện lắp đi lặp lại nhiều lần.
- Có những hoạt động mà chúng ta thực hiện lặp
với số lần nhất định và biết trước, và những công
việc và số lần không biết trước.
VD
+ số lần lặp biết trứơc:
Các ngày trong tuần các em đều lặp đi lặp lại hoạt
động buổ sáng đến trường và buổi trưa trở về nhà.
+ Số lần lặp không biết trước:
Trong một trận cầu lông các em lặp đi lặp lại công
việc đánh cầu cho đến khi kết thúc trân cầu.
- Khi viết chương trình máy tính cũng vậy, trong
nhiều trường hợp ta cũng phải viết lặp lại nhiều lần
câu lệnh chỉ để thực hiện 1 phép tính nhất định.
Gv: Khi viết chương trình máy
tính cũng vậy, trong nhiều
trường hợp ta cũng phải viết

lặp lại nhiều câu lệnh chỉ để
thực hiện 1 phép tính nhất
định.
HOẠT ĐỘNG 2 : Câu lệnh lặp – một lệnh thay thế cho nhiều lệnh
Gv: Gọi 1 hs lên bảng vẽ một
hình vuông cạnh 1 đơn vị độ dài
(20cm) và yêu cầu cả lớp theo dõi
bạn thực hiện các thao tác trên
bảng.
Yêu cầu 1 hs mô tả các bước bạn
vẽ trên bảng.
Vậy khi bạn vẽ 1 hình vuông đã
thực hiện bao nhiêu thao tác? (hs
có thể chỉ trả lời 4 thao tác là vẽ 4
đoạn thẳng)
GV: Gợi ý thêm thao tác quay
thước.
Các thao tác đó như thế nào?
Gv: Như vậy khi vẽ hình vuông
có những thao tác lặp đi lặp lại.
Thuật toán sau sẽ mô tả các bước
để vẽ hình vuông.
Gv: Mô tả thuật toán trên bảng
Gv: Mô tả thuật toán tính tổng các
số tự nhiên từ 1→ 100
2/ Câu lệnh lặp – một lệnh thay cho nhiều lệnh
VD1: giả sử cần vẽ 3 hình vuông có cạnh 1 đơn
vị như sau
Mỗi hình vuông là ảnh của hình bên trái nó dịch
chuyển 1 khoảng các 2 đơn vị.

Bước 1: vẽ hình vuông(vẽ liên tiếp 4 cạnh và trở
về đỉnh ban đầu)
Bước 2: Nếu số hình vuông đã được vẽ ít hơn 3 ,
di chuyển bút vẽ về bên phải 2 đơn vị và trở lại
bước 1; ngược lại thì kết thúc thuật toán.
VD2
Riêng với 1 bài toán vẽ hình vuông thì thao tác
chính là vẽ bốn canhj bằng nhau,hay lặp lại 4
lần thao tác vẽ đoạn thẳng
Thuật toán mô tả các bước để vẽ hình vuông.
Bước 1: k ← 0 (k là số đoạn thẳng đã vẽ được).
Bước 2: k ← k+1. Vẽ đoạn thẳng 1 đơn vị độ dài
và quay thước 90
0
sang phải.
Bước 3: Nếu k<4 thì quay lại bước 2; ngược lại
kết thúc.
•k là biến đếm
Vd3: Thuật toán tính
S= 1+2+3+ … + 100
Bước 1: S ← 0; i ← 0.
Bước 2: i← i + 1
Bước 3: nếu i ≤ 100, thì S ← S + i và quay lại
bước 2; ngược lại kết thúc.
i là biến đếm
Mô tả thuật toán trên gọi là cấu trúc lặp.
Mọi ngôn ngữ lập trình đều có cách chỉ thị cho
máy tính thực hiện cấu trúc lặp chỉ với 1 câu
lệnh. Đó là câu lệnh lặp
IV: CỦNG CỐ KIẾN THỨC:

1/ Các công việc phải thực hiện nhiều lần ?
2/ Câu lệnh lặp – một câu lệnh thay thế cho nhiều lệnh
Hướng dẫn về nhà
Học bài xem lại các ví dụ, chuẩn bị thực hành
V: HƯỚNG DẪN VỀ NHÀ:
- Học bài, xem lại bài và lấy thêm các ví dụ
- Chuẩn bị bài học cho tiết sau (học tiếp bài câu lệnh lặp)
  
Ngày soạn : 05/01/2011
Ngày dạy :
TIẾT 40:
BÀI 7: CÂU LỆNH LẶP
A. MỤC TIÊU :
•Biết nhu cầu cần có cấu trúc lặp trong ngôn ngữ lập trình.
•Biết ngôn ngữ lập trình dùng cấu trúc lặp để chỉ dẫn máy tính thực hiện lặp đi lặp lại
công việc nào đó một số lần.
•Hiểu hoạt động của câu lệnh với số lần biết trước for do trong Pascal.
•Viết đúng được lệnh for do trong một số tình huống đơn giản.
•Hiểu lệnh ghép trong Pascal
•Thái độ nghiêm túc cẩn thận.
B. CHUẨN BỊ :
1. Giáo viên : - SGK, SGV, tài liệu, Giáo án
- Đồ dùng dạy học
2. Học sinh : - Đọc trước bài
- SGK, Đồ dùng học tập
C. TIẾN TRÌNH TIẾT DẠY :
I. Ổn định tổ chức lớp :
II. Kiểm tra bài cũ :
HS 1 :Nêu các công việc phải thực hiện nhiều lần, nêu vd
III. Dạy bài mới :

HOẠT ĐỘNG CỦA THÀY VÀ
TRÒ
KIẾN THỨC CẦN ĐẠT
HOẠT ĐỘNG 1 : Ví dụ về câu lệnh lặp
Gv: minh họa bẳng ngôn ngữ
Pascal cú pháp câu lệnh for …
to … do
•Lưu ý cho hs:
- biến đếm là biến đơn
có kiểu nguyên;
- giá trị đầu và giá trị
cuối là các biểu thức
có cùng kiểu với biến
đếm và giá trị cuối
phải lớn hơn giá trị
đầu;
- câu lệnh có thể là câu
lệnh đơn giản hay câu
lệnh ghép.
Cho hs nhận xét và so sánh sự
khác nhau ở câu lệnh lặp trong
hai vd trên?
Gv: Giải thích cho học tại sao
vd2 trong câu lệnh lặp có begin
… end
Cú Pháp câu lệnh lặp với số lần biết trước trong
Pascal.
for<biến đếm>:= <giá trị đầu> to <giá trị cuối>
do <câu lệnh>
trong đó:

+ for, to, do là các từ khóa
+ biến đếm là biến đơn có kiểu nguyên
+ giá trị đầu và giá trị cuối là các biểu thức có
cùng kiểu với biến đếm và giá trị cuối phải lớn hơn
giá trị đầu
+ câu lệnh có thể là câu lệnh đơn giản hay câu
lệnh ghép
Vd 1: Chuong trình in ra màn hình thứ tự lần lặp.
Program lap;
var i:integer;
begin
for i:= 1 to 20 do
writeln(‘Day la lan lap thu’,i);
readln;
end.
Vd2: chương trình ghi nhận vị trí 10 chữ O rơi từ
trên xuống.
ues crt;
var i:integer;
begin
clrscr;
for i:= 1 to 20 do
begin
writeln(‘O’);
delay(200);
end;
readln;
end.
(Delay (200)là hàm khai báo thời gian rơI nhanh
hay chậm của chữ O)

*Lưu ý: Cõu lệnh đơn giản Writeln(‘O’) và
Delay(200) được đặt trong từ khoá BEGIN và
AND để tạo thành câu lệnh ghép trong PASCAL
HOẠT ĐỘNG 2 : Tính tổng và tích bằng câu lệnh lặp
Gv: trình bày đoạn chương trình
tính tổng N số tự nhiên, với N là
số tự nhiên được nhập từ bàn
phím (Pascal)
Vd 1: chương trình tính tổng N số tự nhiên đầu
tiên, với N là số tự nhiên được nhập từ bàn
phím.
S = 1+2+3+ … + N
Theo công thức tính tổng ta cần
khai bao nhieu biến? kiểu biến?
Trong 2 biến thì biến nào có giá
trị được nhập từ bàn phím?
Gv: Mô tả thuật toán tính tổng các
số tự nhiên từ 1→ 100
program Tinh_tong;
var N,i:integer;
S:longint;
begin
write(‘Nhap so N = ‘);
readln(N);
S:= 0;
for i:= 1 to N do
S:= S+i;
writeln(‘Tong cua’, N, ‘so tư
nhien dau tien S = ‘, S);
readln;

end.
*Kiểu longint có phạm vi từ -2
31
đến 2
31
– 1.
Vd 2: chương trình tính tích N số tự nhiên, với N
là số tự nhiên được nhập từ bàn phím.
N! = 1.2.3….N
program Tinh_Giai_Thua;
var N,i:integer;
P:longint;
begin
write(‘Nhap so N = ‘);
readln(N);
P:= 1;
for i:= 1 to N do
P:= P*i;
writeln( N, ‘! = ‘, P);
readln;
end.
IV: CỦNG CỐ KIẾN THỨC:
1/ Cấu trúc lặp trong chương trình dùng để làm gì?
2/ Trong ngôn ngữ lập trình Pascal cấu trúc lặp với số lần lặp cho trước được thể hiện với
câu lệnh nào?
V: HƯỚNG DẪN VỀ NHÀ:
- Học bài, xem lại bài và lấy thêm các ví dụ
- Chuẩn bị bài học cho tiết sau (học tiếp bài câu lệnh lặp)
  
Tuần 21:

Ngày soạn :10/01/2011
Ngày dạy :
Tiết 41
BÀI THỰC HÀNH 5:
SỬ DỤNG LỆNH LẶP FOR DO
A. MỤC TIÊU :
1. Kiến thức Vận dụng kiến thức của vòng lặp for… do, câu lệnh ghép để viết
chương trình.
2. Kỹ năng.
Viết được chương trình cã sử dụng vòng lặp for … do;
Sử dụng được câu lệnh ghép;
Rèn luyện kỹ năng đọc hiểu chương trình cã sử dụng vòng lặp for … do.
3. Thái độ: Thái độ học tập nghiêm túc, tích cực làm các bài tập thực hành.
B. CHUẨN BỊ :
1. Giáo viên :
- SGK, SGV, tài liệu, Giáo án
- Chuẩn bị phòng thực hành đủ số máy tính hoạt động tốt.
2. Học sinh :
- Đọc trước bài thực hành.
- Học thuộc kiến thức lý thuyết đã học.
C. Tiến trình tiết dạy :
I. ổn định tổ chức lớp :
II. Kiểm tra bài cũ :
Kiểm tra trong quá trình thực hành.
III. Dạy bài mới :
HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH
Hoạt động 1: Viết chương trình cho các bài tập đã cho về nhà. (15’)
- GV: yêu cầu mỗi dãy gõ một bài vào
- HS: gõ chương trình, chạy thử chương
trình, và báo cáo kết quả.

- GV: hỗ trợ học sinh trong quá trình
thực hành.
Bài 1: Tính tổng của n số tự nhiên đầu tiên
Program tinh_tong;
Uses crt;
Var i, n: integer; tong: longin;
Begin
Clrscr;
Tong:=0;
Writeln(‘Nhap vao so n’); readln(n);
For i:=1 to n do
Tong: = Tong+i;
Writeln(‘Tong của’, n,’so tu nhien dautien
la’,tong);
Readln;
End.
- Sau khi kết quả chạy chương trình đã
đúng, gv yêu cầu học sinh chữa bài của
mình đã làm ở nhà cho đúng theo
chương trình đã chạy.
2. Viết chương trình tìm xem cã bao nhiêu
số dương trong n số nhập vào từ bàn phím
Program tinh_so_cac_so_duong;
Uses crt;
Var i,A, dem, n: integer;
Begin
Clrscr;
Dem:=0;
Writeln(‘Nhap vao so n’); readln(n);
For i:=1 to n do

begin
writeln(‘nhap vao so thu’,i); readln(A);
if A>0 then dem:=dem+1;
end;
Writeln(‘So cac so duong la’,dem);
Readln;
End.
-
Nhận xét, rút kinh nghiệm tiết thực hành
IVCủng cố:
- Giáo viên hệ thống lại toàn bộ nội dung bài học.
- Nhận xét, rút kinh nghiệm tiết thực hành
-
V.Hướng dẫn về nhà:
- Học bài theo sách giáo khoa và vở ghi, Ôn lại các kiến thức chính đã học và luyện
viết, làm đi làm lại nhiều lần.
o0o
Ngày soạn :10/01/2011
Ngày dạy :
Tiết 42
BÀI THỰC HÀNH 5:
SỬ DỤNG LỆNH LẶP FOR DO
A. MỤC TIÊU :
1. Kiến thức Vận dụng kiến thức của vòng lặp for… do, câu lệnh ghép để viết
chương trình.
2. Kỹ năng.
Viết được chương trình cã sử dụng vòng lặp for … do;
Sử dụng được câu lệnh ghép;
Rèn luyện kỹ năng đọc hiểu chương trình cã sử dụng vòng lặp for … do.
3. Thái độ: Thái độ học tập nghiêm túc, tích cực làm các bài tập thực hành.

B. CHUẨN BỊ :
1. Giáo viên :
- SGK, SGV, tài liệu, Giáo án
- Chuẩn bị phòng thực hành đủ số máy tính hoạt động tốt.
2. Học sinh :
- Đọc trước bài thực hành.
- Học thuộc kiến thức lý thuyết đã học.
C. Tiến trình tiết dạy :
I. ổn định tổ chức lớp :
II. Kiểm tra bài cũ :
Kiểm tra trong quá trình thực hành.
III. Dạy bài mới :
HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH
- GV: Đưa ra nội dung của bài toán.
- HS: Nghiên cứu bài toán, tìm input
và output.
GV: Đưa nội dung chương trình lên bảng,
yêu cầu học sinh đọc hiểu
- GV: Đưa ra nội dung của bài toán.
- HS: Nghiên cứu bài toán, tìm input
và output.
- GV: Đưa nội dung chương trình lên
màn hình, yêu cầu học sinh đọc
hiểu chương trình.
- HS: đọc, phân tích câu lệnh tìm
hiểu hoạt động của chương trình.
- GV: yêu cầu một học sinh đứng tại
vị trí trình bày hoạt động của
chương trình, các nhãm khác cùng
Viết chương trình in ra màn hình bảng

nhân của một số từ 1 đến 9, và dừng màn
hình để cã thể quan sát kết quả.
Program Bang_cuu_chuong;
Uses crt;
Var i, n: integer;
Begin
Clrscr;
Writeln(‘Nhap vao so n’); readln(n);
Writeln(‘Bang nha’,n);
Writeln;
For i:=1 to 10 do
Writeln(n,’x’,i:2,’=’,n*i:3);
Readln;
End.
tham gia phân tích.
- HS: tham gia hoạt động của giáo
viên
- GV: yêu cầu học sinh lập bảng hoạt
động của chương trình theo mẫu:
Giả sử N=2:
Bước i i<=10 Writeln(n,’.’,i,’=’,n*i)
1 1 đúng 2.1=2
- HS: các nhãm lập bảng và đại diện
nhãm báo cáo kết quả.
- GV: nhận xét.
- GV: cho chương trình chạy trên
máy, yêu cầu học sinh quan sát kết
quả.
- Giáo viên cho chạy kết quả của bài
thực hành Bang_cuu_chuong Yêu

cầu học sinh quan sát kết quả và
nhận xét khoảng cách giữa các
hàng, cột.
- HS: quan sát và đưa ra nhận xét.
- ? Cã cách nào để khoảng cách giữa
các hàng và các cột tăng lên?
- GV: Giới thiệu câu lệnh gotoxy và
where.
- GV: yêu cầu học sinh mở chương
trình Bang_cuu_chương và sửa lại
chương trình theo bài trên màn
hình của giáo viên.
- HS: gõ chương trình vào máy, sửa
lỗi chính tả, chạy chương trình,
quan sát kết quả.
- GV: yêu cầu học sinh quan sát kết
quả và so sánh với kết quả của
chương trinh khi chưa dùng lệnh
gotoxy(5, wherey)
- HS: quan sát và nhận xét.
Bài 2 sgk (T63)
a) Giới thiệu lệnh gotoxy(), wherex
- Gotoxy(a,b)
Trong đã: a là chỉ số cột, b là chỉ số hàng
- ý nghĩa của câu lệnh là đưa con trỏ về
cột a hàng b.
- Wherex: cho biết số thứ tự của cột,
wherey cho biết số thứ tự của hàng.
* Lưu ý: Phải khai báo thư viện crt trước
khi sử dụng hai lệnh trên

a) Chỉnh sửa chương trình như sau:
Program Bang_cuu_chuong;
Uses crt;
Var i, n: integer;
Begin
Clrscr;
Writeln(‘Nhap vao so n’); readln(n);
Writeln(‘Bang nha’,n);
Writeln;
For i:=1 to 10 do
begin
gotoxy(5, wherey);
Writeln(n,’x’,i:2,’=’,n*i:3);
Readln;
End.
Hoạt động 2: sử dụng lệnh For lồng trong for (28’)
- GV: giới thiệu cấu trúc lệnh for
lồng, hướng dẫn học sinh cách sử
dụng lệnh.
- HS: ghi chép cấu trúc và lĩnh hội
- GV: đưa nội dung chương trình bài
thực hành 3 lên màn hình, yêu cầu
học sinh đọc chương trình, tìm hiểu
hoạt động của chương trình.
- HS: hoạt động theo nhãm, tìm hiểu
hoạt động của chương trinh, đại
diện của nhãm báo cáo kết quả
thảo luận.
- GV: cho chạy chương trình.
- HS : quan sát kết quả trên màn

hình.
Bài 3 SGK (T64).
a) Câu lệnh for lồng trong for
- For <biến đếm1:= giá trị đầu> to <giá trị
cuối> do
For <biến đếm 2:=giá trị đầu> to <giá trị
cuố> do
< câu lệnh>;
Program Tao_bang;
Uses crt;
Var i,j: byte;
Begin
Clrscr;
For i:=1 to 9 do
Begin
For j:=0 to 9 do
Writeln(10*i+j:4);
Writeln;
End;
Readln;
End.
Hoạt động 3: kết thúc (2’)
HS: tắt chương trình ứng dụng, tắt máy,
tắt nguồn
1. Củng cố:
- Giáo viên hệ thống lại toàn bộ nội dung bài học.
2. Hướng dẫn về nhà:
  
Tuần 22:
Ngày soạn :20/01/2011

Ngày dạy :
Tiết 43
Bài 8: LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
I.Mục tiêu:
1.Kiến thức
- Biết nhu cầu cần có cấu trúc lặp với số lần chưa biết trước trong ngôn ngữ lập
trình;
- Biết ngôn ngữ lập trình dùng cấu trúc lặp với số lần chưa biết trước để chỉ dẫn
máy tính thực hiện lặp đi lặp lại công việc đến khi một điều kiện nào đó được thoả
mãn;
2. Kĩ năng
- Nhận biết được đâu là hoạt động lặp với số lần chưa biêt trước.
3. Thái độ
- Nghiêm túc trong quá trình nghiên cứu và thực hành.
II. Chuẩn bị
GV: SGK, máy chiếu, phim trong các ví dụ về chương trình
HS: Xem trước bài ở nhà
III. Tiến trình bài giảng
1. Bài mới
Hoạt động của GV và HS Nội dung
Hoạt động 1: Kiểm tra bài củ
Viết thuật toán tính tổng 100 số
tự nhiên đầu tiên 1,2,3,
…,99,100
Trả lời
Bước 1. SUM ← 0; i ← 0.
Bước 2. i ← i + 1.
Bước 3. Nếu i ≤ 100, thì
SUM ← SUM + i
và quay lại bước 2.

Bước 4. Thông báo kết quả
và kết thúc thuật
toán.
+ G : y/c hs đọc ví dụ 1sgk/67
+ Hs : 2-3 hs đọc ví dụ sgk
+ G : Phân tích ví dụ
+ Hs : Chú ý lắng nghe
+ G : y/c hs đọc ví dụ 1sgk/67
+ Hs : 2-3 hs đọc ví dụ sgk
+ G : Phân tích ví dụ
+ Hs : chú ý lắng nghe
+ G : Hướng dẫn hs xây dựng
thuật toán
+ Hs : Nghe giáo viên hướng
dẫn, sau đó tự xây dựng thuật
toán
+ G : Chạy tay cho học sinh
xem ( Chỉ nên chạy tay thử từ 1
đến 10 )
+ Hs : Chú ý nghe .
Hs ghi vở ví dụ 2
+ G : Giới thiệu sơ đồ khối
Hoạt động 2
+ G : Nêu nhận xét
+ G : Có thể sử dụng lệnh lặp
với số lần lặp chưa biết trước
trong các chương trình lập
trình . Sau đây ta xét câu lệnh và
ví dụ trong TP
+ G : Giới thiệu cú pháp lệnh

while … do ….;
+ hs : chú ý nghe và ghi chép
+ G : Xét ví dụ 3
1. Các hoạt động lặp với số lần chưa biết trước
a/ Ví dụ 1(sgk).
b/ Ví dụ 2 : Nếu cộng lần lượt n số tự nhiên đầu tiên
(n = 1, 2, 3, ), Cần cộng bao nhiêu số tự nhiên đầu
tiên để ta nhận được tổng T
n
nhỏ nhất lớn hơn 1000?
Giải :
Kí hiệu S là tổng cần tìm và ta có thuật toán như sau:
+ Bước 1. S

0, n

0.
+ Bước 2. Nếu S ≤ 1000, n

n + 1; ngược lại chuyển
tới bước 4.
+ Bước 3. S

S + n và quay lại bước 2.
+ Bước 4. In kết quả : S và n là số tự nhiên nhỏ nhất
sao cho S > 1000. Kết thúc thuật toán.
* Ta có sơ đồ khối :
* Nhận xét : Để viết chương trình chỉ dẫn máy tính
thực hiện các hoạt động lặp như trong các ví dụ trên, ta
có thể sử dụng câu lệnh có dạng lặp với số lần chưa

biết trước
2. Ví dụ về lệnh lặp với số lần chưa biết trước
Trong Pascal câu lệnh lặp với số lần chưa biết trước
có dạng:
while <điều kiện> do <câu lệnh>;
trong đó:
- điều kiện thường là một phép so sánh;
Chúng ta biết rằng, nếu n càng
lớn thì
1
n
càng nhỏ, nhưng luôn
luôn lớn hơn 0. Với giá trị nào
của n thì
1
n
< 0.005 hoặc
1
n
<
0.003 ?
( Gv đưa phim trong ví dụ 3 )
+ Hs : Đọc ví dụ 3 ( Phim trong)
+ G : giới thiệu chương trình
mẫu sgk ( Giáo viên in chương
trình mẫu trên phim trong )
+ Hs : quan sát
+ G : Chạy tay cho học sinh
xem
+ Hs : chú ý nghe và tự chạy tay

lại
+ G : Yêu cầu học sinh mở máy
tính và mở chương trình ví dụ 3
( giáo viên chuẩn bị chương
trình mẫu và đưa lên các máy )
+ Hs : thực hiện
+ G : Cho học sinh chạy chương
trình trên máy
+ Hs : thực hiện
+ G : Yêu cầu hs thay điều kiện
sai_so = 0.003 thành 0.002 ;
0.001 ; 0.005 ;
+ Hs : thực hiện
- câu lệnh có thể là câu lệnh đơn giản hay câu
lệnh ghép.
Câu lệnh lặp này được thực hiện như sau:
Bước 1 : Kiểm tra điều kiện.
Bước 2 : Nếu điều kiện SAI, câu lệnh sẽ bị bỏ qua và
việc thực hiện lệnh lặp kết thúc. Nếu điều kiện đúng,
thực hiện câu lệnh và quay lại bước 1.
Ví dụ 3.
Với giá trị nào của n ( n>o ) thì
1
n
< 0.005 hoặc
1
n
<
0.003? Chương trình dưới đây tính số n nhỏ nhất để
1

n
nhỏ hơn một sai số cho trước :
uses crt;
var x: real;
n: integer;
const sai_so=0.003;
begin
clrscr;
x:=1; n:=1;
while x>=sai_so do begin n:=n+1; x:=1/n end;
writeln('So n nho nhat de 1/n < ',sai_so:5:4, 'la ',n);
readln
end.
2. Củng cố:
- Lấy ví dụ về các hoạt động phải lặp lại với số lần chưa biết trước
3. Hướng dẫn về nhà:
- Học bài
- Nghiên cứu trước nội dung các phần còn lại
IV- R út Kinh Nghiệm :


  
Ngày soạn : 20/01/2011
Ngày dạy :
Tiết 44
Bài 8:LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
I.Mục tiêu:
Kiến thức: Biết câu lệnh lặp với số lần chưa biết trước while do… trong Pascal.
Kĩ năng: Lấy được các vị cụ cụ thể về câu lệnh lặp với số lần chưa biết trước.
Thái độ:Nghiêm túc trong quá trình hcọ tập và rèn luyện.

II. Chuẩn bị
GV: SGK, máy chiếu, phim trong các ví dụ về chương trình
HS: Xem trước bài ở nhà
III. Tiến trình bài giảng
1. Ổn định:
2. Kiểm tra bài cũ:
3. Bài mới
Hoạt động GV và HS Nội dung
Hoạt động 1
+ G : ta tiếp tục xét các ví dụ mà
trong chương trình có câu lệnh với số
lần lặp chưa biết trước
Xét ví dụ 4
+ G : Cho học sinh quan sát phim
trong chương trình
+ Hs : quan sát
+ G : Chạy tay cho học sinh xem
+ Hs : chú ý nghe và tự chạy tay lại
+ G : Yêu cầu học sinh mở máy tính
và mở chương trình ví dụ 4 ( giáo
viên chuẩn bị chương trình mẫu và
đưa lên các máy )
+ Hs : thực hiện
+ G : Cho học sinh chạy chương
trình trên máy
+ Hs : thực hiện
+ G : chạy chương trình này, ta nhận
được giá trị ntn?
+ Hs : Nếu chạy chương trình này ta
sẽ nhận được n = 45 và tổng đầu tiên

lớn hơn 1000 là 1034.
+ G : giới thiệu ví dụ 5 sgk
Viết chương trình tính tổng
1 1 1
1
2 3 100
T
= + + + +
+ G : Cho học sinh quan sát phim
trong chương trình
+ Hs : quan sát
Ví dụ 4 . Chương trình Pascal dưới đây thể hiện
thuật toán tính số n trong ví dụ 2:
var S,n: integer;
begin
S:=0; n:=1;
while S<=1000 do
begin n:=n+1; S:=S+n end;
writeln('So n nho nhat de tong > 1000 la ',n);
writeln('Tong dau tien > 1000 la ',S);
end.
Ví dụ 5 . Viết chương trình tính tổng
1 1 1
1
2 3 100
T
= + + + +

Giải :
Để viết chương trình tính tổng

1 1 1
1
2 3 100
T
= + + + +
ta có thể sử dụng lệnh lặp
với số lần lặp biết trước for…do:
T:=0;
for i:=1 to 100 do T:=T+1/i;
writeln(T);
Nếu sử dụng lệnh lặp while…do, đoạn chương
+ G : Chạy tay ( cả hai chương
trình ) cho học sinh xem
+ Hs : chú ý nghe và tự chạy tay lại
+ G : so sánh kết quả khi chạy hai
chương trình
+ Hs : Kết quả bằng nhau
+ G : Ví dụ này cho thấy rằng chúng
Hoạt động 2: ta có thể sử dụng câu
lệnh while…do thay cho câu lệnh
for…do.
+ G : Giới thiệu phần 3
+ G : Khi viết chương trình sử dụng
cấu trúc lặp cần chú ý tránh tạo nên
vòng lặp không bao giờ kết thúc
+ Hs : Chú ý nghe
+ G : Chẳng hạn, chương trình dưới
đây sẽ lặp lại vô tận:
var a:integer;
begin

a:=5;
while a<6 do writeln('A');
end.
+ Hs : Quan sát
+ G : Trong chương trình trên, giá trị
của biến a luôn luôn bằng 5, điều
kiện a<6 luôn luôn đúng nên lệnh
writeln('A') luôn được thực hiện.
Do vậy, khi thực hiện vòng lặp, điều
kiện trong câu lệnh phải được thay
đổi để sớm hay muộn giá trị của điều
kiện được chuyển từ đúng sang sai.
Chỉ như thế chương trình mới không
"rơi" vào những "vòng lặp vô tận".
trình dưới đây cũng cho cùng một kết quả:
T:=0;
i:=1;
while i<=100 do begin T:=T+1/i; i:=i+1 end;
writeln(T);
* Nhận xét : Ví dụ này cho thấy rằng chúng ta có
thể sử dụng câu lệnh while…do thay cho câu
lệnh for…do.
3. Lặp vô hạn lần – Lỗi lập trình cần tránh
Khi viết chương trình sử dụng cấu trúc lặp cần
chú ý tránh tạo nên vòng lặp không bao giờ kết
thúc.
4. Củng cố:
- Ghi nhớ sgk
- Làm bài tập 2,3a,bài 5 SGK/71
5. Hướng dẫn về nhà:

- Học bài và làm lại các bài tập
  
Tuần 23:
Ngày soạn :05/02/2011
Ngày dạy :
Tiết 45
Bµi thùc hµnh 6: Sö dông lÖnh lÆp while do
I. Mục tiêu
1. Kiến thức
- Viết chương trình Pascal sử dụng câu lệnh lặp với số lần chưa biết trước.
2. Kỹ Năng
- Rèn luyện khả năng đọc chương trình, tìm hiểu tác dụng và kết hợp các câu lệnh.
3. Thái độ: Nghiêm túc
II. Chuẩn bị
1. Giáo viên: giáo án, máy chiếu
2. Học sinh: Kiến thức cũ, sách, vở.
III. Tiến trình lên lớp
1. Bài mới
HOẠT ĐỘNG CỦA
THẦY VÀ TRÒ
NỘI DUNG KIẾN THỨC
Hoạt động 1:
KiÓm tra bµi cò:
Hãy cho một số ví dụ
về lặp với số lần chưa biết
trước.
GV: Đưa ra bài tập 1 SGK
? Gọi học sinh nêu ý tưởng
- GV hướng dẫn
HS: Làm bài tập

Hoạt động 2
HS: Đánh máy bài tập vào
msy tính
GV: Kiểm tra và chạy
chương trình
Bài 1. Viết chương trình sử dụng lệnh lặp While…do
để tính trung bình n số thực x
1
, x
2
, x
3
, , xn.
Các số n và x
1
, x
2
, x
3
, , xn được nhập vào từ
bàn phím.
Ý tưởng: Sử dụng một biến đếm và lệnh lặp While…
do để nhập và cộng dần các số vào một biến kiểu số
thực cho đến khi nhập đủ n số.
a) Mô tả thuật toán của chương trình, các biến dự
định sẽ sử dụng và kiểu của chúng.
b) Gõ chương trình sau đây và lưu chương trình với
tên Tinh_TB:
Program Tinh_Trung_binh;
uses crt;

Var
n, dem: Integer;
x, TB: real;
begin
clrscr;
dem:=0 ; TB:=0 ;
write('Nhap so cac so can tinh n = ');
readln(n);
while dem<n do
begin
dem:=dem+1;
write('Nhap so thu ',dem,'= ');
readln(x);
TB:=TB+x;
end;
TB:=TB/n;
writeln('Trung binh cua ',n,' so la
= ',TB:10:3);
writeln('Nhan Enter de thoat ');
readln
end.
a) Đọc và tìm hiểu ý nghĩa của từng câu lệnh. Dịch
chương trình và sửa lỗi, nếu có. Chạy chương trình
với các bộ dữ liệu được gõ từ bàn phím và kiểm tra
kết quả nhận được.
b) Viết lại chương trình bằng cách sử dụng câu lệnh
for…do thay cho câu lệnh while…do.
2. Củng cố
- Hiểu các hoạt động lặp với số lần chưa biết trước
- Biết sử dụng câu lệnh while do

3. Hướng dẫn học ở nhà
- Về nhà xem lại bài học tiết sau chúng ta học tiếp.
IV- R út Kinh Nghiệm :



  
Ngày soạn : 05/02/2011
Ngày dạy :
Tiết 46:
Bµi thùc hµnh 6: Sö dông lÖnh lÆp while do
I. Mục tiêu
1. Kiến thức
Viết chương trình Pascal sử dụng câu lệnh lặp với số lần chưa biết trước.
2. Kỹ Năng
Rèn luyện khả năng đọc chương trình, tìm hiểu tác dụng và kết hợp các câu
lệnh.
3. Thái độ: Nghiêm túc
II. Chuẩn bị
1. Giáo viên: giáo án, máy chiếu
2. Học sinh: Kiến thức cũ, sách, vở.
III. Tiến trình lên lớp
1. Bài mới
HOẠT ĐỘNG CỦA
THẦY VÀ TRÒ
NỘI DUNG KIẾN THỨC
Hoạt động 1: Bài 2
GV: Đưa ra bài tập 2 SGK
? Gọi học sinh nêu ý tưởng
- GV hướng dẫn

HS: Làm bài tập
Hoạt động 2:
HS: Là các ý a, b, c vào máy
GV: kiểm tra đánh giá
Bài 2. Tìm hiểu chương trình nhận biết một số tự
nhiên N được nhập vào từ bàn phím có phải là số
nguyên tố hay không.
Ý tưởng: Kiểm tra lần lượt N có chia hết cho các số
tự nhiên 2 ≤ i ≤ N hay không. Kiểm tra tính chia hết
bằng phép chia lấy phần dư (mod).
a) Đọc và tìm hiểu ý nghĩa của từng câu lệnh
trong chương trình sau đây:
Uses Crt;
Var n,i:integer;
Begin
Clrscr;
write('Nhap vao mot so nguyen:
');readln(n);
If n<=1 then writeln('N khong la
so nguyen to')
else
begin
i:=2;
while (n mod i<>0) do
i:=i+1;
if i=n then writeln(n,' la
so nguyen to!')
else writeln(n,' khong
phai la so nguyen to!');
end;

readln
end.
b) Gõ, dịch và chạy thử chương trình với một vài
độ chính xác khác nhau.
2. Củng cố
- Hiểu các hoạt động lặp với số lần chưa biết trước
- Biết sử dụng câu lệnh while do
3. Hướng dẫn học ở nhà
- Về nhà xem lại bài học tiết sau chúng ta học tiếp.
IV- R út Kinh Nghiệm :



  
Tuần 24:
Ngày soạn :05/02/2011
Ngày dạy :
Tiết 47+48: Phần mềm học tập
HỌC VẼ HÌNH VỚI PHẦN MỀN GEOGEBRA
I/ MỤC TIÊU:
- Hs hiểu được các đối tượng hình học cơ bản của phần mềm và quan hệ giữa
chúng
- Thông qua phần mềm học sinh biết và hiểu các ứng dụng của phần mềm trong
toán học, thiết lập quan hệ toán học giữa các đối tượng này.
- Biết cách sử dụng phần mềm để vẽ các hình học trong chương trình lớp 8.
- Hs ý thức trong việc ứng dụng phần mềm trong học tập của mình .
II/ CHUẨN BỊ:
- Sách giáo khoa, giáo án, tài liệu tin học cã liên quan.
- Đọc tài liệu ở nhà trước khi
III. TIẾN TRÌNH LÊN LỚP:

Ổn định tổ chức lớp :
-Kiểm tra.
- Kiểm tra sự chuẩn bị của học sinh .
Bài mới:
HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH
Hoạt động 1: E đã biết gì về Geogebra
Hs đọc sgk
Hoạt động 2: Làm quen với phần mềm
Geogebra tiếng viết .
Nhấp đúp vào biểu tượng
Hoặc vào menu Start \ All Programs\
GeoGebra \ GeoGebra
Giới thiệu màn hình chính
1 Em đã biết gì về Geogebra?
2. Làm quen với phần mềm Geogebra
tiếng Việt
a) Khởi động
b) Giới thiệu màn hình Geogebra tiếng Việt
- Bảng chọn
- Thanh công cụ
c) Giới thiệu các công cụ làm việc.
- Công cụ di chuyển
Hs thực hiện
cho biết các thành phần trong màm hình
chính.
Bảng chọn
Thanh công cụ
Công cụ di chuyển
có thể chọn nhiều đối tượng bằng cách
nào?

Hs : Nhấn phím CTRL khi chọn
Khi đang sử dụng công cụ khác chuyển về
công cụ di chuyển bằng cách nào ?
Hs : nhấn phím ESC
GV : lưu có 2 cách
- Nhấn Ctrl + S hoặc chọn Hồ sơ - >
lưu
Mở?
- Nhấn Ctrl + O hoặc chọn Hồ sơ - >
mở
Thoát khởi phần mềm?
- Hồ sơ - > mở hoặc Alt + F4
- Các công cụ liên quan đến đối tượng
điểm.
Thao tác : Chọn công cụ sau đó chọn đối
tượng
- Các công cụ liên quan đến đoạn, đường
thẳng.
Thao tác : Chọn công cụ sau đó chọn đối
tượng
- Các công cụ tạo mối quan hệ hình
học.
Thao tác : Chọn công cụ sau đó chọn đối
tượng
Chú ý : Thay đổi tên điểm , đường thẳng
, chọn công cụ di chuyển ,lick dúp vào
đối tượng cần thay đổi.
- Các công cụ liên quan đến hình tròn
Thao tác : Chọn công cụ sau đó chọn đối
tượng

- Các công cụ biến đổi hình học .
d) Các thao tác với tệp
- Lưu
- Mờ
e) Thoát khởi phần mềm
IV.Củng cố:
- Giáo viên hệ thống lại toàn bộ nội dung bài học.
V.Hướng dẫn về nhà:
- Học bài theo sách giáo khoa và vở ghi, Ôn lại các kiến thức chính đã học và luyện
viết, làm đi làm lại nhiều lần.
  
Tuần 25:
Ngày soạn :18/02/2011
Ngày dạy :
Tiết 49+50: Phần mềm học tập
HỌC VẼ HÌNH VỚI PHẦN MỀN GEOGEBRA
I/ MỤC TIÊU:
- Hs hiểu được các đối tượng hình học cơ bản của phần mềm và quan hệ giữa
chúng
- Thông qua phần mềm học sinh biết và hiểu các ứng dụng của phần mềm trong
toán học, thiết lập quan hệ toán học giữa các đối tượng này.
- Biết cách sử dụng phần mềm để vẽ các hình học trong chương trình lớp 8.
- Hs ý thức trong việc ứng dụng phần mềm trong học tập của mình .
II/ CHUẨN BỊ:
- Sách giáo khoa, giáo án, tài liệu tin học cã liên quan.
- Đọc tài liệu ở nhà trước khi
III. TIẾN TRÌNH LÊN LỚP:
Ổn định tổ chức lớp :
Kiểm tra.
- Kiểm tra sự chuẩn bị của học sinh .

Bài mới:
HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH
Hoạt động 1: E đã biết gì về Geogebra
Hs đọc sgk
Hoạt động 2 : Đối tượng hình học
Hs nêu khái niệm
3 . Đối tượng hình học
a) Khái niệm đối tượng hình học
b) Đối tượng tự do và đối tượng phụ thuộc
Nằm trên (thuộc về)
Đi qua
Giao của hai đối tượng
c) Danh sách các đối tượng trên màn hình.
Hiển thị → Hiển thị danh sách đối tượng
d) Thay đổi thuộc tính của đối tượng.
- Ẩn đối tượng :
B1 chọn đối tượng
B2 hủy chọn “ Hiển thị đối tượng “trong
bảng hiển thị
- Ẩn hiện tên của đối tượng
B1 chọn đối tượng
B2 hủy chọn “ Hiển thị đối tên” trong bảng
hiển
- Thay đổi tên của đối tượng
B1 nháy nút chuột phải lên đối tượng
B2 chọn đổi tên
- Đặt / hủy vết chuyển động đối tượng.
B1 nháy nút chuột phải lên đối tượng
B2 chọn “ Mở dấu vết khi di chuyển
Để xóa các vết nhấn tổ hợp phím Ctrl + F

- Xóa đối tượng : thực hiện 1 trong các
cách
C1 dùng nhấn Delete
C2 nháy nút chuột phải lên đối tượng, chọn
xóa
C3 chọn trên thanh công cụ ,
chọn đối tượng xóa
IV.Củng cố:
- Giáo viên hệ thống lại toàn bộ nội dung bài học.
V.Hướng dẫn về nhà:
- Học bài theo sách giáo khoa và vở ghi, Ôn lại các kiến thức chính đã học và luyện
viết, làm đi làm lại nhiều lần.
  
Tuần 26:
Ngày soạn :25/02/2011
Ngày dạy :
Tiết 51+52: Phần mềm học tập
HỌC VẼ HÌNH VỚI PHẦN MỀN GEOGEBRA
I/ Môc tiªu:
Kiến thức: Hs hiểu được các đối tượng hình học cơ bản của phần mềm và quan
hệ giữa chúng
Kỹ năng: Thông qua phần mềm học sinh biết và hiểu các ứng dụng của phần mềm
trong toán học, thiết lập quan hệ toán học giữa các đối tượng này.
- Biết cách sử dụng phần mềm để vẽ các hình học trong chương trình lớp 8.
Thái độ: Hs ý thức trong việc ứng dụng phần mềm trong học tập của mình .
II/ Chuẩn bị:
- Sách giáo khoa, giáo án, tài liệu tin học có liên quan.
- Đọc tài liệu ở nhà trớc khi
III. Tiến trình lên lớp:
ổn định tổ chức lớp :

1. Bài mới:
Hoạt động của GVvà HS
Nội dung ghi bảng
Hoạt động1: Đối tợng hình học
? Em hiểu thế nào là đối tợng hình
học?
a) Khái niệm đối tợng hình học
Một hình hình học sẽ bao gồm nhiều đối t-
ợng cơ bản. Các đối tợng hình học cơ bản
bao gồm: điểm, đoạn thẳng, đờng thẳng,
tia, hình
Hoạt động 2: Đối tợng tự do và đối tợng phụ thuộc
GV: thế nào là đối tợng tự do và đối
tợng phụ thuộc
HS: Nghiên cứu sgk và màn hình
máy tính để trả lời
Giáo viên nêu các đối tợng phụ thuộc
và cho biết ý nghĩa của nó.
GV: ? dùng công cụ gì để xác định
giao điểm của đờng thẳng và đờng
tròn(học sinh nghiên cứu sgk kết hợp
với màn hình để trả lời)
HS: nhận xét
GV: chốt lại
GV:? Làm thế nào để Hiện/ ẩn danh
sách các đối tợng trên màn hình.
b) Đối tợng tự do và đối tợng phụ thuộc
Em đã đợc làm quen với khái niệm quan
hệ giữa các đối tợng.
Sau đây là một vài ví dụ:

Điểm thuộc đờng thẳng
Cho trớc một đờng thẳng, sau đó xác định
một điểm "thuộc" đờng thẳng này. Chúng
ta có quan hệ "thuộc". Trong trờng hợp
này đối tợng điểm có quan hệ thuộc đối t-
ợng đờng thẳng.
Đờng thẳng đi qua hai điểm
Cho trớc hai điểm. Vẽ một đờng thẳng đi
qua hai điểm này. Chúng ta có quan hệ "đi
qua". Trong trờng hợp này đờng thẳng có
quan hệ và phụ thuộc vào hai điểm cho tr-
ớc.
Giao của hai đối tợng hình học
Cho trớc một hình tròn và một đờng thẳng.
Dùng công cụ để xác định giao của
đờng thẳng và đờng tròn.
c) Danh sách các đối tợng trên màn
hình
Phần mềm Geogebra cho phép hiển thị
HS: trả lời
HS: nhận xét
GV: chốt lại
GV:? Làm thế nào để Thay đổi thuộc
tính của đối tợng
HS: trả lời
HS: nhận xét
GV: chốt lại
danh sách tất cả các đối tợng hình học hiện
đang có trên trang hình.
Dùng lệnh Hiển thị Hiển thị danh

sách đối tợng để hiện/ẩn khung thông tin
này trên màn hình.
d) Thay đổi thuộc tính của đối tợng
Các đối tợng hình đều có các tính chất nh
tên (nhãn) đối tợng, cách thể hiện kiểu đ-
ờng, màu sắc,
thao tác thờng dùng để thay đổi tính chất
của đối tợng.
ẩn đối tợng: Để ẩn một đối tợng, thực
hiện các thao tác sau:
1. Nháy nút phải chuột lên đối tợng;
2. Huỷ chọn Hiển thị đối tợng trong
bảng chọn:
ẩn/hiện tên (nhãn) của đối tợng: Để
làm ẩn hay hiện tên của đối tợng, thực hiện
các thao tác sau:
1. Nháy nút phải chuột lên đối tợng
trên màn hình;
2. Huỷ chọn Hiển thị tên trong bảng
chọn.
Thay đổi tên của đối tợng: Muốn thay
đổi tên của một đối tợng, thực hiện các
thao tác sau:
1. Nháy nút phải chuột lên đối tợng
trên màn hình;
2. Chọn lệnh Đổi tên trong bảng
chọn:
Khung danh
sách các đối
tợng tự do

và phụ
thuộc trên
màn hình
3. Nháy nút áp dụng để thay đổi,
nháy nút Huỷ bỏ nếu không muốn
đổi tên.
Đặt/huỷ vết chuyển động của đối t-
ợng:
Để đặt/huỷ vết chuyển động cho một đối t-
ợng trên màn hình thực hiện thao tác sau:
1. Nháy nút phải chuột lên đối tợng;
2. Chọn Mở dấu vết khi di chuyển.
Để xoá các vết đợc vẽ, nhấn tổ hợp phím
Ctrl+F.
Xoá đối tợng: Muốn xoá hẳn đối tợng,
ta có thể thực hiện một trong các thao tác
sau:
1. Dùng công cụ chọn đối tợng
rồi nhấn phím Delete.
2. Nháy nút phải chuột lên đối tợng
và thực hiện lệnh Xoá.
Chọn công cụ trên thanh công cụ và
nháy chuột lên đối tợng muốn xoá.
2. Củng cố:
- Giáo viên hệ thống lại toàn bộ nội dung bài học.
3. Hớng dẫn về nhà:
- Học bài theo sách giáo khoa và vở ghi
- Ôn lại các kiến thức chính đã học, làm đi làm lại nhiều lần.
- Học kĩ lí thuyết, đọc bài mới để giờ sau học.
IV- R ỳt Kinh Nghim :


×