Giáo án Tin học 8 - Tiết 39-53 - Năm học 2008-2009 - Hoàng Quốc Long

Giáo án Tin học 8 - Tiết 39-53 - Năm học 2008-2009 - Hoàng Quốc Long

I/ MỤC TIÊU:

1. Kiến thức:

- Biết nhu cầu cần có câu lệnh 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 lặp với số lần biết trước for .do trong pascal.

2. Kỹ năng: Viết đúng được lệnh for .do trong một số tình huống đơn giản.

3.Thái độ: Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ứng dụng.

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. ĐỒ DÙNG DẠY HỌC

 Thước, bảng phụ.

IV. TIẾN TRÌNH LÊN LỚP:

1. Tổ chức.

2. Kiểm tra. (5 phút)

- Kiểm tra sự chuẩn bị của học sinh .

- ? Trình bày cấu trúc của câu lệnh rẽ nhánh trong pascal, nêu ý nghĩa hoạt động của câu lệnh?

- ? Mô tả thuật thoán tính tổng của 100 số tự nhiên đầu tiên?

3. Bài mới:

 Vào bài mới: (1) Để máy tính thực hiện tính tổng của 100 số tự nhiên đầu tiên thì chúng ta phải ra lệnh cho máy bằng lệnh nào? Để trả lời cho câu hỏi trên chúng ta đi vào nghiên cứu bài học ngày hôm nay. Giáo viên nghi nhàn đầu bài lên bảng.

 

doc 40 trang Người đăng tranhiep1403 Lượt xem 960Lượt tải 0 Download
Bạn đang xem 20 trang mẫu của tài liệu "Giáo án Tin học 8 - Tiết 39-53 - Năm học 2008-2009 - Hoàng Quốc Long", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tiết 39: Bài 7: Câu lệnh lặp
 Ngày 1 tháng 2 năm 2009
Lớp
Ngày dạy
HS vắng
8A
8B
I/ Mục tiêu:
1. Kiến thức: 
- Biết nhu cầu cần có câu lệnh 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 lặp với số lần biết trước for .do trong pascal.
2. Kỹ năng: Viết đúng được lệnh for ..do trong một số tình huống đơn giản.
3.Thái độ: Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ứng dụng.
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. Đồ dùng dạy học
	Thước, bảng phụ.
IV. Tiến trình lên lớp:
Tổ chức.
Kiểm tra. (5 phút)
Kiểm tra sự chuẩn bị của học sinh .
? Trình bày cấu trúc của câu lệnh rẽ nhánh trong pascal, nêu ý nghĩa hoạt động của câu lệnh?
? Mô tả thuật thoán tính tổng của 100 số tự nhiên đầu tiên?
Bài mới:
 Vào bài mới: (1’) Để máy tính thực hiện tính tổng của 100 số tự nhiên đầu tiên thì chúng ta phải ra lệnh cho máy bằng lệnh nào? Để trả lời cho câu hỏi trên chúng ta đi vào nghiên cứu bài học ngày hôm nay. Giáo viên nghi nhàn đầu bài lên bảng.
 Bài mới: 
TG
Hoạt động của giáo viên
Hoạy động của học sinh
6
Hoạt động 1: Các công việc phải thực hiện nhiều lần 
?Hàng ngày chúng ta thường phải làm một số việc lặp đi lặp lại một số lần, em hãy lấy ví dụ về một số việc hàng ngày em phải làm
- HS: một em lấy một số ví dụ
- GV: Ghi ví dụ của học sinh lên bảng
 - HS: một em khác lấy thêm một số ví dụ
