Lặp với số lần chưa biết trước và cõu lệnh while-do

Một phần của tài liệu giáo án tin 11 đầy đủ (Trang 44 - 46)

- Sự hoạt động của mỏy: cõu lệnh viết sau

3. Lặp với số lần chưa biết trước và cõu lệnh while-do

GV: Nờu nội dung bài toỏn 2. Yờu cầu học sinh xõy dựng thuật toỏn để giải bài toỏn 2.

GV: Sự khỏc nhau của bài toỏn này với bài toỏn 1 đó viết ở tiết trước?

HS: Cho giới hạn n.

GV: Lặp bao nhiờu lần?

HS: phụ thuộc vào n (lặp n lần với điều kiện n<=10)Chưa biết số lần lặp.

GV: Tiểu kết vấn đề: qua vớ dụ trờn ta thấy cú 1 dạng bài toỏn cú sự lặp lại của 1 số lệnh nhưng khụng biết trước được số lần lặp. Cần cú 1 cấu trỳc điều khiển lặp lại 1 cụng việc nhất định khi thoả món 1 điều kiện nào đú.

GV: Yờu cầu học sinh nghiờn cứu sỏch

3. Lặp với số lần chưa biết trước vàcõu lệnh while-do cõu lệnh while-do

Thuật toỏn:

B1: S0; n0

B2: Nếu n > 10 thỡ chuyển đến B5 B3: n → n +1

B4: S= S + n rồi quay lai b2 B5: Đưa S ra màn hỡnh và kết thỳc

While <điều kiện> do <cõu lệnh>;

Tronh đú:

-Điều kiện là biểu thức quan hệ hoặc biểu thức logic;

-Cõu lệnh là 1 cõu đơn hoặc ghộp * Sự thực hiện của mỏy:

B1: Tớnh giỏ trị của điều kiện

giỏo khoa và cho biết cấu trỳc chung của lệnh lặp While?

- Giải thớch:

+ Điều kiện: là biểu thức quan hệ hoặc biểu thức logic, là điều kiện để lặp lại - Hỏi: trong bài toỏn trờn điều kiện để lặp lại là gỡ?

+ lệnh cần lặp: là cỏc lệnh cần phải lặp lại

- Hỏi: trong bài toỏn trờn lệnh cần lặp là gỡ?

-Hỏi: 1 sự khỏc nhau trong lệnh cần lặp của For và While là gỡ?

- Dựa vào cấu trỳc chung, hóy cho biết mỏy sẽ thực hiện tớnh điều kiện trước hay lệnh cần lặp trước?

GV: Đưa ra vớ dụ để mụ tả thờm lệnh while.

Thực hiện lệnh cần lặp, quay lại B1 * Chương trỡnh:

Program lapwhile; uses crt;

var i,n,s: integer; Begin clrscr; write('Nhap n=');readln(n); s:=0;i:=0; while i<n do begin i:=i+1; s:=s+i; end; writeln('Tong s=',s); readln; End.

VD: Tỡm ước chung lớn nhất của hai số nguyờn dương M,N. Program USCLN; USES crt; Var M,N : integer; BEGIN clrscr; write('Nhap M,N: '); readln(M,N); while M<>N do Begin IF M>N then M:=M-N else N:=N-M; End; Writeln('UCLN(M,N) la :',M); readln; END. V. Củng cố bài

- Qua tiết học này, cỏc em cần nắm được cấu trỳc chung của cấu trỳc lặp, sự thực hiện của mỏy khi gặp cấu trỳc lặp chưa biết trước số lần lặp. Áp dụng cấu trỳc vào giải cỏc bài tập.

VI. Bài tập về nhà

- ễn lại bài học, làm bài tập trang 50.

- Chuẩn bị nội dung tiết sau thực hành: Bài tập và thực hành 2.

Ngày soạn:13/11/2009 Tuần: 14,15

Ngày giảng:16/11/2009 Tiết: 17,18

Một phần của tài liệu giáo án tin 11 đầy đủ (Trang 44 - 46)

Tải bản đầy đủ (DOC)

(124 trang)
w