Tải bản đầy đủ (.ppt) (11 trang)

Bai tap While do

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (217.81 KB, 11 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1></div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

<b>Tiết 46</b>



</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

<b>Lặp với số lần chưa biết trước</b>


Cú ph
áp


*

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 hay
câu lệnh ghép


Sơ đ<sub>ồ</sub>


Điều kiện ?


Câu lệnh


Sai
Đúng


While <điều kiện> do <câu lệnh>;


- Bước 1: Kiểm tra điều kiện


Các bước
thực hiện



<b>Tiết 46:</b>

<b>Bài tập</b>


<b>I. Hệ thống kiến thức cũ:</b>



Điều kiện?


Câu lệnh


- 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.


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

<b>Tiết 46:</b>

<b>Bài tập</b>



<b>II. Bài tập:</b>



<b>Câu 1:</b> (Bài 2 sgk trang 71) 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 biết trước và câu lệnh lặp với số lặp lần chưa biết trước?
* Câu lệnh lặp với số lần lặp


biết trước
- Xác định được số lần lặp


- Đ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âu lệnh được thực hiện ít
nhất một lần, sau đó kiểm
tra điều kiện.



* Câu lệnh lặp với số lần lặp
chưa biết trước


- Không xác định được số lần lặp
- Điều kiện tổng quát hơn nhiều,
có thể là kiểm tra giá trị của một
số thực, cũng có thể là một điều
kiện khác.


- Trước hết điều kiện được kiểm
tra. Nếu điều kiện được thỏa mãn,
câu lệnh mới được thực hiện. Do
đó có trường hợp câu lệnh hồn
tồn khơng được thực hiện.


<b>ĐÁP ÁN</b>



</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

<b>B. 10 vòng lặp, S=5</b>

<b>B.</b>

<b>10 vòng lặp, S=5</b>

<b>D.</b>

<b>12 vòng lặp, S=4</b>



<b>A.</b>

<b>9 vòng lặp, S=5.5</b>

<b>C. </b>

<b>11 vòng lặp, S=4.5</b>



SAI RỒI!

<sub> SAI RỒI!</sub>

SAI RỒI!



<b>Câu 2:</b>

<b> Thuật toán sau thực hiện bao nhiêu vòng lặp? Khi kết </b>


<b>thúc, giá trị của S bằng bao nhiêu? (Câu 3a sgk trang 71)</b>



<b> </b>

<b>- Bước 1: S </b>

<b> 10, x </b>

<b> 0.5.</b>



<b> - Bước 2: Nếu S </b>

<b> 5.2 chuyển tới bước 4.</b>




<b> - Bước 3: S </b>

<b> S –x và quay lại bước 2.</b>



<b> - Bước 4: Thơng báo S và kết thúc thuật tốn.</b>



<b>Tiết 46:</b>

<b>Bài tập</b>



</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

<b>Tiết 46:</b>

<b>Bài tập</b>



<b>II. Bài tập:</b>



<b>Câu 3: Tìm hiểu thuật tốn trong bài 3b và cho biết máy tính</b>


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? (Câu 3b sgk trang 71)



Thuật toán:



Bước 1: S  10; n  0.5;



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



</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

<b>Tiết 46:</b>

<b>Bài tập</b>



<b>II. Bài tập:</b>



<b>Câu 4:</b> Hãy quan sát các chương trình pascal ở bài tập 4 trong sgk



trang 71 và cho biết chương trình thực hiện bao nhiêu vịng lặp? Từ đó
rút ra nhận xét gì?


Câu a


- Sử dụng câu lệnh ghép trong
vòng lặp while .. do


- Kết thúc sau một số hữu hạn lần
lặp xác định.


* Nhận xét: Trong câu lệnh lặp với số lần lặp chưa biết trước, đ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 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
trường là câu lệnh ghép.


Câu b


- Không sử dụng câu lệnh ghép
trong vịng lặp while .. do


- Lặp vơ hạn lần.


<b>ĐÁP ÁN</b>



•Hoạt động nhóm trong 3 phút.



</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

<b>Đáp án:</b>

Thiếu Câu lệnh ghép begin .. end trong vòng



lặp while .. do, do đó vịng lặp trở thành vơ tận.



Câu 5: Trong các câu lệnh sau câu lệnh nào đúng, câu


lệnh nào sai? Nếu sai em hãy chỉ ra sai ở đâu?



a. X:=10; while X:=10 do X:=X+5;



<b>Tiết 46:</b>

<b>Bài tập</b>



<b>II. Bài tập:</b>



b. X:=10; while X=10 do X=X+5



c. s:=0; n:=2; while s<=10 do s:=s+n;



d. s:=0; n:=0; while s<=10 do n:=n+1; s:=s+n;



<b>Đáp án:</b>

Sai. Thừa dấu hai chấm trong điều kiện.



<b>Đáp án:</b>

Sai. Thiếu dấu hai chấm trong câu lệnh gán.



</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

<b>Tiết 46:</b>

<b>Bài tập</b>



<b>II. Bài tập:</b>



<b>Câu 6: Đọc 2 đoạn lệnh sau, cho biết ý nghĩa của các đoạn </b>


lệnh và rút ra nhận xét?



Đoạn 2



Đoạn 1 Đoạn 2


Program doan1;


Var s:real; n,i:integer;
Begin


Write(‘nhap gia tri n can tinh tong’);
readln(n);


For i:=1 to n do s:=s+i;


Writeln(‘tong can tim la s: =’,s:2:0);
Readln;


End.


Program doan2;


Var s:real; n,i:integer;
Begin


i:=0;


Write(‘nhap gia tri n can tinh tong’);
readln(n);


While i<=n do
Begin



s:=s+i;
i:=i+1;
End;


Writeln(‘tong can tim la’,s:2:0);
Readln;


</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>

<b>Lặp với số lần chưa biết trước</b>


Cú ph
áp


*

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 hay
câu lệnh ghép


Sơ đ<sub>ồ</sub>


Điều kiện ?


Câu lệnh


Sai
Đúng


While <điều kiện> do <câu lệnh>;



- Bước 1: Kiểm tra điều kiện


Các bước
thực hiện


<b>CỦNG CỐ - DẶN DÒ</b>



- 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.


</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>

<b>CỦNG CỐ - DẶN DỊ</b>



- Về nhà tìm hiểu thêm một số bài tập chuyển từ số vòng lặp


biết trước sang số vòng lặp chưa biết trước.



</div>

<!--links-->

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×