? Qua những ví dụ các bạn vừa lấy ra trên bảng thì những công việc nào chúng ta đã biết trước số lần lặp đi lặp lại và công việc nào chúng ta chưa biết số lần lặp lại của nó?
- HS: Tách ví dụ thành hai loại (một loại đã biết trước số lần lặp và một loại chưa biêt số lần lặp )
- GV: Nhận xét và chốt lại.
-HS: nghiên cứu ví dụ 1 SGK - 56,57.
- GV: phân tích ví dụ 1.
- HS: Nghe, nghi chép
- HS: Mô tả lại thuật toán, phân tích thuật toán.
? Qua hai ví dụ trên, các em hãy chỉ ra những công việc được lặp đi lặp lại?
Hoạt động 2: Câu lện lặp - một lệnh thay cho nhiều lệnh
-HS: Chỉ ra công việc lặp lại ở vd1 và vd2
- GV: Kết luận.
Hoạt động 3: Ví dụ về câu lệnh lặp
- GV: Trình bày cấu trúc vòng lặp For ..to..do
..
- HS: Ghi cấu trúc vòng lặp vào vở.
GV: Giải thích từng thành phần trong cấu trúc lệnh.
-HS: Nghe, ghi chép.
GV: vận dụng câu lệnh viết vòng lặp cho ví dụ 1 phần 1
Var i, tong: integer;
Begin
Tong:=0;
For i: = 1 to 5 do
Tong:= tong + i;
Write(‘tong=’,tong);
Readln;
End.
Ví dụ về câu lệnh lặp. 
-GV: Trình bày cấu trúc của câu lệnh lặp lùi trong pascal
For ..downto.do
HS: Ghi chép cấu trúc vào vở
GV: Giải thích hoạt động của câu lện.
- HS: Đọc và tìm hiểu chương trình
- HS: một em đứng tại chỗ phân tích hoạt động của ví dụ.
- HS: Các em khác thảo luận và cho ý kiến.
- GV: cho chạy chương trình mẫu đã gõ trước trong máy, yêu cầu học sinh quan sát kết quả.
- GV: Giải thích kết quả của chương trình
- HS: Đọc và tìm hiểu chương trình
- HS: một em đứng tại chỗ
phân tích hoạt động của ví dụ.
- HS: Các em khác thảo luận và cho ý kiến.
- GV: Trình bày cấu trúc câu lệnh ghép
- HS: Nghe, ghi chép.
- GV: cho chạy chương trình mẫu đã gõ trước trong máy, yêu cầu học sinh quan sát kết quả.
- GV: Giải thích kết quả của chương trình
- GV: Đưa đề bài lên bảng
- HS: 1 em lên bảng làm vd5, 1 em lên làm vd6.(mô tả thuật toán)
ở dưới lớp cá em làm bài theo nhóm, mỗi dãy làm một bài, dãy giữa làm vd5
- HS: Đại diện của mỗi dãy nhận xét thuật toán trên bảng.
-GV: Giúp HS sửa lại đúng thuật toán
-HS: 2 em lên bảng viết chương trình cho 2 bài. (5’)
- HS: ở dưới hoạt động theo nhóm, chia dãy như ban đầu.
- HS: đại diện mỗi dãy nhận xét bài viết trên bảng.
GV: Giúp học sinh sửa chương trình cho đúng và chạy chương trình trên máy.
- HS: Quan sát kết quả.
1. Các công việc phải thực hiền nhiều lần
- Công việc không biết trước số lần lặp lại: học bài cho đến khi thuộc hết các bài, 
- Công việc đã biết trước số lần lặp: đi học mỗi sáng 5 tiết, mỗi ngày tập 7 bài thể dục buổi sáng, đánh răng mỗi ngày 3 lần,
=> Để chỉ cho máy tính thực hiện đúng công việc, trong nhiều trường hợp khi viết một chương trình máy tính chúng ta cũng phải viết lặp lại nhiều câu lệnh thực hiện một phép tính nhất định.
VD1: Để tính 5 số tự nhiên đầu tiên ta có thể viết như sau:
begin
I=0; Tong:=0;
I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
I:=i+1; Tong:=Tong+i;
Readln; end.
2. Câu lện lặp - một lệnh thay cho nhiều lệnh
VD1: Vẽ 3 hình vuông giống nhau.
- thuật toán (SGK T56,57)
VD2: Tính tổng của 100 số tự nhiên đầu tiên.
- thuật toán: (đã nghiên cứu ở bài học số 5)
=> Kết luận: - Cáng mô tả các hoạt động lặp trong thuật toán như trong 2 ví dụ trên được 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 với một câu lệnh. Đó là câu lệnh lặp.
3. Ví dụ về câu lệnh lặp
- Trong pascal câu lệnh lặp có dạng:
+Câu lệnh lặp dạng tiến:
For := to do ;
Trong đó: for, to, do là các từ khoá, Biến đếm là biến đơn có kiểu nguyên (có thể là kiểu kí tự hoặc kiểu đoạn con)
Giá trị đầu, giá trị cuối là số cụ thể hoặc là biểu thức có kiểu cùng kiểu với biến đếm, 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 hoặc câu lệnh kép.
- Câu lệnh sẽ được thực hiện nhiều lần, mỗi lần thực hiện câu lệnh là một lần lặp và sau mỗi lần lặp biến đếm sẽ tự động tăng lên 1 đơn vị, tăng cho đến khi giá trị của biến đếm lớn hơn giá trị cuối thì vòng lặp được dừng lại.
Ví dụ về câu lệnh lặp (tiếp)
- Cấu trúc của câu lệnh lặp lùi:
For := downto do ;
- Câu lệnh sẽ được thực hiện nhiều lần, mỗi lần thực hiện câu lệnh là một lần lặp và sau mỗi lần lặp biến đếm sẽ tự động giảm đi1 đơn vị, giảm cho đến khi giá trị của biến đếm nhỏ hơn giá trị đầu thì vòng lặp được dừng lại.
-số lần lặp = giá trị cuối-giá trị đầu+1
=> for do là cấu trúc lặp với số lần lặp biết trước.
- Ví dụ 3 (SGK-58) in ra màn hình thứ tự lần lặp.
Program lap;
Var i: integer;
Begin
For i:=1 to 10 do
Writeln(‘day la lan lap thu’, i);
Readln;
End.
- VD4 (SGK-58) Viết chương trình
đưa ra màn hình những chữ “0” theo hình trứng rơi.
Program trung_roi;
Uses crt;
Var i: integer;
Begin
Clrscr;
For i:=1 to 10 do
begin
Writeln(‘0’); delay(100); 
end;
Readln;
End.
- Tập hợp các câu lệnh con được đặt trong cặp từ khoá begin end; được gọi là câu lệnh ghép. 
4. Tính tổng và tích bằng câu lệnh lặp
Ví dụ 5. Tính tổng của N số tự nhiên đầu tiên.
(Chương trình SGK)
Ví dụ 6. Tính day thưa của N số tự nhiên đầu tiên.
(Chương trình SGK)
Củng cố: (2’)
 Giáo viên hệ thống lại toàn bộ nội dung bài học
Hướng dẫn học ở nhà (2’)
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.
Học kĩ lí thuyết, viết chương trình tính tông 100 số tự nhiên, N số tự nhiên đầu tiên.
Làm các bài tập còn lại,
Đọc bài mới để giờ sau học.
V. Rút kinh nghiệm
 Tiến trình bài giảng chậm, học sinh khó hiểu, GV phải làm việc nhiều.
Tiết 40: Bài tập
Ngày 03 tháng 02 năm 2009
Lớp
Ngày dạy
HS vắng
8A
8B
I/ Mục tiêu:
1. Kiến thức Củng cố kiến thức vòng lặp với số lần biết trước và câu lệnh ghép
2. Kỹ năng: Vận dụng vòng lặp for .to.do và câu lệnh ghép viết một số bài toán đơn giản.
3. Thái độ Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ứng dụng.
III/ Phương pháp 
Gợi mở, vấn đáp, nhóm
IIi/ 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 
Iv. Tiến trình lên lớp:
Tổ chức.
Kiểm tra. ( 5 phút)
Kiểm tra sự chuẩn bị của học sinh .
? Sử dụng vòng lặp for  do viết chương trình tính tổng của 10 số tự nhiên đầu tiên?
Bài mới:
TG
Hoạt động của thầy và trò
Nội dung
4
5
5
9
3
9
Hoạt động 1: Bài tập dạng lí thuyết. 
GV: Đưa ra đề bài toán, yêu cầu học sinh nghiên cứu theo nhóm.
-HS: Hoạt động theo nhóm tìm câu trả lời.
- HS: Đại diện của hai nhóm trình bày kết quả của nhóm.
-GV: Nhận xét kết quả cuối cùng.
- GV: Đưa bài tập 2 lên bảng, yêu cầu một học sinh đứng tại chỗ trả lời.
- HS: Một học sinh đứng tại chỗ trả lời bài tập 2. một học sinh khác đứng tại chỗ nhận xét.
- GV: Kết luận kết quả của bài 2.
-GV: GV: Đưa ra đề bài toán, yêu cầu học sinh nghiên cứu theo nhóm.
-HS: Hoạt động theo nhóm tìm câu trả lời.
- HS: Đại diện của hai nhóm trình bày kết quả của nhóm.
- GV: Nhận xét.
GV: Đưa ra đề bài toán và yêu cầu một học sình đứng tại vị trí để trả lời bài tập.
-HS: 1em đứng tại vị trí trả lời, 1 em khác nhận xét.
- GV: Nhận xét kết quả câu trả lời của 2 bạn.
GV: Đưa bài tập
HS: Suy luận kết quả theo lí thuyết
GV: Ghi kết quả suy luận của học sinh lên bảng
HS: gõ chương trình vào máy và chạy thử
HS: So sánh kết quả nhận được với kết quả đã suy lận
1 HS giải thích kết quả thu được
GV Đưa ra bài tập 6.
HS: Làm việc theo nhóm, sau 5 phút đại diện của 2 nhóm sẽ lên báo báo kết quả.
Các nhóm khác nhận xét
GV: Giúp các em hoàn thành thuật toán.
Bài 1: SGK (T60)
Bài 2: SGK (T60)
- Câu lệnh lặp có tác dụng chỉ dẫn cho máy tính thực hiện lặp lại một câu lệnh hay một nhóm câu lệnh với một số lần nhất định.
- Câu lệnh lặp làm giảm nhẹ công sức của người viết chương trình.
Bài 3 SGK (T60)
- Điều kiện cần kiểm tra trong câu lệnh lặp for  do là giá trị của biến đếm phải nằm trong đoạn [giá trị đầu, giá trị cuối ], nếu thoả mãn điều kiện đó thì câu lệnh sẽ được thực hiện, nếu không thoả mãn câu lệnh sẽ bị bỏ qua.
Bài 5 SGK (T61)
Tất cả các câu lệnh đều không hợp lệ vì:
a) giá trị đầu lớn hơn giá trị cuối
b) giá trị đầu và giá trị cuối có kiểu là số thực không cùng kiểu với biến đếm
c) sai cấu trúc câu lệnh
d) sai cấu trúc câu lệnh
e) biến đếm có kiểu là kiểu số thực nên không hợp lệ.
Bài 4 SGK (T61)
Giá trị của j sau mỗi lần lặp sẽ được tăng thêm 2 đơn vị
2, 4, 6, 8, 10, 12.
Bài 6 SGK (T 61)
- Mô tả thuật toán.
Bước 1: nhập n
 A<-0, i<-1
