Thỏi độ: Nghiờm tỳc trong học tập, tớch cực làm cỏc dạng bài tập ứng dụng về cấu trỳc lặp 4 Năng lực:

Một phần của tài liệu Giao an tin 8 2017 (Trang 124 - 126)

V. DẶN Dề: Về nhà xem trước vớ dụ 5 và mục 3 của bài 8 để tiết sau học.

3. Thỏi độ: Nghiờm tỳc trong học tập, tớch cực làm cỏc dạng bài tập ứng dụng về cấu trỳc lặp 4 Năng lực:

4. Năng lực:

- Mụ hỡnh húa cỏc tỡnh huống thực tiễn quỏ trỡnh xĩy ra với số lần lặp trong cụng việc - Diễn tả Thuật toỏn hoạt động lặp trong cụng việc

- Diễn tả cấu trỳc lặp trong ngụn ngữ lập trỡnh

B. PHƯƠNG PHÁP:

- Quan sỏt trực quan, hỏi đỏp, nhúm, thuyết trỡnh tỡm hướng giải quyết vấn đề.

C. CHUẨN BỊ:

- Giỏo viờn: Giỏo ỏn, một mỏy tớnh để giới thiệu - Học sinh: Chuẩn bị theo sự dặn dũ cuối tiết 50

D. TIẾN TRèNH LấN LỚP: I. Ổn định: I. Ổn định:

II. Kiểm tra bài cũ:

1. Nờu sự khỏc biết giữa lệnh lặp với số lần biết trước với lệnh lặp với số lần chưa biết trước? 2. Nờu dạng lệnh và hoạt động của lệnh While…Do

III. BÀI MỚI:

Hoạt động 1: VD về lệnh lặp lại với số lần chưa biết trước

Hoạt động của giỏo viờn và học sinh Nội dung

* GV: Chiếu CT minh họa sau:

* HS:Quan sỏt

*GV: Chỳng ta biết rằng, nếu N càng lớn thỡ 1/N càng nhỏ. Vậy người ta hỏi với giỏ trị nào của N thỡ 1/N <0.005 hoặc 1/N<0.003.

*GV: Yờu cầu ở đõy đưa ra là gỡ?

Vớ dụ 3:

Viết chương trỡnh tớnh số n nhỏ nhất để 1/n nhỏ hơn một sai số cho trước (với giỏ trị nào của n thỡ 1/n <0.005 hoặc 1/n <0.003) Program tinhn; Uses crt; Var x : real; N : integer; Const saiso = 0.003; Begin x := 1; N := 1; While x >= saiso do Begin N := N + 1; x := 1/N; End;

Writeln ('so n nho nhat de 1/n <' ,saiso,'la', N); Readln;

End.

* HS: - Tỡm giỏ trị N thỏa mản điều kiện trờn

*GV: Rừ ràng để tỡm giỏ trị N ta phải tăng N này lờn từng bước, và ta sẽ tớnh giỏ trị này theo từng mức tương ứng đú. Đến khi điều kiện thỏa mản thỡ thụi.

*GV: Trong chương trỡnh trờn lệnh while do dừng thực hiện khi điều kiện nào thỏa mĩn?

* HS: Khi x < saiso

*GV: Chỉ rừ cỏc TP trong cõu lệnh while …do trong VD trờn? Mụ tả hoạt động của cõu lệnh đú

* HS: Điều kiện: x >= saiso Cõu lệnh: lệnh ghộp

Begin

N := N +1; x := 1/N; End;

*GV: Chốt lại hoạt động bằng sơ đồ khối:

Dựa vào thuật toỏn ta cú thể sử dụng cõu lệnh while .. do để viết

* GV: Yờu cầu học sinh nhắc lại cỏch tớnh tổng của 100 số tự nhiờn đầu tiờn.

* HS: T := T + i (i chạy từ 1đến 100) ?Em cú nhận xột gỡ về cỏc số hạng trong tổng T? * HS: cú dạng 1/i (i lần lượt là cỏc số tự nhiờn 1,2,3…cho đến n) * Vớ dụ 4: Viết chương trỡnh tớnh tổng n số tự nhiờn đầu tiờn sao cho tổng nhỏ nhất >1000 Var tong, n :integer;

Begin tong := 0; n :=1; While tong <= 1000 do

Begin tong := tong + n; n := n + 1; End; Writeln(‘So nho nhat de tong >1000 là :’,n); Write(‘Tong dau tien >100 la :’,tong); Readln;end. * Vớ dụ 5 : Viết chương trỡnh tớnh tổng T = 1+1/2 + 1/3 +...+1/100 (Sử dụng vũng lặp for..do và while..do) x>=saiso N:= N+1; x := 1/N; Đỳng Sai

*GV: Tương tự như thế, ta cũng cú thể viết được chương trỡnh này bằng cỏch sử dụng vũng lặp for.. do.

* HS: 1 học sinh lờn bảng viết chương trỡnh bằng for..to...do

Var T : real; i : byte; Begin

T := 0;

For i:=1 to 100 do T := T + 1/i;

Writeln (T); readln; End. *GV: Sửa bài:

* Đoạn chương trỡnh trờn cú thể mụ tả bằng cõu lệnh WHILE...DO khụng? hướng dẫn học sinh viết chương trỡnh bằng cõu lệnh while...do

* HS: Hồn thành cỏ nhõn Var T : real; i : byte; Begin

T:=0; i:=1;

While i<=100 do

Begin T := T + 1/i; i := i + 1; end; Writeln (T); readln;

End.

*GV: Sửa bài, chốt lại cõu lệnh while ... Do trong VD trờn

Cỏch 1: Sử dụng vũng lặp for ...do Var T : real; i : byte;

Begin T := 0; For i := 1 to 100 do T := T + 1/i; Writeln (T); Readln; end. Cỏch 2: Sử dụng vũng lặp while..do Var T : real; i : byte;

Begin T := 0; i:=1;

While i <= 100 do

Begin T := T + 1/i; i := i + 1; end; Writeln (T); readln; End.

Hoạt động 2: Tỡm hiểu lặp vụ hạn lần – lỗi lập trỡnh cần trỏnh

Hoạt động của giỏo viờn và học sinh Nội dung

*GV: Chiếu chương trỡnh sau VAR

a: integer; Begin

a:=5;

While a<6 do writeln(‘A’); End;

* HS: Quan sỏt

*GV: Chỉ rừ điều kiện và cõu lệnh trong cõu lệnh while do trờn?

* HS: - ĐK: a < 6 - CL: writeln(‘A’);

*GV: Cõu lệnh writeln(‘A’); được thực hiện khi điều kiện nào thỏa mĩn? Và khi nào cõu lệnh writeln(‘A’); khụng thực hiện?

* HS: khi điều kiện a < 6 đỳng thỡ cõu lệnh writeln(‘A’); được thực hiện, khi a =7 thỡ cõu lệnh writeln(‘A’); khụng thực

Một phần của tài liệu Giao an tin 8 2017 (Trang 124 - 126)