Bài 10. Cấu trúc lặp

Chia sẻ bởi Nguyễn Phi Thăng | Ngày 10/05/2019 | 111

Chia sẻ tài liệu: Bài 10. Cấu trúc lặp thuộc Tin học 11

Nội dung tài liệu:

nhiệt liệt chào mừng các thầy, cô giáo !
đến dự giờ thao giảng
Giáo viên thực hiện : Nguyễn Phi Thăng - Tổ: Toán-Tin-KTCN - Trường THPT Vân Nham
Kiểm tra bài cũ
Slide 16
cấu trúc lặp
Giáo án điện tử tin học lớp 11
(Phần 1 và phần 2 (lý thuyết))
Tiết 11
Bài toán 1:
Bài toán 2:
cho đến khi
1. Lặp
Xuất phát
Lần 1
Lần 2

+…
Lần N


Cùng tìm thuật toán
(ĐIểm chung của hai bài toán)
Việc tính S được thực hiện như thế nào?
Bài toán 1:
Bài toán 2:
Cho đến khi
? Số lần lặp biết trước.
Việc tăng giá trị cho tổng S được lặp đi lặp lại cho đến khi
Việc tăng giá trị cho tổng S được lặp đi lặp lại 100 lần.
tìm sự khác biệt
? Số lần lặp chưa biết trước.
các em hãy cho biết
sự khác biệt giữa hai
bài toán?
Lặp có nghĩa là làm đi làm lại nhiều lần cùng một thao tác.
Trong lập trình, cũng có những thao tác, những câu lệnh lặp đi lặp lại nhiều lần tạo thành một cấu trúc lặp.
Có 2 loại cấu trúc lặp:
- Lặp với số lần biết trước;
- Lặp với số lần không biết trước.
Tóm lại:
Bài toán đặt vấn đề
- Dữ liệu ra (Output) : Tổng S
Tính tổng sau:

- Dữ liệu vào (Input) : Nhập a
Hãy xác định INPUT và OUTPUT của bài toán trên!
2. Lặp với số lần lặp biết trước và câu lệnh for-do
a. Lặp với số lần biết trước:
Phân tích bài toán (ý tưởng)

Nhận xét:
Ban đầu: S: = 1/a;
Cộng lần 1: S: = S + 1/(a+1);
Cộng lần 2: S: = S + 1/(a+2);
Cộng lần 3: S: = S + 1/(a+3);


.....
Cộng lần 100: S: = S + 1/(a+100);
Bắt đầu từ lần cộng 1 việc tính S được lặp đi lặp lại 100 lần theo quy luật
Ssau = Strước+ 1/(a+i)
với i chạy từ 1 ? 100
. . . . . . . . . . . . . . . . . . . .
Từ ý tưởng trên em hãy viết thuật toán cho bài toán
B1: Nhập a;
B2: S?1/a; i?0;
B4: Nếu i >100 thì chuyển đến bước 6;
B5 : S? S + 1/(a+i) rồi quay lại bước 3;
B3: i ? i +1;
Xây dựng thuật toán
B6: Đưa S ra màn hình rồi kết thúc;
B1: Nhập a;
B2: S?1/a; i?0;
B4: Nếu i >100 thì chuyển đến bước 6;
B5 : S? S + 1/(a+i) rồi quay lại bước 3;
B3: i ? i +1;
Thuật toán Tong_1a
B1: Nhập a;
B2: S?1/a; i?101;
B4: Nếu i <1 thì chuyển đến bước 6;
B5 : S? S + 1/(a+i) rồi quay lại bước 3;
B3: i ? i -1;
Thuật toán Tong_1b
Thuật toán Tong_1a, giá trị i bắt đầu tham gia vòng lặp là 1 sau mỗi lần lặp i tăng lên 1 cho đến khi i > 100 (i = 101) thì kết thúc lặp (thực hiện 100 lần).
Nhận xét:
Thuật toán Tong_1b, giá trị i bắt đầu tham gia vòng lặp là 100 sau mỗi lần lặp i giảm đi 1 cho đến khi i < 1 (i = 0) thì kết thúc lặp (thực hiện100 lần).
Ta nói cách lặp trong thuật toán Tong_1a là dạng tiến và trong thuật toán Tong_1b là dạng lùi.
B6: Đưa S ra màn hình rồi kết thúc;
B6: Đưa S ra màn hình rồi kết thúc;
FOR := TO DO < câu lệnh>;
FOR := DOWNTO DO ;
b, Câu lệnh For-Do (trong NNLT Pascal)
Nêu hoạt động của câu lệnh For-do dạng tiến và dạng lùi?
FOR := TO DO < câu lệnh>;
FOR := DOWNTO DO ;
b, câu lênh For-Do (trong NNLT Pascal)
Hoạt động của câu lệnh For-do
Dạng lặp tiến, câu lệnh viết sau từ khoá do được thực hiện tuần tự, với biến đếm lần lượt nhận giá trị từ giá trị đầu đến giá trị cuối
Dạng lặp lùi, câu lệnh viết sau từ khoá do được thực hiện tuần tự, với giá trị của biến đếm từ giá trị cuối đến giá trị đầu
Chú ý: Giá trị biến đếm được điều chỉnh tự động, vì vậy câu lệnh sau DO không được thay đổi giá trị biến đếm.
FOR := TO DO < câu lệnh>;
FOR := DOWNTO DO ;
b, Câu lênh For-Do (NNLT Pascal)
Ví dụ: Viết câu lệnh For-Do tính (a nguyên và a>2)
Viết câu lệnh For-Do dạng lùi để tính tổng S trên?
Phiếu học tập
Slide 1
Slide 1
Hãy nhớ!
Lặp
trong pascal
Dạng tiến
FOR ... TO ... DO ....
Dạng lùi
FOR ... Downto ... DO ...
Lặp với số lần lặp biết trước.
Lặp với số lần lặp không biết trước.
Lặp với số lần biết trước và câu lệnh For-do
+ Dạng tiến
+ Dạng lùi
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Nguyễn Phi Thăng
Dung lượng: | Lượt tài: 1
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)