Bước 2: A<- 2\i(i+2)
Bước 3: i<-i+1
Bước 4: nếu i<=n quay về bước 2
Bước 5: ghi kết quả A ra màn hình và kết thúc thuật toán.
Củng cố: (2 phút)
Giáo viên hệ thống lại toàn bộ nội dung bài học. 
Giáo viên nhận xét tiết học, rút kinh nghiệm tiết học.
Hướng dẫn về nhà: ( 3 phút)
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.
Học kĩ lí thuyết, viết chương trình tính tông 100 số tự nhiên, N số tự nhiên đầu tiên.
 1. tính tổng của n số tự nhiên đầu tiên
 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 Đọc bài mới để giờ sau học.
về nhà viết chương trình pascal bài 6 SGK (T61)
Đọc bài mới để gi ... 
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 fordo thay cho cõu lệnh whiledo. 
	Bước 4. Củng cố (3 phút):
- 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
Bước 5. Hướng dẫn về nhà ( 2 phút)
- Về nhà xem lại bài học tiết sau chỳng ta học tiếp.
V - RÚT KINH NGHIỆM
..
..
Tiết 52 Bài thực hành 6
 Sử dụng lệnh lặp While...... do.....
Ngày 20 tháng 3 năm 2009
Lớp
Ngày dạy
HS vắng
8A
8B
 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, cẩn thận, chính xác, khoa học
