Giáo án Tin học 9 tiết tuần 15 đến 33

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.

 

doc82 trang | Chia sẻ: dung89st | Lượt xem: 1018 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Giáo án Tin học 9 tiết tuần 15 đến 33, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
ö 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 thùc hµnh.
II/ ChuÈn bÞ: 
- S¸ch gi¸o khoa, gi¸o ¸n, tµi liÖu tin häc cã liªn quan. Phßng m¸y
- §äc tµi liÖu ë nhµ tr­íc khi 
III. TiÕn tr×nh lªn líp:
1. æn ®Þnh tæ chøc líp : 
- KiÓn tra sÜ sè : 
	8A : . 8B :. 8C :.. 8D :. 8E : 
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: Lµm ®Ñp mµn h×nh kÕt qu¶ b»ng lÖnh gotoxy, where (20’)
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 to do
 For to do
;
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
Cñng cè:
Gi¸o viªn hÖ thèng l¹i toµn bé néi dung bµi häc.
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.
Ngàysoạn: 
Ngày dạy:
TuÇn 23:
Gi¶ng ngµy: 
TiÕt 45: Bµi tËp
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.
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:
Tæ chøc.
 - KiÓn tra sÜ sè : 
	8A : . 8B :. 8C :.. 8D :. 8E : 
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:Bµi tËp vËn dông
Gi¸o viªn ®­a ra néi dung bµi tËp,
HS ph©n tÝch bµi to¸n t×m h­íng gi¶i quyÕt.
Gv: h­íng dÉn häc sinh c¸ch lµm vµ viÕt ch­¬ng tr×nh lªn b¶ng vµ yªu cÇu häc sinh ®äc hiÓu.
HS: ®äc l¹i ch­¬ng tr×nh gi¸o viªn ®· viÕt trªn b¶ng vµ t×m hiÓu tõng c©u lÖnh
GV: yªu cÇu mét häc sinh ®øng t¹i vÞ trÝ diÔn t¶ tuÇn tù ý nghÜa cña ch­¬ng tr×nh th«ng qua diÔn t¶ c«ng viÖc cña tõng lÖnh trong ch­¬ng tr×nh.
GV: diÔn t¶ l¹i mét lÇn ®Ó häc sinh hiÓu s©u h¬n vÒ ch­¬ng tr×nh
Gi¸o viªn ®­a ra néi dung bµi tËp,
HS ph©n tÝch bµi to¸n t×m h­íng gi¶i quyÕt.
GV: §­a ra c«ng thøc tÝnh day thõa: 
day thõa = 1*2*3*4*5*.*n
Bµi tËp : NhËp vµo n sè nguyªn tõ bµn phÝm, t×m sè lín nhÊt trong d·y sè võa nhËp
Program tim_max;
Uses crt;
Var i, n, smax, A : integer;
Begin
Clrscr;
Writeln(‘nhap vao n’); readln(n);
Smax:=-23768;
For i:= 1 to n do
Begin
Writeln(‘nhap vao so thu ’,i); readln(A);
If smax<A then smax:=A;
End;
Writeln(‘so lon nhat la’,A); readln
End.
Cñng cè:
Gi¸o viªn hÖ thèng l¹i toµn bé néi dung bµi häc.
NhÊn m¹nh ý nghÜa vµ c«ng dông, c¸ch sö dông vßng lÆp for  do
NhËn xÐt, rut kinh nghiÖm buæi häc.
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.
Ngàysoạn: 
Ngày dạy:
TuÇn 23:
Gi¶ng ngµy: 
TiÕt 46: Bµi tËp
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.
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Ón tra sÜ sè : 
	8A : . 8B :. 8C :.. 8D :. 8E : 
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:Bµi tËp vËn dông
HS: dùa vµo bµi tËp H«m tr­íc viÕt ch­¬ng tr×nh cho bµi to¸n. (viÕt theo nhãm).
§¹i diÖn cña nhãm ®øng lªn b¶ng tr×nh bµy kÕt qu¶. C¸c nhãm kh¸c nhËn xÐt, rót kinh nghiÖm.
GV: KÕt luËn kÕt qu¶ cuèi cïng.
Yªu cÇu mét häc sinh lªn m¸y chÝnh gâ ch­¬ng tr×nh vµo m¸y, c¶ líp söa lçi nÕu cã, cho ch­¬ng tr×nh ch¹y thö, häc sinh quan s¸t kÕt qu¶.
HS: chÐp l¹i ch­¬ng tr×nh ®· ch¹y vµo vëi.
Bµi tËp ViÕt ch­¬ng tr×nh tÝnh day thõa cña n sè tù nhiªn ®Çu tiªn.
Program tinh_day_thua;
Uses crt;
Var i, n : integer; kq: longint;
Begin
Clrscr;
Writeln(‘nhap vao n’); readln(n);
Kq:=1;
For i:= 1 to n do
Kq:=kq*i;
Writeln(‘ket qua la’,kq); readln
End.
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.
Ngàysoạn: 15/2/2009
Ngày dạy:
TuÇn 24:
Gi¶ng ngµy: 
TiÕt 47: 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Ón tra sÜ sè : 
	8A : . 8B :. 8C :.. 8D :. 8E : 
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 
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
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 
- 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.
Ngàysoạn: 15/02/2009
Ngày dạy:
TuÇn 24:
Gi¶ng ngµy: 
TiÕt 48: 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Ón tra sÜ sè : 
	8A : . 8B :. 8C :.. 8D :. 8E : 
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.
Ngµy so¹n :	20/2/2009
Ngµy d¹y :
 8A :	8B :
 8C :	8D :	8E :
