1. Trang chủ
  2. » Giáo án - Bài giảng

BAI 8. LAP VOI SO LAN CHUA BIET TRUOC- TIET BAI TAP

8 11,9K 43
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 8
Dung lượng 293,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

do để giải các bài tập có cấu trúc lặp với số lần chưa biết trước, biết cách sử dụng kết hợp cặp từ khóa Begin..end đối với những lệnh ghép trong câu lệnh While..do.. – Đặt vấn đề vào bà

Trang 1

GIÁO ÁN MÔN TIN HỌC 8

TUẦN 27 Tiết PPCT: 15 Tiết TKB: 1 LỚP: 8/7

Ngày soạn : 05/03/2010 Ngày dạy : 11/03/2010 GVHD: La Thị Huyền Đan

SV dạy: Trần Ngọc Khoa

BÀI TẬP

I MỤC TIÊU

– Kiến thức:

+ Nắm vững cú pháp của câu lệnh lặp While do.

+ Biết kiểm tra vòng lặp của câu lệnh While do.

– Kỹ năng: vận dụng được câu lệnh While do để giải các bài tập có cấu trúc lặp với số lần chưa biết trước, biết cách sử dụng kết hợp cặp từ khóa Begin end đối với những lệnh ghép trong câu lệnh While do.

– Thái độ: tập trung, tích cực trong giờ học

II CHUẨN BỊ

– GV: giáo án, sgk, bảng phụ

– HS: xem kỹ bài cũ, đọc trước bài mới

III TIẾN TRÌNH BÀI DẠY

HĐ1: Kiểm tra bài cũ, đặt vấn đề vào bài mới ( 4’)

– HS:

+ Cho biết cú pháp của câu lệnh lặp While do?

+ Câu lệnh lặp While do được thực hiện như thế nào?

– GV nhận xét, cho điểm

– Đặt vấn đề vào bài mới:

Tiết trước chúng ta đã được làm quen với các hoạt động lặp với số lần chưa

biết trước và cách thể hiện các hoạt động đó bằng câu lệnh lặp While do Để biết

rõ hơn cách sử dụng câu lệnh lặp While do, hôm nay chúng ta sẽ cùng tìm hiểu

một số bài tập về các hoạt động lặp với số lần chưa biết trước

Trang 2

HĐ2: Bài tập 3 (14’)

– GV cho HS nhắc lại về các

bước thực hiện câu lệnh lặp

While do qua sơ đồ (bảng

phụ)

* Chú ý: câu lệnh ở đây là

câu lệnh của lệnh lặp

While do, không được nhầm

lẫn với câu lệnh của toàn

chương trình Nếu câu lệnh

ghép thì phải để trong cặp từ

khóa Begin end.

– Gọi HS đọc bài tập 3

(?) Bài toán yêu cầu làm gì?

– HS nhắc lại

Câu lệnh While do được

thực hiện:

1 Kiểm tra điều kiện.

2 Nếu điều kiện sai, câu

lệnh bỏ qua, lệnh lặp kết

thúc; điều kiện đúng, câu

lệnh được thực hiện và

quay lại bước 1

– Cá nhân HS đọc

– Tìm số lần lặp và giá trị

S khi kết thúc

Bài tập 3 (SGK/71)

– GV treo bảng thuật toán 1

và gọi HS giải thích ý nghĩa

của từng bước

a) Thuật toán 1

B1: S  10, x  0.5.

B2: Nếu S5.2, chuyển tới bước

4.

B3: S S-x và quay lại bước 2.

– B1: gán giá trị S và x

– B2 : kiểm tra điều kiện nếu S>5.2 thì chuyển đến B3, nếu S5.2 thì chuyển đến B4

– B3 : thực hiện câu lệnh

a) Thuật toán 1

Trang 3

B4: Thông báo S và kết thúc thuật

toán.

gán S S–x, quay lại B2.

– B4 : in kết quả

(?) Điều kiện của vòng lặp? – S  5.2

(?) Câu lệnh của vòng lặp? – S  S – x;

– GV hướng dẫn HS lập bảng

để kiểm tra số vòng lặp của

chương trình

– GV thực hiện mẫu 2 vòng

lặp đầu

– Cho HS chia nhóm thảo

luận (4 nhóm – trong 2’) hoàn

thành bảng trên để xác định

số vòng lặp của chương trình

– GV nhận xét

– HS th o lu n nhóm và tr ảo luận nhóm và trả ận nhóm và trả ảo luận nhóm và trả

l i (10 vòng l p) ời (10 vòng lặp) ặp).

LẦN

điều kiện S:=10; x:=0.5 S=10>5.2