II - PHƯƠNG PHÁP
- Thuyết trỡnh, giảng giải, vấn đỏp, nhóm.
III. Đò dùng dạy học
1. Giỏo viờn: giỏo ỏn, phấn màu, Phòng máy.
2. Học sinh: Kiến thức cũ, sỏch, vở.
IV - TIẾN TRèNH LấN LỚP
Bước 1: ổn định tổ chức. 
Bước 2: Kiểm tra bài cũ (3 phút)
Sự khác biệt giữa câu lệnh lặp với số lần lặp cho trước và câu lệnh lặp với số lần lặp chưa biết trước là ở các điểm sau đây:
Như tên gọi của nó, câu lệnh lặp với số lần lặp cho trước chỉ thị cho máy tính thực hiện một lệnh hoặc một nhóm lệnh với số lần đã được xác định từ trước, còn với câu lệnh lặp với số lần lặp chưa biết trước thì số lần lặp chưa được xác định trước. 
Trong câu lệnh lặp với số lần cho trước, điều kiện là giá trị của một biến đếm có giá trị nguyên đã đạt được giá trị lớn nhất hay chưa, còn trong câu lệnh lặp với số lần lặp chưa biết trước, điều kiện tổng quát hơn nhiều, có thể là kiểm tra một giá trị của một số thực, cũng có thể là một điều kiện tổng quát khác, ví dụ như một số có chia hết cho 3 hay không,... 
Trong câu lệnh lặp với số lần cho trước, câu lệnh được thực hiện ít nhất một lần, sau đó kiểm tra điều kiện. Trong câu lệnh lặp với số lần chưa xác định trước, trước hết điều kiện được kiểm tra. Nếu điều kiện được thoả mãn, câu lệnh mới được thực hiện. Do đó có thể có trường hợp câu lệnh hoàn toàn không được thực hiện.
Bước 3. Nội dung bài mới
TG
HOẠT ĐỘNG CỦA THẦY VÀ TRề
NỘI DUNG KIẾN THỨC
38
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
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).
Đọ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 i0) 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.
Gừ, dịch và chạy thử chương trỡnh với một vài độ chớnh xỏc khỏc nhau.
	Bước 4. Củng cố (3’)
- 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
Bước 5. Hướng dẫn về nhà. (2’)
- Về nhà xem lại bài học tiết sau chỳng ta học tiếp.
V - RÚT KINH NGHIỆM
..
..
********************** — & – *********************
Tiết 53 BÀI TẬP
Ngày 20 tháng 3 năm 2009
Lớp
Ngày dạy
HS vắng
8A
8B
 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, cẩn thận, chính xác, khoa học
II - PHƯƠNG PHÁP
- Thuyết trỡnh, giảng giải, vấn đỏp, nhóm.
III. Đò dùng dạy học
1. Giỏo viờn: giỏo ỏn, phấn màu, Phòng máy.
2. Học sinh: Kiến thức cũ, sỏch, vở.
IV - TIẾN TRèNH LấN LỚP
Bước 1: ổn định tổ chức. 
Bước 2: Kiểm tra bài cũ (3 phút)
Cho một vài vớ dụ về hoạt động được thực hiện lặp lại trong cuộc sống hàng ngày.
Hóy cho biết tỏc dụng của cõu lệnh lặp.
Bước3: Nội dung bài mới
TG
HOẠT ĐỘNG CỦA THẦY VÀ TRề
NỘI DUNG KIẾN THỨC
40
GV: Đưa ra cỏc bài tập ở SGK và gọi học sinh lờn bảng trả lời.
Bài 2: Cõu lệnh lặp cú tỏc dụng làm đơn giản và giảm nhẹ cụng sức của người viết chương trỡnh.
Bài 3: Chỳng ta núi rằng khi thực hiện cỏc hoạt động lặp, chương trỡnh kiểm tra một điều kiện. Với lệnh lặp 
for := to do ;
của Pascal, điều kiện cần phải kiểm tra chớnh là giỏ trị của biến đếm lớn hơn giỏ trị cuối. Nếu điều kiện khụng được thoả món, cõu lệnh được tiếp tục thực hiện; ngược lại, chuyển sang cõu lệnh tiếp theo trong chương trỡnh.
Bài 4: 12
Bài 5: Trừ d), tất cả cỏc cõu lệnh đều khụng hợp lệ: 
a) Giỏ trị đầu phải nhỏ hơn giỏ trị cuối; 
b) Cỏc giỏ trị đầu và giỏ trị cuối phải là số nguyờn; 
c) Thiếu dấu hai chấm khi gỏn giỏ trị đầu; 
d) Thừa dấu chấm phẩy thứ nhất, nếu như ta muốn lặp lại cõu lệnh writeln('A') mười lần, ngược lại cõu lệnh là hợp lệ; 
e) Biến x đó được khai bỏo như là biến cú dữ liệu kiểu số thực và vỡ thế khụng thể dựng để xỏc định giỏ trị đầu và giỏ trị cuối trong cõu lệnh lặp.
Bài 6: Thuật toỏn tớnh tổng 
A = 
Bước 1. Gỏn A ơ 0, i ơ 1. 
Bước 2. A ơ .
Bước 3. i ơ i + 1. 
Bước 4. Nếu i Ê n, quay lại bước 2. 
Bước 5. Ghi kết quả A và kết thỳc thuật toỏn.
Câu 3) Khi thực hiện cõu lệnh lặp, chương trỡnh kiểm tra một điều kiện. Với lệnh lặp 
for := to do ;
của Pascal, điều kiện cần phải kiểm tra là gỡ?
Chương trỡnh Pascal sau đõy thực hiện gỡ?
var i: integer;
begin
for i:=1 to 1000 do;
end.
Cỏc cõu lệnh Pascal sau cú hợp lệ khụng, vỡ sao?
for i:=100 to 1 do writeln('A');
for i:=1.5 to 10.5 do writeln('A');
for i=1 to 10 do writeln('A');
for i:=1 to 10 do; writeln('A');
var x: real; begin for x:=1 to 10 do writeln('A'); end.
Hóy mụ tả thuật toỏn để tớnh tổng sau đõy:
A = .
	Bứơc 4. Củng cố (3’)