TuÇn 25 TiÕt 49:
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. Ổn định lớp
2. 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.
3. Bài mới
Hoạt động của GV và HS
Nội dung
+ 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
+ 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 
Chúng ta biết rằng, nếu n càng lớn thì càng nhỏ, nhưng luôn luôn lớn hơn 0. Với giá trị nào của n thì < 0.005 hoặc < 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 
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 Tn 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 do ;
trong đó:
điều kiện thường là một phép so sánh;
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ì < 0.005 hoặc < 0.003? Chương trình dưới đây tính số n nhỏ nhất để 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.
IV. 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
V. 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
Ngµy so¹n :20/2/2009	
Ngµy d¹y : 8A :	8B :	
	 8C :	8D :	8E :
TuÇn 25 TiÕt 50:	
Bài 8: LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
(Tiếp theo)
I.Mục tiêu:
1. 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.
2. 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.
3. 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
+ 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 
+ G : Cho học sinh quan sát phim trong chương trình 
+ Hs : quan sát 
+ 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 ta có thể sử dụng câu lệnh whiledo thay cho câu lệnh fordo.
+ 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".
+ Hs : Chú ý nghe 
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 
Giải :
Để viết chương trình tính tổng ta có thể sử dụng lệnh lặp với số lần lặp biết trước fordo:
T:=0;
for i:=1 to 100 do T:=T+1/i;
writeln(T);
Nếu sử dụng lệnh lặp whiledo, đoạn chương 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 whiledo thay cho câu lệnh fordo.
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
	- Nghiên cứu trước bài thực hành
Ngµy so¹n :8/3/2009	
Ngµy d¹y : 8A :	8B :	
	 8C :	8D :	8E :
TuÇn 26 TiÕt 51:	
 BµI thùc hµnh 6: Sö dông lÖnh LẶP WHILE ... do 
A. Môc tiªu:
ViÕt ®­îc ch­¬ng tr×nh Pascal cã sö dông vßng lÆp While ... do
BiÕt sö dông c©u lÖnh ghÐp.
RÌn kü n¨ng ®äc hiÓu ch­¬ng tr×nh cã sö dông vßng lÆp while ... do
B. Ph­¬ng ph¸p
1. Ph­¬ng ph¸p: ThuyÕt tr×nh, nªu vÊn ®Ò, vÊn ®¸p
2. Ph­¬ng tiÖn: M¸y tÝnh, .
C. ChuÈn bÞ:
1. Gi¸o viªn:
ChuÈn bÞ mét sè thuËt to¸n vµ ch­¬ng tr×nh .
ChuÈn bÞ m¸y tÝnh,.
2. Häc sinh:- Thùc hiÖn nhiÖm vô vÒ nhµ cña tiÕt tr­íc.
D. TiÕn tr×nh bµi d¹y:
æn ®Þnh líp (1 phót)
KiÓm tra bµi cò (kh«ng kiÓm tra)
Gi¶ng bµi míi:
H§ cña GV vµ hs
Néi dung
H§ 1: Bài 1
Gv: ViÕt ®Ò bµi 1.
Gv: Em h·y cho biÕt input vµ output cña bµi to¸n?
Gv: Chóng ta cÇn tÝnh TBC bao nhiªu sè?
Gv: Nªu c¸ch tÝnh trung b×nh céng 4 sè.
Hs: 
Gv: VËy tÝnh TBC n sè ta lµm ntn?
Hs: 
Gv: TÝnh ntn?
Hs: S S + x; 
Gv: lµm sao ®Ó cã S míi = S cò + x.
Hs: S 0 (b1)
Gv: qluËt S S + x; ®Õn khi nµo dõng?
Hs: Khi dem > n. à ph¸t hiÖn ra ®iÒu kiÖn lÆp cña Whiledo
Gv: Dùa vµo hÖ thèng c©u hái. LÇn l­ît h×nh thµnh thuËt to¸n.
Hs: Dùa vµo thuËt to¸n tr×nh bµy ch­¬ng tr×nh hoµn chØnh.
Gv: Quan s¸t, chØnh söa tõng c©u lÖnh Hs lªn b¶ng tr×nh bµy.
Bµi 1: ViÕt ch­¬ng tr×nh Pascal sö dông c©u lÖnh Whiledo ®Ó tÝnh trung b×nh céng n sè thùc nhËp tõ bµn phÝm. (n, vµ n sè thùc ®­îc nhËp tõ bµn phÝm) 
a. M« t¶ thuËt to¸n.
INPUT: NhËp n, nhËp n sè nguyªn.
OUTPUT: KÕt qu¶ TBC cña n sè nguyªn
B1: NhËp gi¸ trÞ cña n( tÝnh TBC bao nhiªu sè);
 dem¬0; S¬0;
B2: Trong khi dem <= n th× lµm
 NhËp sè thø (1,2,3.n) (cho x)
 S¬S+x; dem¬dem +1;
B3: TÝnh TB ¬S/n;
B4: In kÕt qu¶ TB, kÕt thóc ch­¬ng tr×nh.
b. ViÕt ch­¬ng tr×nh.
Program tinhTB;
Uses Crt;
Var n,dem: integer;
 x, S, TB: real;
BEGIN
 ClrScr;
 Write(‘Muon tinh TB bao nhieu so n=’); Readln(n);
 dem:= 0; S:=0;
 While dem <= n do
 Begin
 Write(‘Nhap so thu’, dem, ‘ = ‘ );readln(x);
 S:= S + x; dem:= dem + 1;
 End;
 TB:= S/n;
 W

File đính kèm:

  • docGiao an Tin hoc 8 nam 2009.doc