I. Mục tiêu: 1 Kiến thức :
1. Các hoạt động lặp với số lần chưa biết
I. Mục tiêu:
1. Kiến thức:
- Hiểu nhu cầu cần có 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 ngôn ngữ lập trình dùng cấu trúc lặp với số lần chưa biết trước để chỉ dẫn máy tính thực hiện lặp đi lặp lại công việc đến khi một điều kiện nào đó được thoả mãn;
2. Kĩ năng:
- Rèn luyện kĩ năng sử dụng các câu lệnh trong Pascal
3. Thái độ:
- Thái độ học tập nghiêm túc, yêu thích môn học.
II. Chuẩn bị:
- GV: SGK, giáo án, tài liệu tham khảo - HS: Học kỹ lý thuyết, đọc trước bài.
III. Phương pháp:
- Đặt vấn đề, đưa ra yêu cầu để học sinh trao đổi.
- Đàm thoại, thảo luận nhóm, gv hướng dẫn nhận xét và tổng kết.
IV. Tiến trình dạy và học:1. Ổn định lớp: 1. Ổn định lớp:
2. Kiểm tra bài cũ: 3. Bài mới: 3. Bài mới:
T/g Hoạt động của thầy Hoạt động của trò Nội dung
18p + Hoạt động 1: Tìm hiểu ví dụ 1.
- Một ngày chủ nhật Long gọi điện cho Trang. Không có ai nhấc máy. Long quyết định gọi lại thêm 1 lần nữa. Như vậy Long đã biết trước là mình sẽ lặp lại gọi điện thêm 2 lần. Một ngày khác, Long quyết định cứ 10 phút gọi điện một lần cho Trang cho đến khi có người bắt máy.
? Lần này Long sẽ lặp lại việc gọi điện mấy lần.
? Điều kiện để kết thúc hoạt động lặp đó là gì?
+ Học sinh chú ý lắng nghe => ghi nhớ kiến thức.
+ Chưa thể biết trước được, có thể một lần, có thể hai lần hoặc nhiều hơn nữa.
+ Điều kiện để kết thúc hoạt động lặp đó là có người nhấc
1. Các hoạt động lặp với số lần chưa biết với số lần chưa biết trước.
20p + Hoạt động 2: Tìm hiểu ví
dụ 2.
- Nếu cộng lần lượt n số tự nhiên đầu tiên (n = 1, 2, 3,...), Cần cộng bao nhiêu số tự nhiên đầu tiên để ta nhận được tổng Tn nhỏ nhất lớn hơn 1000?
? Tìm hiểu các bước của thuật toán trong ví dụ này. - Yêu cầu học sinh gõ chương trình vào máy.
- Dịch và chạy chương trình? - Ta có sơ đồ khối Nhận xét? máy. + Đọc kĩ đề bài + Kí hiệu S là tổng cần tìm và ta có thuật toán như sau:
- Bước 1. S ← 0, n ← 0.
- Bước 2. Nếu S ≤ 1000, n ←n + 1; ngược lại chuyển tới bước 4.
-Bước 3. S ← S + n và quay lại bước 2.
- Bước 4.In kết quả : S và n là số tự nhiên nhỏ nhất sao cho S > 1000. Kết thúc thuật toán.
* Nhận xét : Để viết chương trình chỉ dẫn máy tính thực hiện các hoạt động lặp như trong các ví dụ trên, ta có thể sử dụng câu lệnh có dạng lặp với số lần chưa biết trước
+ Ví dụ 2:
- Nếu cộng lần lượt n số tự nhiên đầu tiên (n = 1, 2, 3,...), Cần cộng bao nhiêu số tự nhiên đầu tiên để ta nhận được tổng Tn nhỏ nhất lớn hơn 1000?