- Củng cố các bài đã chữa
- Hiểu cỏc hoạt động lặp với số lần biết trước
Bứơc 5. Hướng dẫn về nhà (1’)
- Về nhà xem lại bài học tiết sau chỳng ta học tiếp.
V - RÚT KINH NGHIỆM
..
..
********************** — & – *********************
Tiết 54 BÀI TẬP (T2)
Ngày 20 tháng 3 năm 2009
Lớp
Ngày dạy
HS vắng
8A
8B
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, Cẩn thận, chính xác, khoa học, yêu thích môn học.
II - PHƯƠNG PHÁP
- Thuyết trỡnh, giảng giải, vấn đỏp, nhóm.
III. Đò dùng dạy học
1. Giỏo viờn: giỏo ỏn, phấn màu, Phòng máy.
2. Học sinh: Kiến thức cũ, sỏch, vở.
IV - TIẾN TRèNH LấN LỚP
Bước 1: ổn định tổ chức. 
Bước 2: Kiểm tra bài cũ (3 phút)
? Hóy tỡm hiểu cỏc thuật toỏn sau đõy và cho biết khi thực hiện thuật toỏn, mỏy tớnh sẽ thực hiện bao nhiờu vũng lặp? Khi kết thỳc, giỏ trị của S bằng bao nhiờu? Viết chương trỡnh Pascal thể hiện cỏc thuật toỏn đú.
a) Thuật toỏn 1
Bước 1. S ơ 10, x ơ 0.5.
Bước 2. Nếu S Ê 5.2, chuyển tới bước 4.
Bước 3. S ơ S - x và quay lại bước 2.
Bước 4. Thụng bỏo S và kết thỳc thuật toỏn.
Bước 3. Nội dung bài mới.
TG
HOẠT ĐỘNG CỦA THẦY VÀ TRề
NỘI DUNG KIẾN THỨC
GV: Đưa ra cỏc bài tập ở SGK và gọi học sinh lờn bảng trả lời.
1) Nờu một vài vớ dụ về hoạt động lặp với số lần chưa biết trước!
2) Hóy phỏt biểu sự khỏc biệt giữa cõu lệnh lặp với số lần lặp cho trước và cõu lệnh lặp với số lần lặp chưa biết trước. 
3) Hóy tỡm hiểu cỏc thuật toỏn sau đõy và cho biết khi thực hiện thuật toỏn, mỏy tớnh sẽ thực hiện bao nhiờu vũng lặp? Khi kết thỳc, giỏ trị của S bằng bao nhiờu? Viết chương trỡnh Pascal thể hiện cỏc thuật toỏn đú.
a) Thuật toỏn 1
Bước 1. S ơ 10, x ơ 0.5.
Bước 2. Nếu S Ê 5.2, chuyển tới bước 4.
Bước 3. S ơ S - x và quay lại bước 2.
Bước 4. Thụng bỏo S và kết thỳc thuật toỏn.
b) Thuật toỏn 2
Bước 1. S ơ 10, n ơ 0.
Bước 2. Nếu S ≥ 10, chuyển tới bước 4.
Bước 3. n ơ n + 3, S ơ S - n quay lại bước 2.
Bước 4. Thụng bỏo S và kết thỳc thuật toỏn.
4) Hóy tỡm hiểu mỗi đoạn lệnh sau đõy và cho biết với đoạn lệnh đú chương trỡnh thực hiện bao nhiờu vũng lặp? Hóy rỳt ra nhận xột của em.
S:=0; n:=0;
while S<=10 do
 begin n:=n+1; S:=S+n end;
