Hoạt động giáo viên Hoạt động của hoc sinh Hoạt động 1: Hỏi bài cũ
Viết thuật toán tính tổng 100 số tự
nhiên đầu tiên 1,2,3,…,99,100 Bước 1. SUM ← 0; i← 0.
Bước 2. i←i + 1.
Bước 3. Nếu i ≤ 100, thì SUM ← SUM + i
và quay lại bước 2.
Bước 4. Thông báo kết quả và kết thúc thuật toán
Hoạt động 2: Bài mới
Giáo viên yêu cầu học sinh đọc ví dụ 1sách giáo khoa trang 67
Giáo viên phân tích ví dụ:
Giả sử bạn Long gọi điện chuông đổ lần thứ nhất bạn Trang cầm máy trả lời thì bạn Long kết thúc công việc gọi điện, nhưng nếu bạn Long gọi lần thứ nhất chuông đổ không ai nhấc máy bạn quyết định gọi thêm ít lần nữa, cũng không ai nhấc máy, bạn quyết định gọi đến khi nào có người nhấc máy thì mới kết thúc. Vì thế ở đây ta chưa biết được bạn Long phải gọi bao nhiêu lần thì mới có người cầm máy và kết thúc việc gọi điện
Giáo viên hướng dẫn học sinh xây dựng thuật toán, sau đó học sinh tự xây dựng thuật toán
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?
Gọi học sinh viết lại thuật toán
1. Các hoạt động lặp với số lần chưa biếttrước trước
a/ Ví dụ 1(sgk).
b/ Ví dụ 2
Giải: Kí hiệu S là tổng cần tìm và ta có thuật toán như sau:
Hoạt động giáo viên Hoạt động của hoc sinh
Giáo viên chạy tay cho học sinh xem (Chỉ chạy tay thử từ 1 đến 10 ) Vòng lặp S Điều kiện n 1 0 0<1000 1 2 1 1<1000 2 3 3 3<1000 3 4 6 6<1000 4 5 10 10<1000 5 6 15 15<1000 6 7 21 21<1000 7 8 28 28<1000 8 9 36 36<1000 9 10 45 45<1000 10 Học sinh chú ý nghe giáo viên giải thích.
Em hãy rút ra nhận xét của thuật toán?
Giáo viên giới thiệu sơ đồ khối
Quan sát sơ đồ khối, hãy cho biết sự thực hiện của máy?
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 thuật toán:
Từ bước 2 đến bước 3 được lặp lại nhiều lần nếu điều kiện s ≤ 1000 chưa được thỏa mãn và chỉ dừng khi điều kiện đó sai.
* Ta có sơ đồ khối :
Bước 1: tính giá trị của <điều kiện>.
Bước 2: Nếu <điều kiện> có giá trị đúng thì:
+ thực hiện lệnh cần lặp. + quay lại bước 1.
Chừng nào điều kiện còn đúng thì câu lệnh còn thực hiệ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
Đúng
Sai Điều kiện
Hoạt động giáo viên Hoạt động của hoc sinh
Giáo viên rút ra nhận xét:
Ta có thể sử dụng lệnh lặp với số lần lặp chưa biết trước trong các chương trình lập trình. Sau đây ta xét câu lệnh và ví dụ được viết bằng ngôn ngữ lập trình Turbo pascal Giáo viên giới thiệu cú pháp câu lệnh với số lần chưa biết trước
while … do ….;
Học sinh chú ý nghe giảng và ghi chép bài đầy đủ
Giáo viên cùng học sinh xét ví dụ 3 Chúng ta biết rằng, nếu n càng lớn thì 1
n càng nhỏ, nhưng luôn luôn lớn hơn 0. Với giá trị nào của n thì 1
n < 0.005 hoặc 1
n < 0.003 ?
Gọi học sinh xác định Input, Output của bài toán?
Giáo viên gợi ý học sinh cách viết thuật toán, gọi học sinh lên bảng trình bày thuật toán
2. Ví dụ về lệnh lặp với số lần chưa biếttrước trước
Trong Pascal câu lệnh lặp với số lần chưa biết trước có dạng:
while <điều kiện> do <câu lệnh>; 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 giản hay câu lệnh ghép.
Câu lệnh lặp này được thực hiện như sau: Bước 1 : Kiểm tra điều kiện.
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. Nếu điều kiện đúng, thực hiện câu lệnh và quay lại bước 1.
Ví dụ 3.
Với giá trị nào của n ( n>o ) thì 1
n < 0.005 hoặc 1
n < 0.003?
1. Xác định bài toán: Input: Cho sai_so= 0.005
Output: Kiểm tra với n bằng bao nhiêu thì 1
n < 0.005.
2. Viết thuật toán: Bước 1: x 1, n 1
Bước 2: Nếu x< sai_so thì n n+1; x 1
n;ngược lại chuyển tới bước 3 ngược lại chuyển tới bước 3
Bước 3: Thông báo và kết thúc tuật toán. Chương trình chạy trên Pascal:
Hoạt động giáo viên Hoạt động của hoc sinh
Giáo viên giới thiệu chương trình mẫu sách giáo khoa
Yêu cầu học sinh quan sát các câu lệnh trên máy tính
Giáo viên chạy cho học sinh xem Học sinh chú ý nghe và tự chạy lại Học sinh thực hiện
Giáo viên yêu cầu học sinh thay điều kiện sai_so = 0.003 thành 0.002 ; 0.001 ; 0.005 ; ...
Học sinh lần lượt lên thay sai số để kiểm tra kết quả thực hiện của máy tính.
Hoạt động 3. Củng cố: