Để hiểu được tác dụng của các câu lệnh lặp với số lần chưa biết trước và hiểu được vai trò của việc kết hợp các cấu trúc điều khiển.. Chúng ta đi vào bài thực hành SỬ DỤNG LỆNH LẶP WHILE[r]
Trang 1Ngày soạn: 01/03/2011
Ngày dạy: /03/2011
Lớp: 8
Giáo viên hướng dẫn: Lê Đình Trung Giáo viên dạy: Cái Thị Hạ Ngân
Tiết 52, Bài thực hành 6 SỬ DỤNG LỆNH LẶP WHILE DO
A MỤC TIÊU
Sau khi học xong bài này học sinh cần đạt được các mục tiêu sau:
1 Kiến thức:
- Hiểu các câu lệnh lặp while do trong chương trình
- Biết sử dụng câu lệnh lặp while do hoặc for do phù hợp với tình huống cụ thể
- Biết vai trò của việc kết hợp các cấu trúc điều khiển
2 Kỹ năng:
- Rèn luyện kĩ năng về khai báo, sử dụng biến
- Rèn luyện khả năng đọc chương trình
3 Thái độ:
- Hình thành phương pháp làm việc khoa học
- Vận dụng vào trong học tập và thực tiễn
B.Chuẩn bị
1 Giáo viên
- Bài giảng truyền thống, bài giảng điện tử
- Sơ đồ logic nội dung
- Máy tính, Projector
2 Học sinh
- SGK, và dụng cụ học tập
C Phương pháp
- Thuyết trình
- Vấn đáp
- Trực quan
- Phát hiện và giải quyết vấn đề
D Tiến trình lên lớp
I Ổn định tổ chức(1p)
- Ổn định chổ ngồi học sinh
- Kiểm tra sĩ số( vắng…phép,…không phép)
II Kiểm tra bài cũ(5p)
Câu hỏi : Trình bày cú pháp câu lệnh lặp với số lần chưa biết trước Và giải thích?
while <điều kiện> do <câu lệnh>;
Đáp án:
Bước 1: Kiểm tra điều kiện
Bước 2:
Nếu điều kiện đúng thì thực hiện câu lệnh và quay lại bước 1 để quyết
định có kết thúc hay không
Trang 2 Nếu điều kiện sai thi câu lệnh sẽ bị bỏ qua và việc thực hiện lệnh lặp kết
thúc
Lưu ý: Câu lệnh có thể là câu lệnh đơn hay câu lệnh phức
III Triển khai bài mới (35p)
Ở tiết trước các em đã được tìm hiểu nội dung Lặp với số lần chưa biết trước Qua
đó, cũng đã biết được những điểm khác biệt giữa câu lệnh lặp với số lần biết trước và câu lệnh lặp với số lần chưa biết trước Để hiểu được tác dụng của các câu lệnh lặp với số lần chưa biết trước và hiểu được vai trò của việc kết hợp các cấu trúc điều khiển Chúng ta đi vào bài thực hành SỬ DỤNG LỆNH LẶP WHILE DO (2p)
Hoạt động 1: Viết chương trình ở mức độ vận
dụng lí thuyết.(13p)
Hoạt động 1.1: Ra bài tập
Sử dụng câu lệnh lặp while do để viết
chương
trình in ra màn hình lời chào của từng bạn trong
lớp.(Chương trình cho phép từng bạn nhập tên
của mình và in ra lời chào tương ứng)
Ví dụ: Khi một bạn nhập tên là Tùng, chương
trình sẽ
in ra “Chào bạn, Tùng”
Hoạt động 1.2: Hướng dẫn HS
GV: Hãy cho biết Input và Output của bài toán?
HS: + Input: Tên các HS trong lớp.
+ Output: Lời chào các bạn trong lớp
GV: Trình bày thuật toán?
Gọi 2- 3 HS trả lời
HS: Trình bày.
GV: Khái quát.
+ Bước 1: Nhập N là số lượng HS sẽ được
nhập
từ bàn phím
i 1
+ Bước 2 Trong khi i < N thì
Nhập tên của bạn
+ Bước 3: Đưa tên ra màn hình và kết thúc
HS: Đối chiếu bài làm của mình.
GV: Viết chương trình bằng NNLT Pascal?
Gọi 2 HS trả lời
HS: Trình bày.
GV: Khái quát.
PROGRAM CHAO_HOI;
VAR
I: INTEGER;
TEN: STRING;
BEGIN
Viết chương trình ở mức độ vận
dụng lí thuyết
Thuật toán
+ Bước 1: Nhập N là số lượng
HS sẽ được nhập
từ bàn phím
i 1
+ Bước 2 Trong khi i < N thì Nhập tên của bạn
+ Bước 3: Đưa tên ra màn hình
và kết thúc
Viết chương trình
PROGRAM CHAO_HOI;
VAR I: INTEGER;
TEN: STRING;
Trang 3I:=1;
WHILE I<=N DO
BEGIN
WRITE(‘ NHAP TEN CUA
BAN VAO’);
READLN(TEN);
WRITE(‘ CHAO BAN’,TEN);
END;
END
HS: Đối chiếu bài làm của mình.
GV: Nêu những điểm cần lưu ý.
HS: Chú ý.
BEGIN I:=1;
WHILE I<=N DO BEGIN
WRITE(‘ NHAP TEN CUA BAN VAO’);
READLN(TEN); WRITE(‘ CHAO BAN’,TEN);
END;
END
Hoạt động 2: Mô tả thuật toán và gõ chương
trình ở bài tập 1.(20p)
Hoạt động 2.1: Mô tả thuật toán của chương
trình, các biến dự định sẽ sử dụng và các kiểu
của chúng
GV: Gọi HS đọc đề bài ở sách giáo khoa.
HS: Viết chương trình sử dụng lệnh lặp While
… do để tính n số thực x1,x2,x3,…,xn.Các số n và
x1,x2,x3,…,xn.được nhập từ bàn phím
GV: Ý tưởng?
Gọi 2- 3 HS trả lời
HS: Trả lời.
GV: Khái quát.
Sử dụng một biến đếm và lệnh lặp While…do
để nhập và cộng dần các số vào một biến kiểu số
thực cho đến khi nhập đủ n số
HS: Đối chiếu bài làm của mình.
GV: Hãy cho biết Input và Output của bài toán?
HS: + Input: Dãy số thực x1,x2,x3,…,xn
+ Output: Giá trị trung bình(x1 + x2 + x3 + … +
xn)/n
GV: Trình bày thuật toán?
Gọi 2- 3 HS trả lời
HS: Trình bày.
GV: Khái quát.
+ Bước 1: Nhập N là số lượng số thực được
nhập
từ bàn phím
1.1 DEM 0;
1.2 SUM 0;
+ Bước 2: Trong khi dem < N thì
2.1 Nhập giá trị số thực x từ bàn phím
2.2 SUM SUM + x;
2.3 DEM DEM + 1;
+ Bước 3: TB SUM/N
Mô tả thuật toán và gõ chương
trình ở bài tập 1
Viết chương trình sử dụng lệnh lặp While … do để tính n số thực
x1,x2,x3,…xn.Các số n x1,x2,x3,…,xn được nhập từ bàn phím
Thuật toán
Trang 4+ Bước 4: In TB ra màn hình rồi kết thúc
HS: Đối chiếu bài làm của mình và ghi bài.
Hoạt động 2.2: Gõ chương trình vào máy và lưu
với tên Tính_TB
GV: Gõ chương trình vào máy, chạy chương
trình và kiểm tra kết quả
HS: Thực hiện.
GV: Chỉnh sửa lỗi cho HS
HS: Thực hiện sửa lỗi để hoàn thiện chương
trình
program tinh_trung_binh;
uses crt;
var n, dem: integer;
x, TB: real;
begin
dem:=0; TB:=0;
writeln(‘nhap cac so can tinh n =’);
readln(n);
while dem < n do
begin
dem:= dem + 1;
writeln(‘nhap so thu’, dem,’=’);
readln(x);
TB:= TB + x;
end;
TB:=TB/n;
witeln(‘Trung binh của’,n,’so là =’, TB
:10:3);
readln;
end.
Hoạt động 2.3: Đọc hiểu và tìm hiểu ý nghĩa của
từng câu lệnh Dịch chương trình và sửa lỗi, nếu
có Chạy chương trình với các bộ dữ liệu được
gõ từ bàn phím và kiểm tra kết quả nhận được
GV: Đưa lần lượt các yêu cầu và hướng dẫn.
+ Bước 1: Nhập N là số lượng số thực được nhập
từ bàn phím
1.1 DEM 0;
1.2 SUM 0;
+ Bước 2: Trong khi dem < N thì
2.1 Nhập giá trị số thực x từ bàn phím
2.2 SUM SUM + x; 2.3 DEM DEM + 1; + Bước 3: TB SUM/N + Bước 4: In TB ra màn hình rồi kết thúc
Đọc hiểu và tìm hiểu ý nghĩa của từng câu lệnh
Dịch chương trình và sửa lỗi, nếu có
Chạy chương trình với các bộ
Trang 5HS: Thực hiện.
Hoạt động 2.4: Viết lại chương trình sử dụng
câu lệnh for…do thay cho whlie…do
GV: Yêu cầu HS nêu lại cú pháp câu lệnh
for…do và whlie…do
HS: Trả lời.
GV: Hướng dẫn cho HS.
HS: Chú ý để thực hiện.
dữ liệu được gõ từ bàn phím và kiểm tra kết quả nhận được
program tinh_trung_binh;
uses crt;
var n, dem, i: integer;
x, TB: real;
begin
dem:=0; TB:=0; i:=1;
writeln(‘nhap cac so can tinh
n =’);
readln(n);
for i := 1 to n do begin
dem:= dem + 1;
writeln(‘nhap so thu’, dem,’=’);
readln(x);
TB:= TB + x;
end;
TB:=TB/n;
witeln(‘Trung binh của’,n,’so là
=’, TB :10:3);
readln;
end.
IV Củng cố (3p)
Giáo viên nhận xét và đánh giá tiết thực hành
+ Những gì làm được và chưa là được
V Dặn dò (1p)
+ Nắm cú pháp và ý nghĩa câu lệnh.
+ Làm các bài tập có sử dụng câu lệnh và kết hợp câu lệnh điều khiển.
+ Đọc trước bài tập 2
- Thuật toán? Ý tưởng?
E RÚT KINH NGHIỆM
Ngày … tháng … năm 2011 Duyệt GV hướng dẫn
Lê Đình Trung