S:=0; n:=0;
while S<=10 do
 n:=n+1; S:=S+n;
5) Hóy chỉ ra lỗi trong cỏc cõu lệnh sau đõy:
a)X:=10; while X:=10 do X:=X+5;
b)X:=10; while X=10 do X=X+5;
c)S:=0; n:=0; while S<=10 do n:=n+1; S:=S+n;
Bài 2: Sự khỏc biệt:
a) Ccõu lệnh lặp với số lần lặp cho trước chỉ thị cho mỏy tớnh thực hiện một lệnh hoặc một nhúm lệnh với số lần đó được xỏc định từ trước, cũn với cõu lệnh lặp với số lần lặp chưa biết trước thỡ số lần lặp chưa được xỏc định trước. 
b)Lệnh lặp với số lần cho trước, điều kiện là giỏ trị của một biến đếm cú giỏ trị nguyờn đó đạt được giỏ trị lớn nhất hay chưa, cũn trong cõu lệnh lặp với số lần lặp chưa biết trước, điều kiện tổng quỏt hơn nhiều, cú thể là kiểm tra một giỏ trị của một số thực
c) Lệnh lặp với số lần cho trước, cõu lệnh được thực hiện ớt nhất một lần, sau đú kiểm tra điều kiện. Lệnh lặp với số lần chưa xỏc định trước, trước hết điều kiện được kiểm tra. Nếu điều kiện được thoả món, cõu lệnh mới được thực hiện. 
Bài 3: a) Thuật toỏn 1: 10 vũng lặp được thực hiện. Khi kết thỳc thuật toỏn S = 5.0. Đoạn chương trỡnh Pascal tương ứng:
S:=10; x:=0.5;
while S>5.2 do S:=S-x;
writeln(S);
b) Thuật toỏn 2: Khụng vũng lặp nào được thực hiện vỡ ngay từ đầu điều kiện đó khụng được thỏa món nờn cỏc bước 2 và 3 bị bỏ qua. S = 10 khi kết thỳc thuật toỏn. Đoạn chương trỡnh Pascal tương ứng:
S:=10; n:=0;
while S<10 do
 begin n:=n+3; S:=S-n end;
writeln(S);
Bài 4: a) Chương trỡnh thực hiện 5 vũng lặp. b) Vũng lặp trong chương trỡnh được thực hiện vụ tận vỡ sau cõu lệnh n:=n+1; cõu lệnh lặp kết thỳc nờn điều kiện S=0 luụn luụn được thỏa món.
Bài 5: a) Thừa dấu hai chấm trong điều kiện; b) Thiếu dấu hai chấm trong cõu lệnh gỏn; c) Thiếu cỏc từ khúa begin và end trước và sau cỏc lệnh n:=n+1; S:=S+n, do đú vũng lặp trở thành vụ tận.
	D - CỦNG CỐ (3’)
- 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
E - HƯỚNG DẪN VỀ NHÀ (1’)
- Về nhà xem lại bài học tiết sau chỳng ta học tiếp.
V - RÚT KINH NGHIỆM
..
..

Tài liệu đính kèm:

  • docTiet 39-53.doc