Bài 10. Cấu trúc lặp
Chia sẻ bởi Nguyễn Tiến Long |
Ngày 10/05/2019 |
83
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:
BÀI CŨ:
Nếu ...thì...
IF <Điều kiện> THEN;
IF <Điều kiện> THEN ELSE ;
Nếu ...thì...,nếu không thì...
CẤU TRÚC RẼ NHÁNH
SỞ GD – ĐT QUẢNG TRỊ
TRƯỜNG TRUNG HỌC PHỔ THÔNG HƯỚNG HÓA
Bài 10
Bài toán 1 : Tính tổng
S =
Ý tưởng:
Ban đầu S0.
Sau đó cho i nhận lần lượt các giá trị liên tiếp tăng từ 1 cho đến 100, mỗi lần i nhận 1 giá trị thì thực hiện: SS+1/i
L?p ? l?n
100
? số lần biết trước
1. Khái niệm lặp:
Bài toán 2 : Tính tổng
Cho đến khi: 2-S<0,001
Ý tưởng:
Ban đầu S0;i0.
Sau đó thực hiện lặp lại:ii+1 và SS+1/i; Cho đến khi 2-S<0,001 thì dừng lại
L?p ? l?n
? số lần chưa biết trước
Trong một số thuật toán có những thao tác phải lặp lại một số lần.
Hai loại:
Cấu trúc lặp mô tả thao tác lặp.
Nhận xét:
Số lần lặp có thể biết trước hoặc không biết trước
- Lặp với số lần biết trước .
- Lặp với số lần chưa biết trước .
Câu lệnh FOR-DO
Câu lệnh WHILE-DO
Bài toán 1 : Tính tổng
Ý tưởng:
Ban đầu S0.
Sau đó cho i nhận lần lượt các giá trị liên tiếp tăng từ 1 cho đến 100, mỗi lần i nhận 1 giá trị thì thực hiện: SS+1/i
Ban đầu S0.
Sau đó cho i nhận lần lượt các giá trị liên tiếp giảm từ 100 xuống 1, mỗi lần i nhận 1 giá trị thì thực hiện: SS+1/i
Dạng tiến
Dạng lùi
2. Câu lệnh For - do
FOR := TO DO ;
Dạng lặp lùi:
FOR := DOWNTO DO ;
Dạng lặp tiến:
Trong đó:
? là biến thuộc kiểu đếm được (số nguyên, kí tự,.)
?, là các biểu thức cùng kiểu với biến
đếm, phải nhỏ hơn hoặc bằng .
? là một câu lệnh bất kỳ của Pascal
Dạng lặp tiến:
Hoạt động của lệnh For - do:
sẽ lần lượt nhận các giá trị liên tiếp tăng từ
đến. Mỗi lần nhận 1 giá trị thì
sau từ khoá Do được thực hiện 1 lần
Dạng lặp lùi:
sẽ lần lượt nhận các giá trị liên tiếp giảm từ
xuống. Mỗi lần nhận 1 giá trị thì
sau từ khoá Do được thực hiện 1 lần
Ví dụ 1 :
S:=0;
FOR i:=1 TO 5 DO S:=S+i;
Biến đếm
Giá trị đầu
Giá trị cuối
Câu lệnh
S:=0;
FOR i:=1 TO 5 DO S:=S+i;
Giá trị i
Giá trị S
Lệnh thực hiện
S:=S+i;
S:=S+i;
S:=S+i;
S:=S+i;
S:=S+i;
Lần:
1
1
0
2
2
3
4
5
1
3
6
10
15
3
4
5
Kết thúc
Ví dụ 2 : Các câu lệnh để tính tổng của bài toán 1
S:=0;
FOR i:=1 TO 100 DO S:=S+1/i;
S:=0;
FOR i:=100 DOWNTO 1 DO S:=S+1/i;
Hoặc:
Ví dụ 3 :
FOR i:=10 TO 20 DO writeln(i);
Kết quả trên màn hình như thế nào ?
Ví dụ 4 : Cho biết lệnh sau khi thực hiện sẽ như thế nào?
FOR i:=1 TO 5 DO
Begin
writeln(i);
i:=i+1;
end;
Chú ý:
Giá trị của được điều chỉnh tự động, vì vậy sau DO không được có câu lệnh làm thay đổi giá trị của biến đếm.
Bài tập về nhà
1. Viết chương trình tính tổng:
2. Viết chương trình để nhập từ bàn phím 2 số nguyên dương M, N (MS =
Với n được nhập vào từ bàn phím
Nếu ...thì...
IF <Điều kiện> THEN
IF <Điều kiện> THEN
Nếu ...thì...,nếu không thì...
CẤU TRÚC RẼ NHÁNH
SỞ GD – ĐT QUẢNG TRỊ
TRƯỜNG TRUNG HỌC PHỔ THÔNG HƯỚNG HÓA
Bài 10
Bài toán 1 : Tính tổng
S =
Ý tưởng:
Ban đầu S0.
Sau đó cho i nhận lần lượt các giá trị liên tiếp tăng từ 1 cho đến 100, mỗi lần i nhận 1 giá trị thì thực hiện: SS+1/i
L?p ? l?n
100
? số lần biết trước
1. Khái niệm lặp:
Bài toán 2 : Tính tổng
Cho đến khi: 2-S<0,001
Ý tưởng:
Ban đầu S0;i0.
Sau đó thực hiện lặp lại:ii+1 và SS+1/i; Cho đến khi 2-S<0,001 thì dừng lại
L?p ? l?n
? số lần chưa biết trước
Trong một số thuật toán có những thao tác phải lặp lại một số lần.
Hai loại:
Cấu trúc lặp mô tả thao tác lặp.
Nhận xét:
Số lần lặp có thể biết trước hoặc không biết trước
- Lặp với số lần biết trước .
- Lặp với số lần chưa biết trước .
Câu lệnh FOR-DO
Câu lệnh WHILE-DO
Bài toán 1 : Tính tổng
Ý tưởng:
Ban đầu S0.
Sau đó cho i nhận lần lượt các giá trị liên tiếp tăng từ 1 cho đến 100, mỗi lần i nhận 1 giá trị thì thực hiện: SS+1/i
Ban đầu S0.
Sau đó cho i nhận lần lượt các giá trị liên tiếp giảm từ 100 xuống 1, mỗi lần i nhận 1 giá trị thì thực hiện: SS+1/i
Dạng tiến
Dạng lùi
2. Câu lệnh For - do
FOR
Dạng lặp lùi:
FOR
Dạng lặp tiến:
Trong đó:
?
?
đếm,
?
Dạng lặp tiến:
Hoạt động của lệnh For - do:
đến
sau từ khoá Do được thực hiện 1 lần
Dạng lặp lùi:
xuống
sau từ khoá Do được thực hiện 1 lần
Ví dụ 1 :
S:=0;
FOR i:=1 TO 5 DO S:=S+i;
Biến đếm
Giá trị đầu
Giá trị cuối
Câu lệnh
S:=0;
FOR i:=1 TO 5 DO S:=S+i;
Giá trị i
Giá trị S
Lệnh thực hiện
S:=S+i;
S:=S+i;
S:=S+i;
S:=S+i;
S:=S+i;
Lần:
1
1
0
2
2
3
4
5
1
3
6
10
15
3
4
5
Kết thúc
Ví dụ 2 : Các câu lệnh để tính tổng của bài toán 1
S:=0;
FOR i:=1 TO 100 DO S:=S+1/i;
S:=0;
FOR i:=100 DOWNTO 1 DO S:=S+1/i;
Hoặc:
Ví dụ 3 :
FOR i:=10 TO 20 DO writeln(i);
Kết quả trên màn hình như thế nào ?
Ví dụ 4 : Cho biết lệnh sau khi thực hiện sẽ như thế nào?
FOR i:=1 TO 5 DO
Begin
writeln(i);
i:=i+1;
end;
Chú ý:
Giá trị của
Bài tập về nhà
1. Viết chương trình tính tổng:
2. Viết chương trình để nhập từ bàn phím 2 số nguyên dương M, N (M
Với n được nhập vào từ bàn phím
* 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 Tiến Long
Dung lượng: |
Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)