Bài 10. Cấu trúc lặp
Chia sẻ bởi Nguyễn Mạnh Hùng |
Ngày 10/05/2019 |
107
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 10
Giáo án điện tử tin học lớp 11
Nguyeón Maùnh Huứng
Trường thpt khánh lâm
CÁC BÀI TOÁN ĐẶT VẤN ĐỀ
Tính tổng S với a là số nguyên và a>2
Bài toán 2:
cho đến khi
Bài toán 1:
CÙNG TÌM THUẬT TOÁN
Xuất phát
Lần 1
Lần 2
+…
Lần N
Mỗi lần thực hiện, giá trị tổng tăng bao nhiêu?
TÌM SỰ KHÁC BIỆT
Bài toán 1:
Bài toán 2:
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 100 lần.
Số lần lặp chưa biết trước.
1. LẶP VỚI SỐ LẦN BIẾT TRƯỚC
a. Bài toán nêu vấn đề:
Dữ liệu ra (Output) : Tổng S
Lặp chương trình tính tổng sau:
Hãy xác định INPUT và OUTPUT của bài toán trên?
Dữ liệu vào (Input) : Nhập N
PHÂN TÍCH BÀI TOÁN VỚI N=100
Nhận xét
S1 = 1
S2 = S1 + 1/2
S3 = S2 + 1/3
S4 = S3 + 1/4
.....
S100 = S99 + 1/100
Bắt đầu từ S2 việc tính S1 được lặp đi lặp lại 99 lần theo quy luật
Ssau = Strước+ 1/i,
Với I chạy từ 2 100
. . . . . . . . . . . . . . . . . . . .
So sánh hai thuật toán sau
SƠ ĐỒ THUẬT TOÁN
Thuật toán dạng lặp tiến.
Dạng lặp tiến: Biến đếm tự động tăng dần từ giá trị đầu đến giá trị cuối.
Thuật toán dạng lặp lùi.
Dạng lặp lùi: Biến đếm tự động giảm dần từ giá trị cuối đến giá trị đầu.
CẤU TRÚC DẠNG LẶP TIẾN
Hãy nêu cấu trúc dạng lặp tiến?
Biến đếm: biến kiểu nguyên, kí tự hoặc miền con
Giá trị đầu, giá trị cuối là biểu thức cùng kiểu với biến đếm.
Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối.
For:= to do ;
Ví dụ S:=1;
FOR i:=2 TO 100 DO S:=S+1/i;
Quan sát sơ đồ khối, hãy cho biết sự thực hiện của máy?
Bước 1: tính giá trị đầu, gán cho biến đếm.
Bước 2: Nếu biến đếm <= giá trị cuối thì:
thực hiện lệnh cần lặp.
tăng biến đếm 1 đơn vị, quay lại bước 2
CẤU TRÚC DẠNG LẶP LÙI
Hãy nêu cấu trúc dạng lặp lùi?
Biến đếm: biến kiểu nguyên, kí tự hoặc miền con
Giá trị đầu, giá trị cuối là biểu thức cùng kiểu với biến đếm.
Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối.
for:= downto do ;
Ví dụ S:=1;
FOR i:=100 DOWNTO 2 DO S:=S+1/i;
Quan sát sơ đồ khối, hãy cho biết sự thực hiện của máy?
Bước 1: tính giá trị đầu, gán cho biến đếm.
Bước 2: Nếu biến đếm >= giá trị cuối thì:
thực hiện lệnh cần lặp.
giảm biến đếm 1 đơn vị, quay lại bước 2
Lưu ý:
+ Biến đếm là biến đơn, có kiểu nguyên hoặc kí tự.
+ Giá trị đầu, giá trị cuối là các biểu thức có cùng kiểu với biến đếm. Giá trị đầu phải nhỏ hơn giá trị cuối.
+ Giá trị của biến đếm được điều chỉnh tự động, vì vậy câu lệnh viết sau DO không được thay đổi giá trị biến đếm
For i:=1 to 10 do write(i);
For i:=‘a’ to ‘z’ do write(i);
For i:= 100 to 200 do write(i);
Thực hiện tháng 8 năm 2007
E_mail: [email protected] – [email protected]
Bài 10
Giáo án điện tử tin học lớp 11
Nguyeón Maùnh Huứng
Trường thpt khánh lâm
Ti?t th? 2/3
Quan sát sách giáo khoa trang 44, chương trình cài đặt các thuật toán Tong_1A?
Quan sát sách giáo khoa trang 44, chương trình cài đặt các thuật toán Tong_1B?
Quan sát sách giáo khoa trang 45, chương trình thực hiện việc nhập từ bàn phím hai số nguyên dương M và N (MHãy lập trình tính:
Thực hiện tháng 8 năm 2007
E_mail: [email protected] – [email protected]
Bài 10
Giáo án điện tử tin học lớp 11
Nguyeón Maùnh Huứng
Trường thpt khánh lâm
Ti?t th? 3/3
3. LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
a. Bài toán nêu vấn đề:
Dữ liệu ra (Output) : Tổng S
Lặp chương trình tính tổng sau:
Hãy xác định INPUT và OUTPUT của bài toán trên?
Dữ liệu vào (Input) : Nhập N
THUẬT TOÁN
Nhận xét thuật toán.
* Bước 5: Đưa S ra màn hình, rồi kết thúc.
* Bước 1: S ← 1/a; N ← 0; {Khởi tạo S và N}
* Bước 3: N ← N + 1;
* Bước 2: Nếu 1/(a + N) < 0,0001 thì chuyển đến bước 5;
* Bước 4: S ← S + 1/(a + N) rồi quay lại bước 2;
Từ bước 2 đến bước 4 được lặp lại nhiều lần nếu điều kiện 1/(a + N) < 0.0001 chưa được thoả mãn.
CÂU LỆNH WHILE - DO
Hãy nêu cấu trúc lặp với câu lệnh while - do?
Điều kiện: biểu thức quan hệ hoặc biểu thức logic
Câu lệnh: là môt câu lệnh trong Pascal
While <điều kiện> do;
Quan sát sơ đồ khối, hãy cho biết sự thực hiện của máy?
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.
BÀI TOÁN ĐẶT VẤN ĐỀ
Tính tổng S với a là số nguyên và a>2
Nhận xét
Quan sát sách giáo khoa trang 47, chương trình cài đặt thuật toán Tong_2?
.....
Quan sát sách giáo khoa trang 47, chương trình cài đặt thuật toán “ Tìm ước số chung lớn nhất của hai số nguyên dương M và N?
THUẬT TOÁN
* Bước 5: Đưa ra kết quả ƯCLN rồi kết thúc.
* Bước 1: Nhập M, N;
* Bước 3: Nếu M > N thì M ← M + N ngược lại N ← N - M ;
* Bước 2: Nếu M = N thì lấy giá trị chung này làm ƯCLN rồi chuyển đến bước 5;
* Bước 4: Quay lại bước 2;
.....
Chừng nào M≠N thì
nếu M> N thì M:= M-N
ngược lại N:= N-M
Đến khi M=N thì
đưa ra ƯCLN(M,N)=M
kết thúc
CÂU LỆNH REPEAT - UNTIL
Hãy nêu cấu trúc lặp với câu lệnh repeat - until?
Repeat until <điều kiện >;
.....
Thực hiện tháng 8 năm 2007
E_mail: [email protected] – [email protected]
Giáo án điện tử tin học lớp 11
Nguyeón Maùnh Huứng
Trường thpt khánh lâm
CÁC BÀI TOÁN ĐẶT VẤN ĐỀ
Tính tổng S với a là số nguyên và a>2
Bài toán 2:
cho đến khi
Bài toán 1:
CÙNG TÌM THUẬT TOÁN
Xuất phát
Lần 1
Lần 2
+…
Lần N
Mỗi lần thực hiện, giá trị tổng tăng bao nhiêu?
TÌM SỰ KHÁC BIỆT
Bài toán 1:
Bài toán 2:
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 100 lần.
Số lần lặp chưa biết trước.
1. LẶP VỚI SỐ LẦN BIẾT TRƯỚC
a. Bài toán nêu vấn đề:
Dữ liệu ra (Output) : Tổng S
Lặp chương trình tính tổng sau:
Hãy xác định INPUT và OUTPUT của bài toán trên?
Dữ liệu vào (Input) : Nhập N
PHÂN TÍCH BÀI TOÁN VỚI N=100
Nhận xét
S1 = 1
S2 = S1 + 1/2
S3 = S2 + 1/3
S4 = S3 + 1/4
.....
S100 = S99 + 1/100
Bắt đầu từ S2 việc tính S1 được lặp đi lặp lại 99 lần theo quy luật
Ssau = Strước+ 1/i,
Với I chạy từ 2 100
. . . . . . . . . . . . . . . . . . . .
So sánh hai thuật toán sau
SƠ ĐỒ THUẬT TOÁN
Thuật toán dạng lặp tiến.
Dạng lặp tiến: Biến đếm tự động tăng dần từ giá trị đầu đến giá trị cuối.
Thuật toán dạng lặp lùi.
Dạng lặp lùi: Biến đếm tự động giảm dần từ giá trị cuối đến giá trị đầu.
CẤU TRÚC DẠNG LẶP TIẾN
Hãy nêu cấu trúc dạng lặp tiến?
Biến đếm: biến kiểu nguyên, kí tự hoặc miền con
Giá trị đầu, giá trị cuối là biểu thức cùng kiểu với biến đếm.
Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối.
For
Ví dụ S:=1;
FOR i:=2 TO 100 DO S:=S+1/i;
Quan sát sơ đồ khối, hãy cho biết sự thực hiện của máy?
Bước 1: tính giá trị đầu, gán cho biến đếm.
Bước 2: Nếu biến đếm <= giá trị cuối thì:
thực hiện lệnh cần lặp.
tăng biến đếm 1 đơn vị, quay lại bước 2
CẤU TRÚC DẠNG LẶP LÙI
Hãy nêu cấu trúc dạng lặp lùi?
Biến đếm: biến kiểu nguyên, kí tự hoặc miền con
Giá trị đầu, giá trị cuối là biểu thức cùng kiểu với biến đếm.
Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối.
for
Ví dụ S:=1;
FOR i:=100 DOWNTO 2 DO S:=S+1/i;
Quan sát sơ đồ khối, hãy cho biết sự thực hiện của máy?
Bước 1: tính giá trị đầu, gán cho biến đếm.
Bước 2: Nếu biến đếm >= giá trị cuối thì:
thực hiện lệnh cần lặp.
giảm biến đếm 1 đơn vị, quay lại bước 2
Lưu ý:
+ Biến đếm là biến đơn, có kiểu nguyên hoặc kí tự.
+ Giá trị đầu, giá trị cuối là các biểu thức có cùng kiểu với biến đếm. Giá trị đầu phải nhỏ hơn giá trị cuối.
+ Giá trị của biến đếm được điều chỉnh tự động, vì vậy câu lệnh viết sau DO không được thay đổi giá trị biến đếm
For i:=1 to 10 do write(i);
For i:=‘a’ to ‘z’ do write(i);
For i:= 100 to 200 do write(i);
Thực hiện tháng 8 năm 2007
E_mail: [email protected] – [email protected]
Bài 10
Giáo án điện tử tin học lớp 11
Nguyeón Maùnh Huứng
Trường thpt khánh lâm
Ti?t th? 2/3
Quan sát sách giáo khoa trang 44, chương trình cài đặt các thuật toán Tong_1A?
Quan sát sách giáo khoa trang 44, chương trình cài đặt các thuật toán Tong_1B?
Quan sát sách giáo khoa trang 45, chương trình thực hiện việc nhập từ bàn phím hai số nguyên dương M và N (M
Thực hiện tháng 8 năm 2007
E_mail: [email protected] – [email protected]
Bài 10
Giáo án điện tử tin học lớp 11
Nguyeón Maùnh Huứng
Trường thpt khánh lâm
Ti?t th? 3/3
3. LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
a. Bài toán nêu vấn đề:
Dữ liệu ra (Output) : Tổng S
Lặp chương trình tính tổng sau:
Hãy xác định INPUT và OUTPUT của bài toán trên?
Dữ liệu vào (Input) : Nhập N
THUẬT TOÁN
Nhận xét thuật toán.
* Bước 5: Đưa S ra màn hình, rồi kết thúc.
* Bước 1: S ← 1/a; N ← 0; {Khởi tạo S và N}
* Bước 3: N ← N + 1;
* Bước 2: Nếu 1/(a + N) < 0,0001 thì chuyển đến bước 5;
* Bước 4: S ← S + 1/(a + N) rồi quay lại bước 2;
Từ bước 2 đến bước 4 được lặp lại nhiều lần nếu điều kiện 1/(a + N) < 0.0001 chưa được thoả mãn.
CÂU LỆNH WHILE - DO
Hãy nêu cấu trúc lặp với câu lệnh while - do?
Điều kiện: biểu thức quan hệ hoặc biểu thức logic
Câu lệnh: là môt câu lệnh trong Pascal
While <điều kiện> do
Quan sát sơ đồ khối, hãy cho biết sự thực hiện của máy?
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.
BÀI TOÁN ĐẶT VẤN ĐỀ
Tính tổng S với a là số nguyên và a>2
Nhận xét
Quan sát sách giáo khoa trang 47, chương trình cài đặt thuật toán Tong_2?
.....
Quan sát sách giáo khoa trang 47, chương trình cài đặt thuật toán “ Tìm ước số chung lớn nhất của hai số nguyên dương M và N?
THUẬT TOÁN
* Bước 5: Đưa ra kết quả ƯCLN rồi kết thúc.
* Bước 1: Nhập M, N;
* Bước 3: Nếu M > N thì M ← M + N ngược lại N ← N - M ;
* Bước 2: Nếu M = N thì lấy giá trị chung này làm ƯCLN rồi chuyển đến bước 5;
* Bước 4: Quay lại bước 2;
.....
Chừng nào M≠N thì
nếu M> N thì M:= M-N
ngược lại N:= N-M
Đến khi M=N thì
đưa ra ƯCLN(M,N)=M
kết thúc
CÂU LỆNH REPEAT - UNTIL
Hãy nêu cấu trúc lặp với câu lệnh repeat - until?
Repeat
.....
Thực hiện tháng 8 năm 2007
E_mail: [email protected] – [email protected]
* 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 Mạnh Hùng
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)