Kĩ năng: Làm các bài tập về câu lệnh lặp với số lần chưa biết trước while … do trong Pascal2. Thái độ: Học tập nghiêm túc, có ý thức tự giác, tinh thần vươn lên vượt qua khó khăn.[r]
Trang 1BÀI TẬP
I MỤC TIÊU:
1 Kiến thức: Ôn tập câu lệnh lặp với số lần chưa biết trước while … do trong Pascal.
2 Kĩ năng: Làm các bài tập về câu lệnh lặp với số lần chưa biết trước while … do trong Pascal.
3 Thái độ: Học tập nghiêm túc, có ý thức tự giác, tinh thần vươn lên vượt qua khó khăn.
II CHUẨN BỊ:
1 Giáo viên: Sách giáo khoa, máy tính điện tử, giáo án, máy chiếu.
2 Học sinh: Vở ghi, sách giáo khoa.
III CÁC HOẠT ĐỘNG DẠY – HỌC:
1 Ổn định lớp: (1’)
8A1:………
8A2:………
2 Kiểm tra bài cũ:
Lồng ghép trong nội dung bài học
3 Bài mới:
Hoạt động 1: (8’) Câu hỏi và Bài tập 1.
+ GV: Đưa ra thuật toán 1 và yêu
cầu HS thực hiện các nội dung:
B1 S 10, x 0.5
B2 Nếu S 10, chuyển tới bước 4
B3 n n + 3, S S – n quay lại
bước 2
B4 Thông báo S và kết thúc thuật
toán
+ GV: Khi thực hiện thuật toán máy
sẽ thực hiện bao nhiêu vòng lặp
+ GV: Kết thúc thuật toán giá trị của
S bằng bao nhiêu?
+ GV: Viết chương trình Pascal thể
hiện thuật toán đó
+ GV: Nhận xét đánh giá sửa chữa
các lỗi sai của các nhóm
+ HS: Các nhóm tìm hiểu thảo luận về thuật toán được đưa ra
+ HS: Các nhóm thực hiện dưới
sự trợ giúp và hướng dẫn của GV
+ HS: Các nhóm trình bày kết quả của mình Các nhóm khác nhận xét bổ sung
+ HS: Khi thực hiện thuật toán máy tính sẽ thực hiện 9 vòng lặp
+ HS: Kết thúc thuật toán giá trị của S = 0.5
+ HS: Đoạn chương trình Pascal tương ứng:
S:= 10; x := 0.5;
While S > 5.2 do S := S - x;
Writeln(S);
1 Bài tập 1
- Khi thực hiện thuật toán máy tính sẽ thực hiện 9 vòng lặp
- Kết thúc thuật toán giá trị của S = 0.5
- Đoạn chương trình Pascal tương ứng:
S:= 10; x := 0.5;
While S > 5.2 do S := S - x; Writeln(S);
Hoạt động 2: (10’) Câu hỏi và Bài tập 2.
+ GV: Đưa ra yêu cầu:
a Cho đoạn lệnh sau:
S := 0; n := 0;
While S <= 10 do
Begin n := n + 1; S := S + n end;
+ GV: Với đoạn lệnh trên chương
trình thực hiện bao nhiêu vòng lặp
b Cho đoạn lệnh sau:
S := 0; n := 0;
+ HS: Tập trung lắng nghe
+ HS: Các nhóm trình bày kết quả của mình Các nhóm khác nhận xét bổ sung
+ HS: Với đoạn lệnh trên chương trình thực hiện 5 vòng lặp
+ HS: Các nhóm tìm hiểu thảo luận về thuật toán được đưa ra
2 Bài tập 2
Câu a
- Với đoạn lệnh trên chương trình thực hiện 5 vòng lặp
Câu b.
- Chương trình thực hiện vô tận vì sau câu lệnh n := n +
1 câu lệnh lặp kết thúc nên điều kiện S = 0 luôn được
Ngày soạn:
Ngày dạy:
Tuần 25
Tiết: 49
Trang 2While S <= 10 do
n := n + 1; S := S + n;
+ GV: Với đoạn lệnh trên chương
trình thực hiện bao nhiêu vòng lặp
+ GV: Yêu cầu HS giải thích vì sao
câu lệnh trên lại lặp vô hạn lần
+ GV: Cho HS thảo luận nhóm
trong vòng 5’ để rút ra nhận xét từ
hai đoạn chương trình trên sau khi
đã được tìm hiểu
+ GV: Nhận xét đánh giá và rút ra
kết luận cho HS
+ HS: Các nhóm thực hiện dưới
sự trợ giúp và hướng dẫn của GV
+ HS: Chương trình thực hiện vô tận vì sau câu lệnh n := n + 1 câu lệnh lặp kết thúc nên điều kiện S
= 0 luôn được thỏa mãn
+ HS: Điều kiện cần được thay đổi để chuyển sang trạng thái không thỏa mãn Khi đó vòng lặp mới kết thúc hữu hạn các bước
câu lệnh trong While…do thường
là câu lệnh ghép
thỏa mãn
* Nhận xét: Điều kiện cần được thay đổi để chuyển sang trạng thái không thỏa mãn Khi đó vòng lặp mới kết thúc hữu hạn các bước câu lệnh trong While…do thường là câu lệnh ghép
Hoạt động 3: (10’) Câu hỏi và Bài tập 3.
+ GV: Hãy chỉ ra lỗi sai trong các
câu lệnh sau đây:
a) x:=10; While x:=10 do x:= x+5;
b) x:=10; While x=10 do x= x+5;
c) s := 0; n := 0; While s <= 10 do
n:=n+1; s:=s+n;
+ GV: Quan sát các nhóm thảo luận
và hướng dẫn giải thích cho HS
+ GV: Các nhóm thực hiện xong,
đại diện nhóm lên bảng thuyết trình
+ HS: Thảo luận nhóm trình bày kết quả vào bảng phụ
a) Thừa dấu hai chấm trong điều kiện
b) Thiếu dấu hai chấm trong câu lệnh gán;
c) Thiếu các từ khóa begin và end trước và sau các lệnh n := n+ 1 và
s := s + n, do đó vòng lặp trở thành vô tận
+ HS: Các nhóm trình bày kết quả của mình
3 Bài tập 3
a) Thừa dấu hai chấm trong điều kiện
b) Thiếu dấu hai chấm trong câu lệnh gán;
c) Thiếu các từ khóa begin
và end trước và sau các lệnh
n := n+ 1 và s := s + n, do
đó vòng lặp trở thành vô tận
Hoạt động 4: (15’) Câu hỏi và Bài tập 4.
+ GV: Viết chương trình Pascal để
tính tổng của 100 số tự nhiên đầu
+ GV: Hướng dẫn HS thuật toán
thực hiện của bài toán
+ GV: Quan sát hướng dẫn từng
nhóm thực hiện viết chương trình
+ GV: Yêu cầu các nhóm thực hiện
xong lên bảng trình bày kết quả
+ GV: Nhận xét đánh giá sửa chữa
các lỗi sai của các nhóm
+ GV: Viết chương trình mô tả bài
toán trên Pascal chạy và giải thích ý
nghĩa các câu lệnh cho HS
+ GV: Nhận xét chốt nội dung bài
tập cho HS
+ HS: Thảo luận theo nhóm trình bày vào bảng phụ Chương trình:
S: longint;
begin
while i <= 100 do
S:= S + i;
i:= i +1;
write('Tong tu 1 den
readln;
end
4 Bài tập 4.
Chương trình:
var i: byte; S: longint; begin
while i <= 100 do
S:= S + i; i:= i +1;
write('Tong tu 1 den 100 la:',S); readln;
end
4 Củng cố:
- Củng cố trong nội dung bài tập
5 Dặn dò: (1’)
- Xem trước nội dung phần tiếp theo của bài
IV RÚT KINH NGHIỆM: