+ While và do: Là các từ khóa lệnh+ < ĐK_BTL>:Là biểu thức Logic có thể nhận giá trị TRUE đúng hoặc FALSE sai + < Công việc > : Có thể là một câu lệnh hay một nhóm lệnh nhóm lệnh h
Trang 1Kết thúc
Trình bày sự hoạt động của lệnh lặp For to do
Next
Trang 2tên bài giảng
Người thực hiện : Đỗ Văn Xuân
hội giảng giáo viên dạy nghề tỉnh bắc giang
Trang 3Vị trí bài giảng
1 Chương I Giới thiệu ngôn ngữ lập trình 05
2 Chương II Các phần tử cơ bản của ngôn ngữ Pascal 02
3 Chương III Các kiểu dữ liệu chuẩn của ngôn ngữ Pascal 03
4 Chương IV Thủ tục vào, ra dữ liệu 06
6 Chương VI Vòng lặp xác định và không xác định 08
6.2.1 Vòng lặp While do 6.2.2 Vòng lặp Repeat Until
Trang 4+ While và do: Là các từ khóa lệnh
+ < ĐK_BTL>:Là biểu thức Logic có thể nhận giá trị TRUE
( đúng ) hoặc FALSE ( sai )
+ < Công việc > : Có thể là một câu lệnh hay một nhóm lệnh
(nhóm lệnh hay gọi là lệnh ghép được đặt trong khối Begin End ) …
c/ Lưu đồ cú pháp và sự hoạt động của lệnh.
Next
Nêu vấn đề
Trang 6Khi máy thực hiện lệnh
While do trước tiên kiểm tra
< BTL>:
* Nếu BTL cho giá trị TRUE (đúng) thì thực hiện <Công việc > rồi lại kiểm tra và thực hiện < công việc> tiếp theo Quá trình chỉ kết thúc khi điều kiện < BTL> cho giá trị FALSE ( sai )
ĐK_BTL
?
** Ngay từ đầu nếu điều kiện <BTL> là FALSE thì thân vòng lặp không được thực hiện lần nào.
Trang 8Write(' Vµo gi¸ trÞ cña N=');Readln(N);
While i<=N do { KiÓm tra ®iÒu kiÖn BT Logic )
Trang 9Ví dụ 2/ Cho biết kết quả của X trong chương trình sau, giải thích:
Trang 10+ Repeat và Until: là các từ khóa lệnh
+ < ĐK_BTL >:Là biểu thức Logic có thể nhận giá trị TRUE
( đúng ) hoặc FALSE ( sai )
+ < Công việc >: Có thể là một câu lệnh hay một nhóm lệnh (nhóm lệnh hay gọi là lệnh ghép không cần đặt trong khối Begin …
End )
c/ Lưu đồ cú pháp và sự hoạt động của lệnh.
Next
Trang 11đk - BTL Công việc
While do Repeat Until
+ Từ lưu đồ cú pháp của lệnh While do, em có
nhận xét gì về lưu đồ cú pháp lệnh Repeat Until ?
+ Trình bày sự hoạt động của lệnh Repeat Until.
Hỏi
Next
Trang 12thực hiện ngay <Công việc> sau
đó kiểm tra điều kiện < BTL>
- Nếu <BTL> cho giá trị sai ( False ) thì quay lại vòng lặp
- Nếu <BTL> cho giá trị
đúng ( True ) thì thoát khỏi vòng
Trang 14{ While do } Program Btap2;
Trang 15** Nếu bỏ lệnh ( i:= i+1) trong thân vòng lặp thì chương trình sẽ hoạt động như thế nào ? Kết quả tổng S cho giá trị là bao nhiêu, giải thích ?
Chú ý
Next
Trang 16TT WHILE DO REPEAT UNTIL
e/ So sánh lệnh While do và Repeat Until
tối thiểu * Không thực hiện lần nào * Thực hiện ít nhất một lần
- Kiểm tra điều kiện <BTL>
trước sau đó mới thực hiện < Công việc>
- Nếu điều kiện < BTL> cho giá trị TRUE thì thực hiện < Công việc>
- Nếu điều kiện < BTL> cho giá trị FALSE thì kết thúc vòng lặp
- Thực hiện < Công việc > trước sau đó mới kiểm tra
điều kiện < BTL>
- Nếu điều kiện < BTL> cho giá trị FALSE thì thực hiện < Công việc>
- Nếu điều kiện < BTL> cho giá trị TRUE thì kết thúc vòng lặp
** Trình bày vắn tắt sự giống và khác nhau giữa hai lệnh While do và Repeat Until.
Bằng cách điền nội dung vào các ô tương ứng của bảng cho dưới đây.
Trang 17** Có phải mọi lệnh While do trong Pascal đều có thể thay thế tương đương bởi lệnh Repeat until không, cho ví dụ ?
Hãy thay thế chương trình dưới đây bằng lệnh Repeat Until để chứng minh:
** Ví dụ: Lập chương trình tìm giá trị Max và Min của hai số a và b được nhập vào từ bàn
phím, chương trình chỉ kết thúc khi ta ấn 'Y' hoặc ấn chữ 'y'
Writeln(' Max=', b:5:1,' , Min=', a:5:1);
Write(' ấn phím chữ "Y" hoặc "y" để kết thúc !'); Readln(Tloi);
End;
Readln;
End Minh h a ọ
Trang 19iii/ Câu hỏi, bài tập
1/ Trình bày cú pháp và chức năng của WHILE do và REPEAT Until.
2/ Vẽ lưu đồ cú pháp và trình bày sự hoạt động của từng lệnh 3/ Bài tập: Lập chương trình tính giá trị các biểu thức sau:
+ S= 1+ 1/2 + 1/3 + + 1/N + S= 1/2 + 1/4 + + 1/2N + S=1+1/3+1/5 + + 1/(2N-1)
Next Hướng dẫn
Trang 20 Trong khi thùc hiÖn <c«ng viÖc> ph¶i cã Ýt nh t Ê
tr×nh sÏ kh«ng tho¸t khái vßng lÆp ( quÈn )
Quay vÒ
Trang 21Em h·y cho biÕt th©n vßng lÆp (< C«ng viÖc >) cña
thÝch ?
Trë vÒ
Trang 22Từ lưu đồ cú pháp và sự hoạt động của lệnh em hãy cho biết thân vòng lặp ( Công việc ) của lệnh
WHILE DO được thực hiện ít nhất mấy lần, giải
thích ?
Trở về
Trang 23Gîi ý bµi tËp :
TÝnh tæng: S= 1+ 1/2 + 1/3 + + 1/N
** Khai b¸o c¸c biÕn:
- BiÕn ®iÒu khiÓn: I { KiÓu sè nguyªn }
** NhËp gi¸ trÞ cña N tõ bµn phÝm
** G¸n S:=0; I:=1;
- NÕu dïng While do:
While I <= N doBegin
Until I>N;
Trang 24
Từ lưu đồ cú pháp của lệnh While do, em có nhận xét gì về lưu đồ cú pháp lệnh Repeat Until.
Quay về
Trang 25néi dung bµi gi¶ng
6.2.1 - LÖnh WHILE DO 6.2.2 - LÖnh REPEAT UNTIL
VÝ dô a
VÝ dô b
K t thóc ế