1 S:=10-0.5 =9.5 S=9.5>5.2

2 S:=9.5-0.5 =9.0 S=9.0>5.2

3 S:=9.0-0.5 =8.5 S=8.5>5.2

4 S:=8.5-0.5 =8.0 S=8.0>5.2

5 S:=8.0-0.5 =7 5 S=7.5>5.2

6 S:=7.5-0.5 =7.0 S=7.0>5.2

7 S:=7.0-0.5 =6.5 S=6.5>5.2

8 S:=6.5-0.5 =6.0 S=6.0>5.2

9 S:=6.0-0.5 =5.5 S=5.5>5.2

10 S:=5.5-0.5 =5.0 S=5.0<5.2

– Khi thực hiện chương trình, máy tính sẽ thực hiện 10 vòng lặp

– Khi kết thúc vòng lặp, giá trị của S bằng 5.0

– GV hướng dẫn HS viết

chương trình

Var…

Begin

<câu lệnh>;

While <điều kiện> do <câu

lệnh>;

<câu lệnh>;

End.

– HS ghi nhận

Var S , x : real;

Begin

S := 10; x := 0.5;

While S>5.2 do S := S - x;

– Cho HS chia nhóm thảo

luận (4 nhóm - 2’) viết

chương trình

– HS hoạt động nhóm viết chương trình vào bảng phụ, treo lên bảng

– Gọi các nhóm báo cáo lên – HS thực hiện yêu cầu và

Trang 4

bảng và nhận xét.

– Cho HS hoàn thành vào vở

ghi nhận

– HS thực hiện

Writeln(‘Gia tri cua S: ’, S:5:2);

End

– GV treo bảng phụ thuật

toán 2 và gọi HS giải thích ý

nghĩa của từng bước

B1: S  10, n  0.

B2: Nếu S10, 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.

– B1: gán giá trị S và n

– B2 : kiểm tra điều kiện nếu S<10 thì chuyển đến B3, nếu S10 thì chuyển đến B4

– B3 : thực hiện câu lệnh

gán n n + 3, S  S –

n, quay lại B2.

– B4 : in kết quả

b) Thuật toán 2

(?) Điều kiện của vòng lặp? – S < 10

(?) Câu lệnh của vòng lặp? – n  n + 3, S  S – n;

(?) Cho HS thảo luận nhóm

(4 nhóm – 2’) lập bảng tương

tự như đối với Thuật toán 1

và cho biết máy tính sẽ thực

hiện thuật toán trong bao

nhiêu vòng lặp?

– HS thảo luận nhóm và trả lời (không có vòng lặp nào được thực hiện)

– GV gọi HS nhận xét

– GV nhận xét

– HS nhận xét

– HS theo dõi

– Cho HS thảo luận nhóm (4

nhóm – 2’) viết chương trình

– Các nhóm viết chương trình vào bảng phụ

Var S , n : integer;

Begin S:=10; n:=0;

While S<10 do Begin

n := n + 3;

– Gọi các nhóm báo cáo lên

bảng và nhận xét

– Cho HS hoàn thành vào vở

– HS thực hiện yêu cầu và ghi nhận

– HS thực hiện

LẦN LẶP nn+3 SS+n Kiểm tra điều kiện

n:=0; S:=10; S=10 : không thỏa điều kiện vòng lặp

Trang 5

S := S - n;

End;

Writeln(‘Gia tri cua S: ’, S:5:2);

End

(?) Có nhận xét gì về các

bước thực hiện của câu lệnh

While do?

– Kiểm tra điều kiện rồi mới thực hiện lệnh lặp

– Trong câu lệnh lặp

While do, điều kiện được

kiểm tra trước khi các bước lặp được thực hiện

– GV nhận xét, tóm ý

HĐ3: Bài tập 4 (10’)

– GV treo bảng phụ đoạn

chương trình a)

S:=0; n:=0;

While S10 do

Begin n:=n+1;S:=S+n end;

a) Đoạn chương trình 1

(?) Bài toán yêu cầu làm gì?

(?) Điều kiện của vòng lặp?

(?) Câu lệnh của vòng lặp?

– Cho HS thảo luận nhóm

(4 nhóm – 2’) hoàn thành bài

tập vào bảng

– Tìm số lần lặp của đoạn chương trình

– S  10

– n  n + 1; S  S + n;

– HS th o lu n và báo cáo ảo luận nhóm và trả ận nhóm và trả

LẦN LẶP

nn+

1

SS+

n

Kiểm tra điều kiện n:=0; S:=0; S=0  10

4 4 10 S=10  10

