<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>
<b>SV:PHẠM THỊ MAI</b>
<b>SV:PHẠM THỊ MAI</b>
<b>LỚP:K59A</b>
<b>LỚP:K59A</b>
<b>KHOA:CÔNG NGHỆ THÔNG TIN</b>
</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>
Bµi 10
</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>
<i>* Câu 1</i>
<i><b>.</b></i>
<i>Trình bày cấu trúc rẽ nhánh? </i>
<i>* Câu 2. Giải thích ý nghĩa của câu lệnh sau:</i>
<i> </i>
<i>IF n mod 5 = 0 Then Write( n,’ Chia het 5’) </i>
<i>Else Write(n,’ khong chia het 5’);</i>
Kiểm tra bài cũ
<b>Trả lời:</b>
<b>Câu 1:</b>
*Dạng thiếu:
if <điều kiện> then <câu lệnh>;
*Dạng đủ:
if <điều kiện> then <câu lệnh 1>
else <câu lệnh 2>;
<b>Câu 2:</b>
</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>
<b>MỤC ĐÍCH VÀ YÊU CẦU</b>
<i><b> * Hiểu về cấu trúc lặp.</b></i>
<i><b> * Phân biệt được hai loại lặp.</b></i>
</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>
<b>Nội dung</b>
<i><b>1.Các bài boán đặt vấn đề</b></i>
<i><b>2.Câu lệnh lặp với số lần biết trước</b></i>
<i><b>3.Củng cố kiến thức</b></i>
</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>
<i><b>Bài toán 1:</b></i>
<i><b>Bài toán 2: </b></i>
100
1
...
2
1
1
1
1
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>S</b></i>
...
1
...
2
1
1
1
1
<i><b>N</b></i>
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>S</b></i>
Cỏc bi toỏn t vấn đề
<b>cho đến khi </b>
1
<sub>0</sub>
<sub>.</sub>
<sub>0001</sub>
<i>N</i>
<i>a</i>
</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>
<b>Xu t phátấ</b>
<i><b>a</b></i>
<i><b>S</b></i>
1
1
1
<i>a</i>
<b>L n 1ầ</b>
2
1
<i>a</i>
<b>L n2ầ</b>
<b>+…</b>
<b>L n n</b>
Cỏch tớnh tng s
<b>L n 1</b>
<i>N</i>
<i>a</i>
1
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
a + i
( víi i =1; 2; 3 ; ...;N)
</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>
Phân tích bài to¸n víi N = 100
<i><b>NhËn xÐt:</b></i>
<b>S1 = 1</b>
<b>S2 = S1 + 1/2</b>
<b>S3 = S2 + 1/3</b>
<b>S4 = S3 + 1/4</b>
<b>...</b>
<b>S100 = S99 + 1/100</b>
1
<b>S</b>
<i><b>Bắt đầu từ S2 việc tính S đ ợc lặp </b></i>
<i><b>đi lặp lại 99 lần theo quy lt</b></i>
<i><b> S</b><b><sub>sau</sub></b><b> = S</b><b><sub>tr íc</sub></b><b>+ 1/i</b></i>
<i><b>víi i ch¹y tõ 2 </b></i><i><b> 100</b></i>
2
1
3
1
4
1
<sub></sub>
. . .
<sub></sub>
1
100
</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>
<i><b>Bài toán 1:</b></i>
<i><b>Bài toán 2: </b></i>
100
1
...
2
1
1
1
1
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>S</b></i> <sub>...</sub> 1 <sub>...</sub>
2
1
1
1
1
<i><b>N</b></i>
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>a</b></i>
<i><b>S</b></i>
<b>Cho n khi</b> <b>0</b> <b>0001</b>
<b>1</b>
.
<i>N</i>
<i>a</i>
<i><b>Số lần lặp biết tr ớc.</b></i>
ã <b><sub>Việc tăng giá trị cho tổng S </sub></b>
<b>đ ợc lặp đi lặp lại cho đến khi</b>
0.0001
N
a
1
•
<b><sub> Việc tăng giá trị cho </sub></b>
<b>tổng S đ ợc lặp đi lặp </b>
<b>lại 100 lần.</b>
tìm sự khác biệt
</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10></div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>
<i><b>Xét bài tốn:</b></i>
<b>- D÷ liƯu ra (Output) : Tổng S</b>
<i><b>Lập ch ơng trình tÝnh tæng sau: </b></i>
<b>- Dữ liệu vào (Input) : Nhập N</b><i><b>Hãy xác định </b></i>
<i><b>Input vµ </b></i>
<i><b>Output cđa bµi </b></i>
<i><b>toán trên!</b></i>
I. Lặp với số lần lặp biết tr ớc
N
1
...
4
1
3
1
2
1
1
</div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12>
§
<b>S</b>
<b>NhËp N</b>
<b>S:= 1 ; i:=</b> <b>2</b>
<b>i > N ?</b>
<b> S:= S + 1/i</b>
<b>§ a ra S råi kÕt thóc</b>
<b>B1: NhËp N;</b>
<b>B2: S:=1; i:=2;</b>
<b>B3: NÕu i > N th× đ a ra giá trị S </b>
<b>=> Kết thúc;</b>
<b>B4 : S:= S + 1/i; </b>
<b>B5: i := i +1 quay lại B3.</b>
Xây dựng thuật toán
<b>i:= i+1</b>
<b>S:= 1 ; i:=</b> <b>2</b>
</div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>
<b>FOR</b>
<b> <biến đếm> := <giá trị đầu> </b>
<b>TO</b>
<b> <giá trị cuối></b>
<b> </b>
<b>DO </b>
<b>< câu lệnh>;</b>
<i><b>VÝ dô:</b></i><b> S:=1;</b>
<b> for i:=2 to</b> <b>100 do S:=S+1/i;</b>
<i><b>b. D¹ng 2 ( d¹ng lïi)</b></i>
<b>FOR</b>
<b> <biến đếm> := <giá trị cuối></b>
<b> DOWNTO</b>
<b> <giá trị </b>
<b>đầu> </b>
<b>DO</b>
<b> <câu lệnh >;</b>
<i><b>VÝ dô:</b></i><b> S:=1;</b>
<b> for</b> <b> i:=100 downto 2 do S:=S+1/i;</b>
<i><b>a. D¹ng 1 (d¹ng tiÕn)</b></i>
</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14>
<i><b>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 </b></i>
<i><b>giá trị </b><b>cuối (dạng tiến) và ngược lại (dạng lựi)</b></i>
<b> For i:= 100 to 200 do write(i);</b>
<b> For i:=200 donwto 100 do write(i);</b>
<i><b>Giá trị biến đếm đ ợc điều chỉnh tự động, vì vậy câu lệnh sau </b></i>
<i><b>DO không đ ợc thay đổi giá trị biến đếm.</b></i>
<b>Trong đó</b>
<i><b>Biến đếm là biến kiểu </b><b>đếm được.</b></i>
</div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15>
* Lập chương trình tính s với n là số tự
nhiên nhập từ bàn phím và n>0
<i>s</i>
5
10 ... 5
<i>n</i>
</div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16>
<b>S:=1;</b>
<b>FOR i:=2 to N do S := S+1/i;</b>
Hãy áp dụng
câu lệnh lặp
dạng tiến để
viết ch ơng
trình gii bi
toỏn t vn
.
Lập ch ơng trình tính tæng sau:
N
1
...
4
1
3
1
2
1
1
S
</div>
<span class='text_page_counter'>(17)</span><div class='page_container' data-page=17>
<b>S := 1 ; i := 2;</b>
<b>i >N</b> <b><sub>KT</sub></b>
<b>S := S +1/ i ;</b>
<b> i := i +1;</b>
<b>2.08</b>
<b>1.83</b>
<b>1.5</b>
<b>1</b>
<b>4</b>
<b>3</b>
<b>2</b>
L ỵt
<b>i</b>
<b>S</b> <b>2.28</b>
<b>5</b>
NhËp N
<b>S := 1 ; i := 2;</b>
<b>2>5 ?</b>
<b>S</b>
<b>S</b>
<b>S := 1 +1/2 ;</b>
<b> i := 2 +1;</b>
<b>3>5 ?</b>
<b>S := 1.5+1/3 ;</b>
<b> i := 3 +1;</b>
<b>4>5 ?</b>
<b>S := 1.83+1/4 ;</b>
<b> i := 4 +1;</b>
<b>5>5 ?</b>
<b>S := 2.08+1/5;</b>
<b> i := 5 +1;</b>
<b>6</b>
<b>S</b>
<b>S</b>
<b>S</b>
<b>6>5 ?</b> Tỉng S=2.28In Tỉng S
Víi N = 5
<b>2.28</b>
§
§
</div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18>
H·y
nhí!
For <i>…</i> to <i>…</i> do
<i><b>Lặp với số lần biết </b></i>
</div>
<span class='text_page_counter'>(19)</span><div class='page_container' data-page=19>
Bài tập củng cố
*
<i><b>Cú pháp câu lệnh lặp với số lần đã biết </b></i>
<i><b>trước dạng tiến là:</b></i>
A.for…to…do…
B.for…donwto…do
C.while…do…
</div>
<span class='text_page_counter'>(20)</span><div class='page_container' data-page=20>
<b>Bài tập về nhà</b>
<i>*Câu 1:viết chương trình tính tổng s với a là số </i>
<i>nguyên nhập vào từ bàn phím và a>2</i>
<i>*Câu 2:Lập chương trình tính Y với n là một số </i>
<i>nguyên nhập từ bàn phím và n>0.</i>
<i>* Đọc VD1, VD2 SGK trang 44 để tiết sau tìm </i>
<i>hiểu tiếp.</i>
100
1
...
2
1
1
1
1
<i>a</i>
<i>a</i>
<i>a</i>
<i>a</i>
<i>S</i>
1 2 3
...
2 3 4
1
<i>n</i>
<i>y</i>
<i>n</i>
</div>
<span class='text_page_counter'>(21)</span><div class='page_container' data-page=21>
Xin chân thành cảm ơn sự
lắng nghe
</div>
<!--links-->