Luyện tập – Tin học 11
I. Mục tiêu.
1. Kiến thức.
- Củng cố lại hco học sinhnhững kiến thức liên quan đén tổ chức rẽ nhánh
và lặp : Cấu trúc lặp, sơ đồ thực hiện, sự thực hiện của máy khi gặp lệnh
lặp.
2. Kĩ năng.
- Rèn luyện kĩ năng vận dụng và linh hoạt trong công việc lựa hcọn cấu
trúc rẽ nhánh và cấu trúc lặp phù hợp để giải quyết bài toán đặt ra.
3. Thái độ.
- Tự giác tích cực, chủ động trong giải quyết các bài tập.
II. Đồ dùng dạy học.
1. Chuẩn bị của giáo viên.
- Máy chiếu Projector, máy vi tính để giới thiệu ví dụ minh họa, một số
chương trình mẫu.
2. Chuẩn bị của học sinh
- Sách giáo khoa.
III. Hoạt động dạy – học.
1. Hoạt động 1: Nhắc lại kiến thức đã học về tổ hcức rẽ nhánh và lặp .
a. Mục tiêu:
- Học sinh nắm được cấu trúc rẽ nhánh và lặp, sơ đồ thực hiện của máy.
Phân được được sự giống và khác nhau giữa lệnh lặp For và lệnh lặp While.
b. Nội dung:
- Rẽ nhánh
If <btđk> then <lệnh 1> Else <lệnh 2>;
If <btđk> then <lệnh >;
- Lặp For
For <biến đếm>:=<giá trị đầu> To <giá trị cuối> Do <lệnh>;
For <biến đếm>:=<giá trị đầu> downto <giá trị cuối> Do <lệnh>;
- Lặp While
While <điều kiện> Do <lệnh>;
c. Các bước tiến hành:
hướng dẫn của giáo viên Hoạt động của học sinh
1. Yêu cầu học sinh nhắc lại cấu
trúc rẽ nhánh.
- Chiếu chương trình tìm giá trị
1. Độc lập suy nghĩ để trả lời
If <btđk> then <lệnh 1> Else
<lệnh 2>;
lớn nhất của hai số, trong đó có sử
dụng lệnh rẽ nhánh dạng đủ.
Var a b: Integer;
Begin
readln(a, b);
If a>b then write(a) esle write(b);
read;
end.
- Hỏi: Chương trình thực hiện
công việc gì?
- Yêu cầu học sinh viết lại chương
trình bằng cách sử dụng lệnh rẽ
nhánh dạng thiếu.
2. Yêu cầu học sinh nhắc lại cấu
trúc của các lệnh lặp đã học.
- Chiếu lên bảng hai chương trình
đã chuẩn bị sẵn, trong đó một
If <btđk> then <lệnh >;
- In ra màn hình giá trị lớn nhất .
Var a, b : Integer;
Begin
Readln(a, b); max:=b;
If a>b then max:=a;
Write(max); readln;
end.
2. Suy nghĩ và trả lời.
For <biến đếm>:=<giá trị đầu>;
To <giá trị cuối> Do <lệnh>;
While <điều kiện> Do <lệnh cần
lặp>;
chương trình sử dụng lệnh lặp For và
một chương trình sử dụng lặp while.
- Yêu cầu: So sánh sự giống và
khác nhau của hai dạng lệnh đó.
- Quan sát, suy nghĩ và trả lời .
- Giống: đều là lệnh lặp.
- Khác: For lặp với số lần đã xác
định trước trong khi While lạp với số
lần chưa xác định.
2. Hoạt động 2: rèn luyện kĩ năng vận dụng tổ chức lặp.
a. mục tiêu:
- Học sinh biết sử dụng lệnh lặp để giải quyết bài toán cụ thể. Linh hoạt
trong việc chịn lựa cấu trúc lặp.
Ví dụ 1 :
Viết chương trình tính giá trị biểu thức Y =
Ví dụ 2:
Viết chương trình tính giá trị của tổng X(N) = 1
3
+ 3
3
+ 5
3
+ +
(2N + 1)
3
, với N lần lượt 0, 1, 2, 3, , , chừng nào X(N) cò nhỏ hơn 2 x
10
9
. Đưa ra các giá trị X(N) ra màn hình.
c. Các bước tiến hành:
hướng dẫn của giáo viên Hoạt động của học sinh
1. Tìm hiểu bài tập 1 và giải quyết.
- Chiếu nội dung ví dụ 1 lên bảng.
- Hỏi: Có thể khai triển biểu thức
Y thành tổng của các số hạng như thế
nào?
- Nhìn vào công thức khai triển,
cho biết N lấy giá trị tỏng đoạn nào?
- Hỏi : Ta sử dụng cấu trúc điều
khiển lặp nào là phù hợp?
- Chia lớp làm ba nhóm, yêu cầu
viết chương trình lên bìa trong.
- Thu phiếu trả lời, chiếu kết quả
lên bảng.
- Gọi học sinh nhóm khác nhận
xét đánh giá và bổ sung.
2. Tìm hiểu nội dung ví dụ 2 và
định hướng học sinh giải quyết ở
nhà.
- Chiếu nội dung ví dụ 2 lên bảng
- Hãy cho biết N nhận giá trị trong
1. Quan sát và suy nghĩ để giải
quyết bài toán.
Y = 1/2 + 2/3 + 3/4 + + 50/51
1 50
- Sử dụng cấu trúc lặp có số lần đã
xác định.
- Thảo luận theo nhóm để viết
chương trình lên bìa trong.
- báo cáo kết quả của nhóm.
- Nhận xét, đánh giá và bổ sung
các thiếu sót của nhóm khác
2. Quan sát và theo dõi những định
hướng của giáo viên.
- Chưa xác định được cận cuối.
- Dùng cấu trúc lặp có số lần chưa
đoạn nào? Xác định được chưa?
- Hỏi : Dùng cấu trúc điều khiển
nào là thích hợp?
- Yêu cầu học sinh về nhà lập trình
trên máy, tiết sau nộp lạo cho giáo
viên.
xác định .
- Ghi nhớ làm bài tập về nhà .
IV. Đánh giá cuối bài.
1. Những nội dung đã học.
- Có hai cấu trúc lặp:
+ Lặp For: Số lần lặp đã xác định.
+ Lặp While: Số lần lặp chưa xác định.
2. Câu hỏi và bài tập về nhà.
- Cho chương trình được viết bằng lệnh For.
Var x, i:word; nt:boolean;
Begin
Readln(x);
nt :=true;
For i :=2 to x – 1 do
if x mod i = 0 then nt:=false;
If nt = true then write(x,’la so nguyen to’) else write(x, ‘khong phai
snt’);
readln;
End.
- Hãy viết lại chương trình trên trong đó lệnh lặp For được thay bằng
lệnh lặp Whlie. Hãy cho biết, trong bài toán trên sử dụng lệnh lặp nào là tốt
hơn.