Chào mừng quý vị đến với Dự án Phát triển Giáo dục THPT.
Quý vị chưa đăng nhập hoặc chưa đăng ký làm thành viên, vì vậy chưa thể tải được các tư liệu của Thư viện về máy tính của mình.
Nếu chưa đăng ký, hãy đăng ký thành viên tại đây hoặc xem phim hướng dẫn tại đây
Nếu đã đăng ký rồi, quý vị có thể đăng nhập ở ngay ô bên phải.
Cấu trúc lặp (t1)

- 0 / 0
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Ngô Khắc Quyết (trang riêng)
Ngày gửi: 09h:40' 22-07-2010
Dung lượng: 931.0 KB
Số lượt tải: 4
Nguồn:
Người gửi: Ngô Khắc Quyết (trang riêng)
Ngày gửi: 09h:40' 22-07-2010
Dung lượng: 931.0 KB
Số lượt tải: 4
Số lượt thích:
0 người
TRƯỜNG THPT HIỆP HOÀ 2
CẤU TRÚC LẶP (Tiết 1)
Người soạn: Ngô Khắc Quyết
Bài 10
(tiết 1)
Bài toán 1:
Bài toán 2:
Các bài toán đặt vấn đề : Tính tổng S, với a là số nguyên và a>2
cho đến khi
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 S tăng thêm bao nhiêu?
1
Sau mỗi lần thực hiện giá trị tổng S tăng thêm ???? ( với i =1; 2; 3 ; ...;N)
a + i
Cùng tìm thuật toán
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ấu trúc lặp
1. Bài toán đặt vấn đề
- Dữ liệu ra (Output) : Tổng S
Lập chương trình tính tổng sau:
- Dữ liệu vào (Input) : Nhập N
Hãy xác định INPUT và OUTPUT của bài toán trên!
I. Lặp với số lần lặp biết trước
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 S đượ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
. . . . . . . . . . . . . . . . . . . .
Đ
S
B1: Nhập N;
B2: S:=1; i:=2;
B3: Nếu i > N thì đưa ra giá trị S => Kết thúc;
B4 : S:= S + 1/i;
B5: i := i +1 quay lại B3.
Xây dựng thuật toán
i:= i+1
FOR := TO DO < câu lệnh>;
Ví dụ: S:=1;
FOR i:=2 TO 100 DO S:=S+1/i;
b. Dạng 2 (dạng lùi)
FOR := DOWNTO DO ;
Ví dụ: S:=1;
FOR i:=100 DOWNTO 2 DO S:=S+1/i;
a. Dạng 1 (dạng tiến)
2. Lặp với số lần lặp biết trước
? Giá trị đầu, giá trị cuối là các biểu thức cùng kiểu với biến đếm, giá trị đầu phải nhỏ hơn giá trị cuối.
For i:= 100 to 200 do write(i);
? 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.
Trong đó
? Biến đếm là biến kiểu số nguyên hoặc kí tự.
For i:=1 to 10 do write(i);
For i:=`a` to `z` do write(i);
Uses crt;
Var i,N : Integer; S : real;
BEGIN
Readln;
END.
S:=1;
FOR i:=2 to N do S := S+1/i;
Writeln(` Tong S =`,S:8:3);
Write(` Nhap vao gia tri cua N :`);readln(N);
Program Tinh_tong;
Hãy áp dụng câu lệnh lặp dạng tiến để viết chương trình giải bài toán đặt vấn đề.
Lập chương trình tính tổng sau:
S := 1 ; i := 2;
i >N
KT
S := S +1/ i ;
i := i +1;
2.08
1.83
1.5
1
4
3
2
Lượt
i
S
2.28
5
Nhập N
S := 1 ; i := 2;
2>5 ?
S
S
S := 1 +1/2 ;
i := 2 +1;
3>5 ?
S := 1.5+1/3 ;
i := 3 +1;
4>5 ?
S := 1.83+1/4 ;
i := 4 +1;
5>5 ?
S := 2.08+1/5;
i := 5 +1;
6
S
S
S
6>5 ?
In Tổng S
Tổng S=2.28
Với N = 5
2.28
Đ
Đ
Mô phỏng thuật toán
3. Ví dụ
Tính tổng S (với a là số nguyên nhập vào từ bàn phím và a>2).
?
Hãy xác định giá trị khởi đầu của S, quy luật thay đổi giá trị của S và số lần lặp.
Viết chương trình để giải bài toán trên.
S:=1/a;
- S:= S + 1/(a+i);
- i chạy từ 1 đến 100 => Số lần lặp là 100 lần.
BÀI TẬP TRẮC NGHIỆM
Hãy chọn cú pháp đúng của cấu trúc lặp For?
Đúng rồi, kích phím bất kỳ để đi tiếp
Sai, kích phím bất kỳ để đi tiếp
Hoan hô, bạn đã trả lời đúng
Your answer:
The correct answer is:
Chưa đúng, hãy thử lại
Bạn phải trả lời trước khi sang câu tiếp theo
Hãy chọn câu lệnh For cho bài toán sau: S= 1+2+3+...+100 (với biến đếm i)
Đúng rồi, kích phím bất kỳ để đi tiếp
Sai, kích phím bất kỳ để đi tiếp
Hoan hô, bạn đã trả lời đúng
Your answer:
The correct answer is:
Chưa đúng, hãy thử lại
Bạn phải trả lời trước khi sang câu tiếp theo
Hãy chọn câu lệnh For đúng ?
Đúng rồi, kích phím bất kỳ để đi tiếp
Sai, kích phím bất kỳ để đi tiếp
Hoan hô, bạn đã trả lời đúng
Your answer:
The correct answer is:
Chưa đúng, hãy thử lại
Bạn phải trả lời trước khi sang câu tiếp theo
Hãy điền từ vào chỗ trống.
Đúng rồi, kích phím bất kỳ để đi tiếp
Sai, kích phím bất kỳ để đi tiếp
Hoan hô, bạn đã trả lời đúng
Your answer:
The correct answer is:
Chưa đúng, hãy thử lại
Bạn phải trả lời trước khi sang câu tiếp theo
Quiz
Question Feedback/Review Information Will Appear Here
CẤU TRÚC LẶP (Tiết 1)
Người soạn: Ngô Khắc Quyết
Bài 10
(tiết 1)
Bài toán 1:
Bài toán 2:
Các bài toán đặt vấn đề : Tính tổng S, với a là số nguyên và a>2
cho đến khi
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 S tăng thêm bao nhiêu?
1
Sau mỗi lần thực hiện giá trị tổng S tăng thêm ???? ( với i =1; 2; 3 ; ...;N)
a + i
Cùng tìm thuật toán
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ấu trúc lặp
1. Bài toán đặt vấn đề
- Dữ liệu ra (Output) : Tổng S
Lập chương trình tính tổng sau:
- Dữ liệu vào (Input) : Nhập N
Hãy xác định INPUT và OUTPUT của bài toán trên!
I. Lặp với số lần lặp biết trước
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 S đượ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
. . . . . . . . . . . . . . . . . . . .
Đ
S
B1: Nhập N;
B2: S:=1; i:=2;
B3: Nếu i > N thì đưa ra giá trị S => Kết thúc;
B4 : S:= S + 1/i;
B5: i := i +1 quay lại B3.
Xây dựng thuật toán
i:= i+1
FOR
Ví dụ: S:=1;
FOR i:=2 TO 100 DO S:=S+1/i;
b. Dạng 2 (dạng lùi)
FOR
Ví dụ: S:=1;
FOR i:=100 DOWNTO 2 DO S:=S+1/i;
a. Dạng 1 (dạng tiến)
2. Lặp với số lần lặp biết trước
? Giá trị đầu, giá trị cuối là các biểu thức cùng kiểu với biến đếm, giá trị đầu phải nhỏ hơn giá trị cuối.
For i:= 100 to 200 do write(i);
? 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.
Trong đó
? Biến đếm là biến kiểu số nguyên hoặc kí tự.
For i:=1 to 10 do write(i);
For i:=`a` to `z` do write(i);
Uses crt;
Var i,N : Integer; S : real;
BEGIN
Readln;
END.
S:=1;
FOR i:=2 to N do S := S+1/i;
Writeln(` Tong S =`,S:8:3);
Write(` Nhap vao gia tri cua N :`);readln(N);
Program Tinh_tong;
Hãy áp dụng câu lệnh lặp dạng tiến để viết chương trình giải bài toán đặt vấn đề.
Lập chương trình tính tổng sau:
S := 1 ; i := 2;
i >N
KT
S := S +1/ i ;
i := i +1;
2.08
1.83
1.5
1
4
3
2
Lượt
i
S
2.28
5
Nhập N
S := 1 ; i := 2;
2>5 ?
S
S
S := 1 +1/2 ;
i := 2 +1;
3>5 ?
S := 1.5+1/3 ;
i := 3 +1;
4>5 ?
S := 1.83+1/4 ;
i := 4 +1;
5>5 ?
S := 2.08+1/5;
i := 5 +1;
6
S
S
S
6>5 ?
In Tổng S
Tổng S=2.28
Với N = 5
2.28
Đ
Đ
Mô phỏng thuật toán
3. Ví dụ
Tính tổng S (với a là số nguyên nhập vào từ bàn phím và a>2).
?
Hãy xác định giá trị khởi đầu của S, quy luật thay đổi giá trị của S và số lần lặp.
Viết chương trình để giải bài toán trên.
S:=1/a;
- S:= S + 1/(a+i);
- i chạy từ 1 đến 100 => Số lần lặp là 100 lần.
BÀI TẬP TRẮC NGHIỆM
Hãy chọn cú pháp đúng của cấu trúc lặp For?
Đúng rồi, kích phím bất kỳ để đi tiếp
Sai, kích phím bất kỳ để đi tiếp
Hoan hô, bạn đã trả lời đúng
Your answer:
The correct answer is:
Chưa đúng, hãy thử lại
Bạn phải trả lời trước khi sang câu tiếp theo
Hãy chọn câu lệnh For cho bài toán sau: S= 1+2+3+...+100 (với biến đếm i)
Đúng rồi, kích phím bất kỳ để đi tiếp
Sai, kích phím bất kỳ để đi tiếp
Hoan hô, bạn đã trả lời đúng
Your answer:
The correct answer is:
Chưa đúng, hãy thử lại
Bạn phải trả lời trước khi sang câu tiếp theo
Hãy chọn câu lệnh For đúng ?
Đúng rồi, kích phím bất kỳ để đi tiếp
Sai, kích phím bất kỳ để đi tiếp
Hoan hô, bạn đã trả lời đúng
Your answer:
The correct answer is:
Chưa đúng, hãy thử lại
Bạn phải trả lời trước khi sang câu tiếp theo
Hãy điền từ vào chỗ trống.
Đúng rồi, kích phím bất kỳ để đi tiếp
Sai, kích phím bất kỳ để đi tiếp
Hoan hô, bạn đã trả lời đúng
Your answer:
The correct answer is:
Chưa đúng, hãy thử lại
Bạn phải trả lời trước khi sang câu tiếp theo
Quiz
Question Feedback/Review Information Will Appear Here
 






Các ý kiến mới nhất