Kế hoạch bài dạy Tin học 8 - Tiết 52, Bài 8: Lặp với số lần chưa biết trước - Năm học 2022-2023 - Nguyễn Viết Hùng
Bạn đang xem nội dung tài liệu Kế hoạch bài dạy Tin học 8 - Tiết 52, Bài 8: Lặp với số lần chưa biết trước - Năm học 2022-2023 - Nguyễn Viết Hùng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Ngày soạn: 25/3/2023
TIẾT 52: Bài 8: LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
I. MỤC TIÊU:
1. Kiến thức: - Biết nhu cầu cần có cấu trúc lặp với số lần chưa biết trước trong ngôn ngữ lập
trình;
- Biết ngôn ngữ lập trình dùng cấu trúc lặp với số lần chưa biết trước để chỉ dẫn máy tính thực
hiện lặp đi lặp lại công việc đến khi một điều kiện nào đó được thoả mãn;
2. Kĩ năng: - Nhận biết được đâu là hoạt động lặp với số lần chưa biêt trước.
3. Thái độ: - Nghiêm túc trong quá trình nghiên cứu và thực hành.
II. CHUẨN BỊ:
- GV: SGK, máy chiếu, phim trong các ví dụ về chương trình
- HS: Xem trước bài ở nhà
III. CÁC HOẠT ĐỘNG DẠY HỌC:
1. Ổn định lớp:
2. Kiểm tra bài cũ:
Viết thuật toán tính tổng 100 số tự nhiên đầu tiên 1,2,3, ,99,100
Trả lời
Bước 1. SUM 0; i 0.
Bước 2. i i + 1.
Bước 3. Nếu i ≤ 100, thì SUM SUM + i và quay lại bước 2.
Bước 4. Thông báo kết quả và kết thúc thuật toán.
3. Bài mới
Hoạt động của GV và HS Nội dung
1. Các hoạt động lặp với số lần chưa biết trước
+ GV : y/c hs đọc ví dụ 1sgk/67 a/ Ví dụ 1(sgk).
+ Hs : 2-3 hs đọc ví dụ sgk
+ GV : Phân tích ví dụ
+ Hs : Chú ý lắng nghe
+ GV : y/c hs đọc ví dụ 1sgk/67 b/ Ví dụ 2 : Nếu cộng lần lượt n số tự nhiên đầu
+ Hs : 2-3 hs đọc ví dụ sgk tiên (n = 1, 2, 3,...), Cần cộng bao nhiêu số tự
+ GV : Phân tích ví dụ nhiên đầu tiên để ta nhận được tổng Tn nhỏ nhất
+ Hs : chú ý lắng nghe lớn hơn 1000?
+ GV : Hướng dẫn hs xây dựng
thuật toán
+ Hs : Nghe giáo viên hướng Giải :
dẫn, sau đó tự xây dựng thuật Kí hiệu S là tổng cần tìm và ta có thuật toán như
toán sau:
+ GV : Chạy tay cho học sinh + Bước 1. S 0, n 0.
xem ( Chỉ nên chạy tay thử từ 1 + Bước 2. Nếu S ≤ 1000, n n + 1; ngược lại
đến 10 ) chuyển tới bước 4.
+ Hs : Chú ý nghe . 2
Hs ghi vở ví dụ 2 + Bước 3. S S + n và quay lại bước 2.
+ Bước 4. In kết quả : S và n là số tự nhiên nhỏ
nhất sao cho S > 1000. Kết thúc thuật toán.
* Ta có sơ đồ khối :
+ GV : Giới thiệu sơ đồ khối
+ GV : Nêu nhận xét * Nhận xét : Để viết chương trình chỉ dẫn máy
tính thực hiện các hoạt động lặp như trong các ví
dụ trên, ta có thể sử dụng câu lệnh có dạng lặp với
số lần chưa biết trước
+ GV : Có thể sử dụng lệnh lặp 2. Ví dụ về lệnh lặp với số lần chưa biết trước
với số lần lặp chưa biết trước Trong Pascal câu lệnh lặp với số lần chưa biết
trong các chương trình lập trình trước có dạng:
. Sau đây ta xét câu lệnh và ví while do ;
dụ trong TP trong đó:
- điều kiện thường là một phép so sánh;
+ GV : Giới thiệu cú pháp lệnh
while do .; - câu lệnh có thể là câu lệnh đơn giản hay
+ hs : chú ý nghe và ghi chép câu lệnh ghép.
Câu lệnh lặp này được thực hiện như sau:
Bước 1 : Kiểm tra điều kiện.
Bước 2 : Nếu điều kiện SAI, câu lệnh sẽ bị bỏ qua
và việc thực hiện lệnh lặp kết thúc. Nếu điều kiện
đúng, thực hiện câu lệnh và quay lại bước 1.
+ GV : Xét ví dụ 3 Ví dụ 3.
Chúng ta biết rằng, nếu n càng Với giá trị nào của n ( n>o ) thì 1 < 0.005 hoặc
1 n
lớn thì càng nhỏ, nhưng luôn
n 1 < 0.003? Chương trình dưới đây tính số n nhỏ
luôn lớn hơn 0. Với giá trị nào n
1
1 1 nhất để nhỏ hơn một sai số cho trước :
của n thì < 0.005 hoặc < n
n n
0.003 ?
uses crt;
( Gv đưa phim trong ví dụ 3 ) 3
+ Hs : Đọc ví dụ 3 ( Phim trong) var x: real;
n: integer;
+ GV : giới thiệu chương trình const sai_so=0.003;
mẫu sgk ( Giáo viên in chương begin
trình mẫu trên phim trong ) clrscr;
+ Hs : quan sát x:=1; n:=1;
+ GV : Chạy tay cho học sinh while x>=sai_so do begin n:=n+1; x:=1/n
xem end;
+ Hs : chú ý nghe và tự chạy tay writeln('So n nho nhat de 1/n < ',sai_so:5:4, 'la
lại ',n);
+ GV : Yêu cầu học sinh mở readln
máy tính và mở chương trình ví end.
dụ 3 ( giáo viên chuẩn bị
chương trình mẫu và đưa lên các
máy )
+ Hs : thực hiện
+ GV : Cho học sinh chạy
chương trình trên máy
+ Hs : thực hiện
+ GV : Yêu cầu hs thay điều
kiện sai_so = 0.003 thành 0.002
; 0.001 ; 0.005 ; ...
+ Hs : thực hiện
4. Củng cố:
- Lấy ví dụ về các hoạt động phải lặp lại với số lần chưa biết trước
5. Hướng dẫn về nhà:
- Học bài
- Nghiên cứu trước nội dung các phần còn lại
I. MỤC TIÊU:
1. Kiến thức:
- Kiểm tra kiến thức học sinh về viết chương trình bằng ngôn ngữ lập trình Pascal
- Kiểm tra kiến thức HS về cấu trúc, cú pháp, cách viết chương trình về câu lệnh lặp, lặp với số
lần chưa biết trước.
2. Kĩ năng:
- Sử dụng được lệnh lặp For...do và While...do
- Rèn cách dịch, sửa lỗi chương trình, chạy chương trình xem kết quả.
- Làm quen môi trường pascal.
3. Phẩm chất: 4
- Chăm chỉ, tích cực, chủ động trong các hoạt động học.
- Có ý thức nghiêm túc, trung thực trong học tập, kiểm tra và thi cử
II.HÌNH THỨC
Trắc nghiệm (30%) và tự luận (70%). MA TRẬN, ĐẶC TẢ, ĐỀ, ĐÁP ÁN, BIỂU ĐIỂM KIỂM TRA GIỮA HỌC KỲ II NĂM HỌC 2022-2023
Môn: Tin, Lớp 8 - Thời gian: 45 phút
I. MA TRẬN
Mức độ nhận thức Tổng %
Thời tổng
Nhận biết Thông hiểu Vận dụng Vận dụng cao Số CH gian điểm
Nội dung kiến (phút)
T Đơn vị kiến thức
T thức Số CH Số CH Số CH Số CH
Thời Thời Thời Thời
gian gian gian gian TN TL
TN TL TN TL TN TL TN TL
1.1. Lặp với số lần biết
4 1 13 4 1 13 1 10 8 3 36 7
trước for..do
Câu lệnh lặp
1 1.2 Lặp với số lần chưa
biết trước 2 2 2 2 1 5 4 0 9 3
While ...do
Tổng 6 1 15 6 1 15 1 10 1 5 12 2 45 10
Tỉ lệ (%) 35% 35% 20% 10%
Tỉ lệ chung (%) 70% 30% 100% 6
II. ĐẶC TẢ
Số câu hỏi theo mức độ nhận
thức
T Nội dung Đơn vị kiến
Mức độ kiến thức, kĩ năng cần kiểm tra, đánh giá Vận
T kiến thức thức Nhận Thôn Vận
dụng
biết g hiểu dụng
cao
Nhận biêt:
- Nhận dạng được cứ pháp và hoạt động của vòng lặp xác
định For..do
Thông hiểu:
1.1. Lặp với số
- Đọc hiểu chương trình có vòng lặp For Do
lần biết trước 5 5 1 0
- Hiểu được cứ pháp và hoạt động của vòng lặp xác định
for..do
For..do
Vận dụng:
1. Chủ đề 1: - Biết sử dụng vòng lặp For..do để viết một số chương trình
Câu lệnh lặp giải quyết một số vấn đề toán học.
1
Nhận biết:
- Biết nhu cầu cần có cấu trúc lặp với số lần chưa biết trước
trong ngôn ngữ lập trình.
1.2 Lặp với số
- Biết ngôn ngữ lập trình dùng cấu trúc lặp với số lần chưa
lần chưa biết
biết trước để chỉ dẫn máy tính thực hiện lặp đi lặp lại công 2 2 0 1
trước
việc đến khi một điều kiện nào đó được thỏa mãn.
While ...do
Thông hiểu:
- Hiểu hoạt động của câu lệnh lặp với số lần chưa biết trước
while .. do trong Pascal. 7
Số câu hỏi theo mức độ nhận
thức
T Nội dung Đơn vị kiến
Mức độ kiến thức, kĩ năng cần kiểm tra, đánh giá Vận
T kiến thức thức Nhận Thôn Vận
dụng
biết g hiểu dụng
cao
Vận dụng:
- Viết đúng lệnh while .. do trong một số tình huống đơn
giản
Tổng 7 7 1 1 8
III. ĐỀ KIỂM TRA
A. Phần trắc nghiệm (3điểm):
Khoanh tròn chữ cái đứng trước đáp án em cho là đúng ở mỗi câu
Câu 1: Hoạt động nào sau đây lặp với số lần biết trước:
A. Hôm nay em thức dậy trễ do được nghỉ học
B. Lấy xà bông để giặt đồ
C. Mỗi ngày, em thức dậy lúc 5 giờ sáng
D. Rửa chén
Câu 2: Trong câu lệnh lặp for do, số vòng lặp là biết trước và bằng:
A. giá trị cuối – giá trị đầu + 1
B. giá trị cuối – giá trị đầu + 2
C. giá trị cuối – giá trị đầu - 1
D. giá trị cuối – giá trị đầu - 2
Câu 3: Sau khi thực hiện đoạn chương trình Pascal :
X:=3
For i : = 1 to 3 do
x : = x - 1
X sẽ nhận được giá trị nào dưới đây ?
A. – 1; B. 1 ; C. -4 ; D. 0 ;
Câu 4: Chương trình Pascal sau đây thực hiện hoạt động nào?
var i: integer;
begin 9
for i:=1 to 99 do;
end.
A. Chương trình chạy biến i từ 1 đến 100.
B. Chương trình chạy biến i từ 1 đến 99 rồi không làm gì cả.
C. Chương trình chạy biến i từ 1 đến 100 rồi không làm gì cả.
D. Chương trình chạy biến i từ 1 đến 99.
Câu 5: Điều kiện trong câu lệnh lặp với số lần chưa biết trước thường là :
A. phép gán B. Câu lệnh đơn C. Câu lệnh ghép D. Phép so
sánh
Câu 6: Câu lệnh lặp For i:=1 to 5 do Writeln(‘Day la lan lap thu ‘,i); sẽ in ra
màn hình mấy dòng chữ?
A. Day la lan lap thu 1
B. Day la lan lap thu 3
C. Day la lan lap thu 5
D. Day la lan lap thu 7
Câu 7: Trong Pascal, câu lệnh lặp thường có dạng:
A. for := to do
B. for : to do ;
C. for = to do ;
D. for := to do ;
Câu 8: Hãy đọc đoạn chương trình sau:
s:=0; 10
for i:= 1 to 5 do s:= s * i;
Sau khi thực hiện xong, kết quả s bằng:
A. 15 B. 0 C. Kết quả khác D. 120
Câu 9 Câu lệnh pascal nào sau đây là hợp lệ?
A. For i:= ’1’ to ‘10’ do writeln(‘A’);
B. For i:= 2.5 to 10,5 do writeln(‘A’);
C. For i = 1 to 10 do writeln(‘A’);
D. For i:= 1 to 10 do writeln(‘A’);
Câu 10: Trong ngôn ngữ lập trình Pascal, câu lệnh lặp với số lần chưa biết
trước là:
A. If (Điều kiện) then (Câu lệnh);
B. Var i,n: Integer;
C. While (điều kiện) do (câu lệnh);
D. For (Biến đếm):=(Giá trị đầu) downto (Giá trị cuối) do (câu lệnh);
Câu 11: Đâu là hoạt động lặp với số lần chưa biết trước?
A. Hàng ngày em đi học.
B. Một tuần trường em tổ chức chào cờ 1 lần.
C. Ngày em đánh răng ba lần
D. Em sẽ đến nhà bà ngoại chơi vào hôm cả bố và mẹ đi vắng.
Câu 12 Việc đầu tiên mà câu lệnh While ... do cần thực hiện là gì?
A. Thực hiện sau từ khóa Do
B. Kiểm tra giá trị của
C. Thực hiện câu lệnh sau từ khóa Then 11
D. Kiểm tra
B. Tự Luận ( (7 điểm)
Câu 13 (2đ) Cho 2 ví dụ về hoạt động được thực hiện lặp lại trong cuộc sống hàng
ngày.
Câu 14 (3đ) Em hãy sắp xếp chương trình tính tổng N số tự nhiên sau cho phù
hợp?
Var N, i: integer;
Write(‘Nhap so N=’); s:=0;
S: Longint; readln(n);
For i:=1 to n do
Begin
Program tinh_tong;
S:=s+i;
Writeln(‘Tong cua ‘, N, ‘ So tu nhien dau tien s=’, s);
End.
Readln
Câu 15(2 đ) : Viết chương trình tính tổng theo dạng cấu trúc While do
푻 = + + + ퟒ + . +
........................HẾT..........................
IV. ĐÁP ÁN, BIỂU ĐIỂM
A. Trắc nghiệm (3điểm): Mỗi ý đúng 0,25 điểm.
Câu 1 2 3 4 5 6 7 8 9 10 11 12
Đáp án A A C B D C D B D C D B
B. Thực hành
Câu Nội dung trả lời Điểm
13 Mỗi ví dụ đúng đạt 2 điểm 2
Program tinh_tong; 0,5
14 Var N, i: integer; 0,5
S: Longint;
Begin 0,5
Write(‘Nhap so N=’); readln(n);
s:=0;
0,5
For i:=1 to n do 12
S:=s+i; 0,5
Writeln(‘Tong cua ‘, N, ‘ So tu nhien dau tien s=’, s);
Readln 0,5
End.
15 Program tinh_tong_dang_While_do; 0,5
Uses crt;
var T,i: real;
begin 0,5
clrscr;
T:=0;i:=1;
while i<=50 do begin T:=T+1/i; i:=i+1; 0,5
end;
writeln(‘ Tổng T là : ’ , T);
readln
end. 0,5
Tổng 7.0
Chú ý: Học sinh giải cách khác nếu đúng vẫn được tính điểm./.
File đính kèm:
ke_hoach_bai_day_tin_hoc_8_tiet_52_bai_8_lap_voi_so_lan_chua.docx



