Tiết 53. BÀI TẬP
I.Mục tiêu::
+ KiÓm tra vËn dông 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;
+ Hiểu hoạt động của câu lệnh lặp với số lần chưa biết trước while.do trong Pascal.
II. Chuẩn bị
GV: SGK
HS: Xem trước bài ở nhà
III. Tiến trình bài giảng
Ngµy so¹n: 07/03/2010 tiÕt theo ppct: 53 Ngµy d¹y: 10/03/2010 Tiết 53. BÀI TẬP I.Mục tiêu:: + KiÓm tra vËn dông 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; + Hiểu hoạt động của câu lệnh lặp với số lần chưa biết trước while...do trong Pascal. II. Chuẩn bị GV: SGK HS: Xem trước bài ở nhà III. Tiến trình bài giảng 1. Ổn định ớp 2. Kiểm tra bài cò Nªu cÊu tróc lÖnh víi sè lÇn cha biÕt tríc? 3. Bài mới Hoạt động của thầy và trò Ghi bảng + Gv : Nh¾c l¹i cú pháp lệnh while do .; Lu ý hs c¸ch thùc hiÖn Lu ý tr¸nh lÖnh lÆp v« h¹n lÇn Yªu cÇu hs lµm bµi tËp 2 SGK: 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 cha biÕt tríc. HS ph¸t biÓu GV nhËn xÐt, ®¸nh gi¸ Hs ®äc bµi tËp 3 Bµi tËp 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. 1) ¤n tËp lý thuyÕt: 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. 2) Bµi tËp: Bµi 2: 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 cha 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 cha biÕt tríc th× sè lÇn lÆp cha ®î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 cha, cßn trong c©u lÖnh lÆp víi sè lÇn lÆp cha biÕt tríc, 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 cha 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µ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); Cñng cè: HS ®äc ghi nhí SK "================================================== Ngµy so¹n: 09/03/2010 tiÕt theo ppct: 54 Ngµy d¹y: 11/03/2010 TiÕt 54. BÀI TẬP I.Mục tiêu: + KiÓm tra vËn dông 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; + Hiểu hoạt động của câu lệnh lặp với số lần chưa biết trước while...do trong Pascal. II. Chuẩn bị GV: SGK HS: Xem trước bài ở nhà III. Tiến trình bài giảng 1. Ổn định ớp 2. Kiểm tra bài cò Nªu cÊu tróc lÖnh víi sè lÇn cha biÕt tríc? 3. Bài mới Hoạt động của thầy và trò Ghi bảng + Gv : Nh¾c l¹i cú pháp lệnh while do .; Lu ý hs c¸ch thùc hiÖn Lu ý tr¸nh lÖnh lÆp v« h¹n lÇn Yªu cÇu hs lµm bµi tËp 4 SGK: 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; GV yªu cÇu hs tr×nh bµy Yªu cÇu hs lµm bµi tËp 5 H·y chØ ra lçi trong c¸c c©u lÖnh sau ®©y: X:=10; while X:=10 do X:=X+5; X:=10; while X=10 do X=X+5; S:=0; n:=0; while S<=10 do n:=n+1; S:=S+n; 1) ¤n tËp lý thuyÕt: 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. 2) Bµi tËp: 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. NhËn xÐt: Trong c©u lÖnh thùc hiÖn, ®iÒu kiÖn cÇn ph¶i ®îc thay ®æi ®Ó sím hay muén chuyÓn sang tr¹ng th¸i kh«ng tháa m·n. Khi ®ã vßng lÆp míi ®îc kÕt thóc sau h÷u h¹n bíc. §Ó lµm ®îc ®iÒu nµy, c©u lÖnh trong c©u lÖnh lÆp while..do thêng lµ c©u lÖnh ghÐp. 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. 4. Cñng cè: HS ®äc ghi nhí SK
Tài liệu đính kèm: