Bài 10. Cấu trúc lặp
Chia sẻ bởi Nguyễn Ngọc Hợi |
Ngày 10/05/2019 |
81
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:
Tổ Tin học
Program Hien_thi;
Begin
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Readln;
End.
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Tổ Tin học
Đề bài:
Tổ Tin học
CẤU TRÚC LẶP
Bài toán 1: Tính tổng:
1. LẶP
Bài toán 2: Tính tổng:
Tổ Tin học
CẤU TRÚC LẶP
Phân tích bài toán 1 với N =100
1. LẶP
Nhận xét:
S1 = S0 + 1/1
S2 = S1 + 1/2
S3 = S2 + 1/3
S4 = S3 + 1/4
...............
S100 = S99 + 1/100
Bắt đầu từ S1 việc tính S được lặp đi lặp lại 100 lần theo quy luật
Ssau = Strước+ 1/i
với i chạy từ 1 ? 100
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
S0= 0
1
2
3
4
100
...............
Bắt đầu từ S1 việc tính S theo qui tắc nào? Lặp lại bao nhiêu lần?
Tổ Tin học
CẤU TRÚC LẶP
1. LẶP
Bài toán 1: Tính tổng:
Ý tưởng:
Xuất phát, S:=0; i:=1;
Trong khi i<= N thì thực hiện lặp lại thao tác S:=S+ 1/i ; i:=i+1;
(Vậy S:=S+1/i sẽ lặp lại bao nhiêu lần ?)
Số lần lặp là N lần
Bài toán 2: Tính tổng:
Ý tưởng:
Xuất phát, S:=0; i:=1;
Trong khi S<=10 thì thực hiện lặp lại thao tác S:=S+ 1/i ; i:=i+1;
Số lần lặp không xác định trước được.
(Vậy S:=S+1/i sẽ lặp lại bao nhiêu lần ?)
Tổ Tin học
CẤU TRÚC LẶP
* Xét bài toán 1: Tính tổng
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
Thuật toán 1:
Nhập N
S:=0; i:=1;
B1: Nhập N;
B2: S:=0; i:=1;
B3: Nếu i>N thì đưa ra S và kết thúc
B4: S:= S + 1/i; i:= i+1;
B5: Quay lại B3;
i>N
Thông báo S
Kết thúc
S:=S+1/i;
i:=i+1;
Đ
B1: Nhập N;
B2: S:=0; i:=N;
B3: Nếu i<1 thì đưa ra s và kết thúc
B4: S:=S + 1/i; i:= i - 1;
B5: Quay lại B3;
Thuật toán 2:
S
Nhập N
S:=0; i:=N;
i<1
Thông báo S
Kết thúc
S:=S+1/i;
i:= i - 1;
Đ
S
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
FOR := TO DO < CÂU LỆNH>;
* Câu lệnh FOR - DO
- Dạng lùi:
- Dạng tiến:
FOR := DO < CÂU LỆNH>;
TO
DOWNTO
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
- Hoạt động của câu lệnh:
Dạng tiến
Biếnđếm:= giátrịđầu
Biếnđếm <= giátrịcuối
Thực hiện câu lệnh
TRUE
Biếnđếm tự động tăng lên 1 đơn vị
FALSE
Dạng lùi
Biếnđếm:= giátrịcuối
Biếnđếm >= giátrịđầu
Thực hiện câu lệnh
TRUE
Biếnđếm tự động giảm đi 1 đơn vị
FALSE
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
* Câu lệnh FOR - DO
- Ví dụ 1:
Program Hien_thi;
Begin
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Readln;
End.
Câu lệnh Writeln ở trên được viết lại bao nhiêu lần?
Program Hien_thi;
Var i: integer;
Begin
for i:=1 to 10 do
Writeln(`Xin chao cac em hoc sinh`);
Readln;
End.
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
* Câu lệnh FOR - DO
- Mô phỏng ví dụ 1:
Program Hien_thi;
Var i: integer;
Begin
for i:=1 to 10 do
Writeln(`Xin chao cac em hoc sinh`);
Readln;
End.
Xin chao cac em hoc sinh
Giá trị của biến i = 1
Xin chao cac em hoc sinh
Giá trị của biến i = 2
Xin chao cac em hoc sinh
Giá trị của biến i = 3
Xin chao cac em hoc sinh
Giá trị của biến i = 4
Xin chao cac em hoc sinh
Giá trị của biến i = 5
Xin chao cac em hoc sinh
Giá trị của biến i = 6
Xin chao cac em hoc sinh
Giá trị của biến i = 7
Xin chao cac em hoc sinh
Giá trị của biến i = 8
Xin chao cac em hoc sinh
Giá trị của biến i = 9
Xin chao cac em hoc sinh
Giá trị của biến i = 10
Giá trị của biến i =11>10 thoát khỏi vòng lặp
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
* Câu lệnh FOR - DO
Program CHU_Y;
Var i: integer;
Begin
for i:=1 to 10 do
begin
Writeln(`Xin chao cac em hoc sinh`);
i:=i+2;
end;
Readln;
End.
Program Hien_thi;
Var i: integer;
Begin
for i:=1 to 10 do
Writeln(`Xin chao cac em hoc sinh`);
Readln;
End.
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
* Câu lệnh FOR - DO
- Ví dụ 2:
Viết chương trình để tính tổng S sau (Với N nguyên dương nhập từ bàn phím)
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
* Câu lệnh FOR - DO
- Ví dụ 2:
Viết chương trình để tính tổng S sau dựa trên ngôn ngữ lập trình Pascal
Program tong_tien;
Var i,N: integer;
S: real;
Begin
Writeln(`Nhap N = `); Readln(N);
S:= 0;
for i:=1 to N do
S:= S+ 1/i;
Writeln(`Tong can tim la `, S);
Readln;
End.
Program tong_lui;
Var i,N: integer;
S: real;
Begin
Writeln(`Nhap N = `); Readln(N);
S:= 0;
for i:=N downto 1 do
S:= S+ 1/i;
Writeln(`Tong can tim la `, S);
Readln;
End.
Program Hien_thi;
Begin
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Readln;
End.
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Xin chao cac em hoc sinh
Tổ Tin học
Đề bài:
Tổ Tin học
CẤU TRÚC LẶP
Bài toán 1: Tính tổng:
1. LẶP
Bài toán 2: Tính tổng:
Tổ Tin học
CẤU TRÚC LẶP
Phân tích bài toán 1 với N =100
1. LẶP
Nhận xét:
S1 = S0 + 1/1
S2 = S1 + 1/2
S3 = S2 + 1/3
S4 = S3 + 1/4
...............
S100 = S99 + 1/100
Bắt đầu từ S1 việc tính S được lặp đi lặp lại 100 lần theo quy luật
Ssau = Strước+ 1/i
với i chạy từ 1 ? 100
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
S0= 0
1
2
3
4
100
...............
Bắt đầu từ S1 việc tính S theo qui tắc nào? Lặp lại bao nhiêu lần?
Tổ Tin học
CẤU TRÚC LẶP
1. LẶP
Bài toán 1: Tính tổng:
Ý tưởng:
Xuất phát, S:=0; i:=1;
Trong khi i<= N thì thực hiện lặp lại thao tác S:=S+ 1/i ; i:=i+1;
(Vậy S:=S+1/i sẽ lặp lại bao nhiêu lần ?)
Số lần lặp là N lần
Bài toán 2: Tính tổng:
Ý tưởng:
Xuất phát, S:=0; i:=1;
Trong khi S<=10 thì thực hiện lặp lại thao tác S:=S+ 1/i ; i:=i+1;
Số lần lặp không xác định trước được.
(Vậy S:=S+1/i sẽ lặp lại bao nhiêu lần ?)
Tổ Tin học
CẤU TRÚC LẶP
* Xét bài toán 1: Tính tổng
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
Thuật toán 1:
Nhập N
S:=0; i:=1;
B1: Nhập N;
B2: S:=0; i:=1;
B3: Nếu i>N thì đưa ra S và kết thúc
B4: S:= S + 1/i; i:= i+1;
B5: Quay lại B3;
i>N
Thông báo S
Kết thúc
S:=S+1/i;
i:=i+1;
Đ
B1: Nhập N;
B2: S:=0; i:=N;
B3: Nếu i<1 thì đưa ra s và kết thúc
B4: S:=S + 1/i; i:= i - 1;
B5: Quay lại B3;
Thuật toán 2:
S
Nhập N
S:=0; i:=N;
i<1
Thông báo S
Kết thúc
S:=S+1/i;
i:= i - 1;
Đ
S
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
FOR
* Câu lệnh FOR - DO
- Dạng lùi:
- Dạng tiến:
FOR
TO
DOWNTO
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
- Hoạt động của câu lệnh:
Dạng tiến
Biếnđếm:= giátrịđầu
Biếnđếm <= giátrịcuối
Thực hiện câu lệnh
TRUE
Biếnđếm tự động tăng lên 1 đơn vị
FALSE
Dạng lùi
Biếnđếm:= giátrịcuối
Biếnđếm >= giátrịđầu
Thực hiện câu lệnh
TRUE
Biếnđếm tự động giảm đi 1 đơn vị
FALSE
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
* Câu lệnh FOR - DO
- Ví dụ 1:
Program Hien_thi;
Begin
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Writeln(`Xin chao cac em hoc sinh`);
Readln;
End.
Câu lệnh Writeln ở trên được viết lại bao nhiêu lần?
Program Hien_thi;
Var i: integer;
Begin
for i:=1 to 10 do
Writeln(`Xin chao cac em hoc sinh`);
Readln;
End.
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
* Câu lệnh FOR - DO
- Mô phỏng ví dụ 1:
Program Hien_thi;
Var i: integer;
Begin
for i:=1 to 10 do
Writeln(`Xin chao cac em hoc sinh`);
Readln;
End.
Xin chao cac em hoc sinh
Giá trị của biến i = 1
Xin chao cac em hoc sinh
Giá trị của biến i = 2
Xin chao cac em hoc sinh
Giá trị của biến i = 3
Xin chao cac em hoc sinh
Giá trị của biến i = 4
Xin chao cac em hoc sinh
Giá trị của biến i = 5
Xin chao cac em hoc sinh
Giá trị của biến i = 6
Xin chao cac em hoc sinh
Giá trị của biến i = 7
Xin chao cac em hoc sinh
Giá trị của biến i = 8
Xin chao cac em hoc sinh
Giá trị của biến i = 9
Xin chao cac em hoc sinh
Giá trị của biến i = 10
Giá trị của biến i =11>10 thoát khỏi vòng lặp
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
* Câu lệnh FOR - DO
Program CHU_Y;
Var i: integer;
Begin
for i:=1 to 10 do
begin
Writeln(`Xin chao cac em hoc sinh`);
i:=i+2;
end;
Readln;
End.
Program Hien_thi;
Var i: integer;
Begin
for i:=1 to 10 do
Writeln(`Xin chao cac em hoc sinh`);
Readln;
End.
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
* Câu lệnh FOR - DO
- Ví dụ 2:
Viết chương trình để tính tổng S sau (Với N nguyên dương nhập từ bàn phím)
Tổ Tin học
CẤU TRÚC LẶP
2. LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CÂU LỆNH FOR … DO:
* Câu lệnh FOR - DO
- Ví dụ 2:
Viết chương trình để tính tổng S sau dựa trên ngôn ngữ lập trình Pascal
Program tong_tien;
Var i,N: integer;
S: real;
Begin
Writeln(`Nhap N = `); Readln(N);
S:= 0;
for i:=1 to N do
S:= S+ 1/i;
Writeln(`Tong can tim la `, S);
Readln;
End.
Program tong_lui;
Var i,N: integer;
S: real;
Begin
Writeln(`Nhap N = `); Readln(N);
S:= 0;
for i:=N downto 1 do
S:= S+ 1/i;
Writeln(`Tong can tim la `, S);
Readln;
End.
* 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 Ngọc Hợi
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)