§ 10. CẤU TRÚC LẶP
Tiết 13 & 14
I. Xác định mục tiêu:
1. Lựa chọn chủ đề, nội dung dạy học: Cấu trúc lặp
2. Xác định yêu cầu về kiến thức, kỹ năng, thái độ:
*. Kiến thức:
Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán
Hiểu cấu trúc lặp với số lần biết trước và chưa biết trước
Biết cách vận dụng đúng đắn từng loại cấu trúc lặp vào tình huống cụ thể
*. Kĩ năng: Bước đầu hình thành kĩ năng vận dụng kiến thức lặp vào một số thuật toán cụ thể
*. Thái độ: Có thái độ nghiêm túc và nắm vững kiến thức trọng tâm
6 trang |
Chia sẻ: nguyenlinh90 | Lượt xem: 870 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Giáo án Tin học 11 bài 10 tiết 13, 14: Cấu trúc lặp, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Ngày soạn : 10/11.............
Lớp dạy: 11B1 - > B8
Ngày giảng : ......................
§ 10. CẤU TRÚC LẶP
Tiết 13 & 14
I. Xác định mục tiêu:
1. Lựa chọn chủ đề, nội dung dạy học: Cấu trúc lặp
2. Xác định yêu cầu về kiến thức, kỹ năng, thái độ:
*. Kiến thức:
Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán
Hiểu cấu trúc lặp với số lần biết trước và chưa biết trước
Biết cách vận dụng đúng đắn từng loại cấu trúc lặp vào tình huống cụ thể
*. Kĩ năng: Bước đầu hình thành kĩ năng vận dụng kiến thức lặp vào một số thuật toán cụ thể
*. Thái độ: Có thái độ nghiêm túc và nắm vững kiến thức trọng tâm
3. Lập bảng mô tả yêu cầu cần đạt:
Nội dung
Loại câu hỏi/bài tập
Nhận biết
Thông hiểu
Vận dụng thấp
Vận dụng cao
1. Lặp
Câu hỏi/ bài tập định tính
- Biết mô tả cấu trúc lặp trong thuật toán
Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán
Câu hỏi/ bài tập định lượng
2. Lặp với số lần biết trước và câu lệnh For - do
Câu hỏi/ bài tập định tính
Hiểu cấu trúc lặp với số lần lặp biết trước
Câu hỏi/ bài tập định lượng
- Biết mô tả cấu trúc lặp biết trước ở một số bài toán cụ thể
Bài tập thực hành
- Viết chương trình theo một bài toán cụ thể
3. Lặp với số lần biết chưa trước và câu lệnh While - do
Câu hỏi/ bài tập định tính
Hiểu cấu trúc lặp với số lần lặp chưa biết trước
Câu hỏi/ bài tập định lượng
- Biết mô tả cấu trúc lặp chưa biết trước ở một số bài toán cụ thể
Câu hỏi / bài tập thực hành
- Viết chương trình theo một bài toán cụ thể
4. Đề xuất năng lực có thể hướng tới: Biết xây dựng cấu trúc lặp vào một số trường hợp cụ thể.
II. Phương pháp giảng dạy: Gợi mở, diễn giải
III. Chuẩn bị đồ dùng dạy học:
1. GV: Sách giáo khoa, sách giáo viên,
2. HS: Vở ghi chép, sách giáo khoa,
IV. Tiến trình tiết dạy:
Ổn định lớp, kiểm tra sĩ số
Kiểm tra bài cũ: Không
Đặt vấn đề, giới thiệu bài mới
Nội dung bài học:
Hoạt động của giáo viên và học sinh
Kiến thức – kĩ năng cơ bản
1. Ổn định lớp
2. Kiểm tra bài cũ
GV: Nêu dạng lệnh, sơ đồ khối và cách thực hiện của câu lệnh IF dạng đủ
HS: Trả lời
GV: Nhận xét và cho điểm
3. Nội dung bài mới
* HĐ 1:
GV: Chương trình tính điểm cho học sinh một lớp. Với mỗi HS cần thông tin gì?
HS: Cần: - Họ và tên
- Điểm các môn
- Tính điểm trung bình
GV: Giả sử lớp đó có 50HS → không thuận lợi, dễ nhàm chán → cấu trúc lặp
GV: Đưa ra bài toán như SGK
GV: Tổng được tính như thế nào?
HS: Trả lời
GV: Số lần lặp?
HS: 100 lần
GV: Đưa kết quả của tổng S ra khi nào?
HS: Khi đã thực hiện cọng 100 lần
GV: Các NNLT đều có câu lệnh để mô tả cấu trúc lặp
* HĐ 2:
GV: Cấu trúc lặp với số lần biết trước có 2 dạng: dạng tiến và dạng lùi
GV: Giải thích các từ FOR, TO, DO gọi là tên dành riêng. Và giải thích rõ từng câu lệnh trong vòng lặp For - Do.
HS: Chú ý nghe giảng rồi ghi bài
HĐ 2: Tìm hiểu ví dụ:
GV: Khai báo thư viện?
HS: Uses Crt;
GV: Khai báo biến?
HS: Var S: real;
a, N: integer;
GV: Bắt đầu phần thân?
HS: Trả lời
GV: Lệnh xoá màn hình?
HS: Clrscr;
GV: Nhập giá trị cho a?
HS: Write(‘ Nhap gia tri cho a=’);
Readln (a);
GV: Khởi tạo giá trị ban đầu cho tổng S?
HS: Trả lời
GV: Giá trị đầu?
HS: bằng 1
GV: Giá trị cuối?
HS: bằng 100
GV: Biến đếm?
HS: N
GV: Lệnh For- do dạng tiến?
HS: Trả lời
GV: Đưa tổng ra màn hình?
GV: Phần câu lệnh FOR dạng lùi, yêu cầu HS về nhà soạn tương tự dạng tiến.
GV: Chú ý, ở dạng lùi giá trị cuối ≥ giá trị đầu
§ 10. Cấu trúc lặp
1. Lặp:
Với a nguyên, a>2
* Bài toán:
Tính và đưa ra màn hình tổng:
2. Lặp với số lần biết trước và câu lệnh FOR- DO:
Để mô tả cấu trúc lặp với số lần lặp biết trước, Pascal sử dụng câu lệnh For - Do. Câu lệnh For - Do có hai dạng:
* Dạng lặp tiến:
FOR := TO DO ;
* Dạng lặp lùi:
FOR := DOWNTO DO ;
Trong đó:
- biến đếm: là biến đơn, thường có kiểu nguyên
- giá trị đầu, giá trị cuối: cùng kiểu với biến đếm, giá trị đầu ≤ giá trị cuối
Hoạt động FOR- DO:
Dạng tiến: sau DO được thực hiện tuần tự với biến đếm lần lượt nhận giá trị liên tiếp tăng từ giá trị đầu đến giá trị cuối.
Dạng lùi: sau DO được thực hiện tuần tự với biến đếm lần lượt nhận giá trị giảm dần liên tiếp từ giá trị cuồi về giá trị đầu.
* Thuật toán Tong_1a:
B1: S← 1/a; N← 0
B2: N ← N+1
B3: Nếu N >100 thì → B5
B4: S ← S + 1/(a+N) rồi quay lại B2
B5: Đưa tổng S ra. Kết thúc.
Ví dụ 1:
Program Tong_1a;
Uses crt;
Var S: real;
a, N: Integer;
Begin
Clrscr;
Write(‘Nhap gia tri cho a=’);
Readln (a);
S:= 1.0/a;
For N:= 1 to 100 do S:= S+ 1.0/(a+N);
Writeln(‘ Tong S la:’,S:8:4);
End.
Cấu trúc lặp (T2/2)
* HĐ 1:
GV: Tiết trước, đã làm quen với câu lệnh lặp biết trước số lần lặp For- do. Tiết này, chúng ta sẽ làm quen với câu lệnh lặp với số lần chưa biết While
GV: Đưa ra bài toán để HS hiểu như thế nào là lăp với số lần chưa biết
GV: Tổng S được tính như thế nào?
HS: Trả lời
GV: Số lần lặp?
HS: Chưa biết
GV: Đưa kết quả tổng S ra khi nào?
HS: Khi điều kiện được thỏa mãn
GV: Đưa ra dạng lệnh
GV: WHILE, DO thuộc loại tên nào?
HS: Tên dành riêng
GV: Nếu sau DO, muốn thực hiện nhiều lệnh ta phải làm như thế nào?
HS: Sử dụng câu lệnh ghép
GV: Dựa vào sơ đồ khối để mô tả hoạt động của câu lệnh While- do
* HĐ 2:
GV: Đầu tiên, chúng ta làm gì?
HS: Nhập a
GV: Bước tiếp theo?
HS: Gán S=1/a; N=0
GV: Khi nào chúng ta thực hiện việc tính tổng S ← S + 1/ (a+N)?
HS: Khi điều kiện 1/(a+N)>0.0001 thoả mãn
GV: Dựa vào sơ đồ khối
GV: Điều kiện là gì?
HS: 1/(a+N)>0.0001
GV: Xác định câu lệnh cần thực hiện?
HS: S:= S + 1/(a+N);
N:= N+1;
GV: Hướng dẫn HS viết chương trình theo sơ đồ khối
GV: Gọi HS viết khai báo tên chương trình, thư viện, biến?
HS: Thực hiện
GV: Quan sát và sửa lỗi
GV: Gọi HS viết lệnh nhập giá trị cho a?
HS: Thực hiện
GV: Gọi HS thực hiện lệnh gán giá trị ban đầu cho S và N?
HS: Thực hiện
GV: Câu lệnh While-do?
HS: Trả lời
* HĐ 3:
GV: Nếu ban đầu có giá trị False thì lệnh sau DO như thế nào?
HS: không được thực hiện
GV: Giả sử luôn có giá trị True thì lệnh sau DO như thế nào?
HS: Lệnh sau DO được thực hiện vô hạn lần
3. Lặp với số lần lặp chưa biết trước và câu lệnh WHILE- DO:
a. Bài toán:
Tính và đưa ra màn hình tổng:
cho đến khi
b. Câu lệnh While – do:
* Dạng lệnh:
WHILE DO ;
Trong đó:
- WHILE, DO: là tên dành riêng
- : là biểu thức logic
- : 1 câu lệnh đơn hoặc ghép
* Sơ đồ khối:
Đ kiện
Câu lệnh
Đ
S
Ví dụ:
Sơ đồ khối:
Nhập a
S ← 1/a;
N ← 0;
1/(a+N)> 0.0001
S ← S + 1/(a+N);
N ← N+1;
Đưa S. KT
Đ
S
* Chương trình:
Program Baitoan2;
Uses CRT;
Var S: Real;
a, N: integer;
Begin
Write (‘Nhap gia tri cho a=’);
Readln(a);
S:= 1/a; N:=0;
While 1/(a+N)>0.0001 do
Begin
S:= S+ 1/(a+N);
N:= N + 1;
End;
Writeln (‘ Tong la S=’, S:8:4);
Readln
End.
* Chú ý:
- Nếu ban đầu có giá trị FALSE thì lệnh sau DO không được thực hiện lần nào
- Nếu luôn có giá trị TRUE thì lệnh sau DO được thực hiện vô hạn lần
Để thoát khỏi lặp vô hạn, nhấn CTRL- BREAK
V. Củng cố kiến thức và dặn dò:
1. Nội dung bài học:
- Lặp với số lần lặp biết trước – Câu lệnh For - Do
- Dạng lệnh lặp kiểm tra điều kiện trước: WHILE DO ;
- Cách thực hiện theo sơ đồ khối:
Đ kiện
Câu lệnh
Đ
S
- Các chú ý của lệnh lặp While- do
2. Hướng dẫn tự học:
- Nêu dạng lệnh lặp kiểm tra điều kiện trước
- Vẽ sơ đồ khối và nêu cách thực hiện của lệnh lặp kiểm tra điều kiện trước
- Dựa vào sơ đồ khối, trình bày các chú ý khi sử dụng lệnh While
VI. Rút kinh nghiệm