5 5 15 S=15>10

– Cho nhóm khác nhận xét

– GV nhận xét

– Nhóm nhận xét

– HS ghi nhận – Chương trình thực hiện 5

vòng lặp

– GV treo bảng phụ đoạn

chương trình b)

S:=0; n:=0;

While S10 do

n:=n+1;S:=S+n;

b) Đoạn chương trình 2

(?) Đoạn chương trình này có – Không có Begin end.

Trang 6

gì khác so với đoạn chương

trình a)?

(?) Câu lệnh của lệnh lặp

While do lúc này là gì?

– n  n + 1;

– Cho HS thảo luận nhóm

(4 nhóm – 2’) hoàn thành bài

tập vào bảng

– HS th o lu n và báo cáo ảo luận nhóm và trả ận nhóm và trả LẦN

LẶP

nn+

Kiểm tra điều kiện n:=0; S:=0; S=0  10

– Cho nhóm khác nhận xét

– GV nhận xét

– Nhóm nhận xét

hiện vòng lặp vô tận

(?) Có nhận xét gì qua 2 đoạn

chương trình?

– GV chốt ý

– Khi thực hiện vòng lặp,

điều kiện cần phải được thay

đổi để giá trị của nó chuyển

từ đúng sang sai, để chương

trình không rơi vào vòng lặp

vô tận

- Câu lệnh ghép phải để

trong cặp Begin end.

– HS ghi nhận

– Các câu lệnh ghép phải được để trong cặp từ khóa

Begin end.

HĐ4: Bài tập 5 (7’)

– Cho HS thảo luận nhóm (4

nhóm – 3p) và hoàn thành bài

tập 5

Bài tập 5 (SGK/71)

(?) Câu a) sai ở vị trí nào?

(?) Điều kiện thường là gì?

– Điều kiện thường là phép so sánh, không thể là

Trang 7

phép gán.

– GV gọi HS nhận xét và chốt ý – HS ghi nhận – Điều kiện thường là

phép so sánh như =,<,>… (?) Câu b) sai ở vị trí nào?

(?) Cú pháp điều kiện đã đúng

hay chưa?

(?) Cú pháp câu lệnh có đúng

hay chưa?

– Câu lệnh không thể là phép so sánh

– GV gọi HS nhận xét và chốt ý – HS ghi nhận – Câu lệnh không thể là

một phép so sánh mà phải

là các câu lệnh đơn hoặc ghép

(?) Câu c) sai ở vị trí nào?

(?) Với những câu lệnh ghép ta

phải thể hiện nó như thế nào?

– Thiếu cặp từ khóa

Begin end cho câu lệnh

ghép

– Với những câu lệnh ghép ta phải đặt trong cặp

từ khóa Begin end.

HĐ5: Bài tập vận dụng (7’)

– Để bài : Viết chương trình

nhập một số từ bàn phím và tính

tổng các số đã nhập cho đến khi

tổng lớn hơn 1000 thì ngừng lại

Var S , n : integer;

Begin S:=0;

While S1000 do Begin

Write(‘Nhap n: ’); Readln(n);

S:=S+n;

End;

Writeln(‘Tong S tim duoc la: ’,s);

Readln End

(?) Điều kiện ở đây là gì?

(?) Câu lệnh ở đây là gì?

– S  1000 – Readln(n); S := S + n;

– Cho HS thảo luận nhóm (4

nhóm – 2p) và viết chương trình

- HS thực hiện yêu cầu

– GV gọi HS báo cáo lên bảng – Nhóm báo cáo

– GV nhận xét

Trang 8

HĐ6: Củng cố (2’)

(?) Cú pháp câu lệnh While do? – HS nhắc lại

(?) Câu lệnh While do thực hiện

như thế nào?

– HS trả lời

(?) Khi có câu lệnh ghép thì phải

làm thế nào?

– Để trong cặp Begin end.

HĐ7: Dặn dò (1’)

Xem lại cú pháp và các bước thực hiện câu lệnh While do ; đọc trước bài mới.

Duyệt của GVHD Trường THCS Phường 4, ngày 05/03/2010

SV soạn

TRẦN NGỌC KHOA

Ngày đăng: 02/07/2014, 04:01

HÌNH ẢNH LIÊN QUAN

Bảng và nhận xét. - BAI 8. LAP VOI SO LAN CHUA BIET TRUOC- TIET BAI TAP
Bảng v à nhận xét (Trang 4)
Bảng và nhận xét. - BAI 8. LAP VOI SO LAN CHUA BIET TRUOC- TIET BAI TAP
Bảng v à nhận xét (Trang 4)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w