Download presentation
Presentation is loading. Please wait.
Published byJakobe Cossey Modified over 9 years ago
1
Bµi 10
2
Bµi to¸n 1: Bµi to¸n 2: C¸c bµi to¸n ®Æt vÊn ®Ò : TÝnh tæng S, víi a lµ sè nguyªn vµ a>2 cho ®Õn khi
3
XuÊt ph¸tLÇn 1LÇn 2 +… LÇn N Mçi lÇn thùc hiÖn gi¸ trÞ tæng S t¨ng thªm bao nhiªu? 1 Sau mçi lÇn thùc hiÖn gi¸ trÞ tæng S t¨ng thªm ( víi i =1; 2; 3 ;...;N) a + i Cïng t×m thuËt to¸n
4
Bµi to¸n 1:Bµi to¸n 2: Cho ®Õn khi Sè lÇn lÆp biÕt tríc. ViÖc t¨ng gi¸ trÞ cho tæng S ®îc lÆp ®i lÆp l¹i cho ®Õn khi ViÖc t¨ng gi¸ trÞ cho tæng S ®îc lÆp ®i lÆp l¹i 100 lÇn. t×m sù kh¸c biÖt Sè lÇn lÆp cha biÕt tríc.
5
CÊu tróc lÆp
6
1. Bµi to¸n ®Æt vÊn ®Ò - D÷ liÖu ra (Output) : Tæng S LËp ch¬ng tr×nh tÝnh tæng sau: - D÷ liÖu vµo (Input) : NhËp N H·y x¸c ®Þnh INPUT vµ OUTPUT cña bµi to¸n trªn! I. LÆp víi sè lÇn lÆp biÕt tríc
7
Ph©n tÝch bµi to¸n víi N = 100 NhËn xÐt: S1 = 1 S2 = S1 + 1/2 S3 = S2 + 1/3 S4 = S3 + 1/4..... S100 = S99 + 1/100 B¾t ®Çu tõ S2 viÖc tÝnh S ®îc lÆp ®i lÆp l¹i 99 lÇn theo quy luËt S sau = S tríc + 1/i víi i ch¹y tõ 2 100..........
8
§ S NhËp N S:= 1 ; i:= 2 i > N ? S:= S + 1/i §a ra S råi kÕt thóc B1: NhËp N; B2: S:=1; i:=2; B3: NÕu i > N th× ®a ra gi¸ trÞ S => KÕt thóc; B4 : S:= S + 1/i; B5: i := i +1 quay l¹i B3. X©y dùng thuËt to¸n i:= i+1
9
FOR <biÕn ®Õm> := <gi¸ trÞ ®Çu> TO <gi¸ trÞ cuèi> DO < c©u lÖnh>; VÝ dô: S:=1; FOR i:=2 TO 100 DO S:=S+1/i; b. D¹ng 2 (d¹ng lïi) FOR <biÕn ®Õm> := <gi¸ trÞ cuèi> DOWNTO <gi¸ trÞ ®Çu> DO <c©u lÖnh >; VÝ dô: S:=1; FOR i:=100 DOWNTO 2 DO S:=S+1/i; a. D¹ng 1 (d¹ng tiÕn) 2. LÆp víi sè lÇn lÆp biÕt tríc
10
Gi¸ trÞ ®Çu, gi¸ trÞ cuèi lµ c¸c biÓu thøc cïng kiÓu víi biÕn ®Õm, gi¸ trÞ ®Çu ph¶i nhá h¬n gi¸ trÞ cuèi. For i:= 100 to 200 do write(i); Gi¸ trÞ biÕn ®Õm ®îc ®iÒu chØnh tù ®éng, v× vËy c©u lÖnh sau DO kh«ng ®îc thay ®æi gi¸ trÞ biÕn ®Õm. Trong ®ã BiÕn ®Õm lµ biÕn kiÓu sè nguyªn hoÆc kÝ tù. For i:=1 to 10 do write(i); For i:=‘a’ to ‘z’ do write(i);
11
Uses crt; Var i,N : Integer; S : real; BEGIN Readln; END. S:=1; FOR i:=2 to N do S := S+1/i; Writeln(‘ Tong S =’,S:8:3); Write(‘ Nhap vao gia tri cua N :’);readln(N); Program Tinh_tong; H·y ¸p dông c©u lÖnh lÆp d¹ng tiÕn ®Ó viÕt ch ¬ng tr×nh gi¶i bµi to¸n ®Æt vÊn ®Ò. LËp ch¬ng tr×nh tÝnh tæng sau :
12
S := 1 ; i := 2; i >N KT S := S +1/ i ; i := i +1; 2.081.83 1.51 432Lît i S 2.28 5 NhËp N S := 1 ; i := 2; 2>5 ? S S S := 1 +1/2 ; i := 2 +1; 3>5 ? S := 1.5+1/3 ; i := 3 +1; 4>5 ? S := 1.83+1/4 ; i := 4 +1; 5>5 ? S := 2.08+1/5; i := 5 +1; 6 SS S 6>5 ? In Tæng S Tæng S=2.28 Víi N = 5 2.28 § § M« pháng thuËt to¸n
13
3. VÝ dô TÝnh tæng S (víi a lµ sè nguyªn nhËp vµo tõ bµn phÝm vµ a>2). ? H·y x¸c ®Þnh gi¸ trÞ khëi ®Çu cña S, quy luËt thay ®æi gi¸ trÞ cña S vµ sè lÇn lÆp. ViÕt ch¬ng tr×nh ®Ó gi¶i bµi to¸n trªn. - S:=1/a; - S:= S + 1/(a+i); - i ch¹y tõ 1 ®Õn 100 => Sè lÇn lÆp lµ 100 lÇn.
14
1. Bµi to¸n D÷ liÖu ra (Output) : Tæng S D÷ liÖu vµo (Input) : NhËp a H·y x¸c ®Þnh INPUT, OUTPUT vµ nªu thuËt to¸n gi¶i bµi to¸n trªn? Cho ®Õn khi TÝnh gi¸ trÞ tæng S, víi a lµ sè nguyªn vµ a>2. th× dõng l¹i. II. LÆp víi sè lÇn lÆp kh«ng biÕt tríc
15
Bíc 2: S:=1/a; N:=1; {Khëi t¹o S vµ N} Bíc 3: NÕu 1/(a+N) Bíc 5 Bíc 4: S:=S+1/(a+N); N:=N+1; => quay l¹i bíc 3 thuËt to¸n Bíc 1: NhËp a. S:=1/a ; N:=1 §a ra S => KÕt thóc S:= S+1/(a+N); N:= N+1; Vßng lÆp chØ dõng khi 1/(a+N)<0.0001 NhËp a S § 1/(a+N) >= 0.0001 Bíc 5: In S => KÕt thóc.
16
WHILE DO ; §iÒu kiÖn §óng C©u lÖnh §iÒu kiÖn: Lµ biÓu thøc quan hÖ hoÆc l«gic. C©u lÖnh: Lµ mét c©u lÖnh cña Pascal. Sa i 3. LÆp víi sè lÇn lÆp kh«ng biÕt tríc Trong ®ã: Chõng nµo ®iÒu kiÖn cßn ®óng th× c©u lÖnh cßn ®îc thùc hiÖn.
17
WHILE 1/(a+N) >= 0.0001 DO Begin S:=S+1/(a+N); N:=N+1; END; 3. Mét sè vÝ dô a Bµi to¸n ®Æt vÊn ®Ò: NhËn xÐt: Chõng nµo 1/(a+N)>=0.0001 th× cßn thùc hiÖn: + T¨ng gi¸ trÞ cña tæng S thªm 1/(a+N). + T¨ng N thªm 1 ®¬n vÞ. TÝnh gi¸ trÞ tæng S, víi a lµ sè nguyªn vµ a>2 th× dõng l¹i. Cho ®Õn khi
18
Ch¬ng tr×nh Program Bai_toan; Uses Crt; Var a,N:Integer; S:Real; BEGIN Clrscr; Write(‘Nhap gia tri cua a= ‘);Readln(a); S:=1/a;N:=1; WHILE 1/(a+N)>=0.0001 DO BEGIN S:=S+1/(a+N); N:=N+1; END; Writeln(‘Gia tri cua tong S = ‘,S:8:3); Readln; END.
19
LËp ch¬ng tr×nh nhËp vµo hai sè nguyªn d¬ng M,N. T×m ¦CLN cña hai sè ®ã. B1: NhËp M,N; B2 : Chõng nµo M N nÕu M>N th× M:=M-N, ngîc l¹i th× N:=N-M; B3: §Õn khi M=N th× => §a ra ¦CLN(M,N)=M; => KÕt thóc. B1: NhËp M,N B2 : While M<>N DO Begin IF M>N then M:=M-N else N:=N-M; end; B3: In ¦CLN(M,N) ThuËt to¸nc¸c bíc viÕt ch¬ng tr×nh
20
Tham kh¶o: D¹ng kh¸c cña c©u lÖnh lÆp víi sè lÇn lÆp kh«ng biÕt tríc REPEAT UNTIL ; §iÒu kiÖn Sai C©u lÖnh §óng
21
Bµi to¸n ®Æt vÊn ®Ò: Program Bai_toan; Uses Crt; Var a,N:Integer; S:Real; BEGIN Clrscr; Write(‘Nhap gia tri cua a= ‘);Readln(a); S:=1/a;N:=1; REPEAT {Bat dau lap} S:=S+1/(a+N); N:=N+1 UNTIL 1/(a+N)< 0.0001; {Ket thuc lap} Writeln(‘Gia tri cua tong S = ‘,S:8:3); Readln; END.
22
H·y nhí! C©u lÖnh rÏ nh¸nh. C©u lÖnh lÆp IF THEN ; FOR... TO... DO...… IF THEN ESLE ; FOR... Downto... DO... While Do ; + D¹ng khuyÕt. + D¹ng ®Çy ®ñ. + LÆp víi sè lÇn lÆp biÕt tr íc. + LÆp víi sè lÇn lÆp kh«ng biÕt tríc.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.