1. Trang chủ
  2. » Mẫu Slide

Tài liệu học khối 8 lần 1

6 12 0

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

THÔNG TIN TÀI LIỆU

 Việc lặp lại một nhóm hoạt động với số lần chưa xác định trước phụ thuộc vào một điều kiện cụ thể được thỏa mãn và chỉ dừng lại khi điều kiện không thỏa mãn..  Để chỉ dẫn máy tính thự[r]

(1)

Tuần 22: Từ ngày 30/03 đến ngày 05/04 - Tiết 2 Tuần 23: Từ ngày 06/04 đến ngày 12/04 - Tiết 1

Bài 8: Lặp với số lần chưa biết trước

Trong Bài 7: Câu lệnh lặp làm quen với hoạt động lặp cách thị cho máy tính thực hoạt động lặp với số lần xác định trước Trong thực tế có nhiều hoạt động thực lặp lặp lại với số lần lần chưa biết trước Vậy để hiểu rõ vấn đề này, mời em theo dõi Bài 8: Lặp với số lần chưa biết trước để tìm hiểu nội dung chi tiết.

Nội dung:

1 Tóm tắt lý thuyết

1.1 Các hoạt động lặp với số lần chưa biết trước 1.2 Ví dụ lệnh lặp với số lần chưa biết trước

1.3 Lặp vơ hạn - Lỗi lập trình cần tránh - Phần giảm tải - Khuyến kích HS tự tìm hiểu 1 Tóm tắt lý thuyết

1.1 Các hoạt động lặp với số lần chưa biết trước

Ví dụ 1: Một ngày chủ nhật Long gọi điện cho Trang Khơng có nhấc máy Long quyết định gọi lại thêm lần Như Long biết trước lặp lại gọi điện thêm lần Một ngày khác, Long định 10 phút gọi điện lần cho Trang có người bắt máy

Điều kiện: Có người nhấc máy kết thúc hoạt động lặp

Ví dụ 2: Nếu cộng n số tự nhiên (n = 1, 2, 3, ), cần cộng số tự nhiên để ta nhận tổng Tn nhỏ lớn 1000?

Điều kiện: Khi tổng Tn nhỏ lớn 1000 kết thúc hoạt động lặp Mơ tả thuật tốn liệt kê:

Bước S0, n0

Bước Nếu S ≤ 1000, nn + 1; ngược lại chuyển tới Bước 4Bước S  S + n quay lại Bước 2

Bước In kết quả: S n số tự nhiên nhỏ cho S > 1000 Kết thúc thuật tốn

(2)

Hình Mơ tả thuật toán sơ đồ khối KẾT LUẬN:

 Việc lặp lại nhóm hoạt động với số lần chưa xác định trước phụ thuộc vào điều kiện cụ thể thỏa mãn dừng lại điều kiện không thỏa mãn

 Để dẫn máy tính thực hoạt động lặp trên, ta sử dụng câu lệnh có dạng: Lặp với số lần chưa biết trước

1.2 Ví dụ lệnh lặp với số lần chưa biết trước a Cú pháp:

While < Điều kiện > do Begin

< Câu lệnh >; End;

Trong đó:

While, do: từ khóa

Điều kiện: thường phép so sánh

Câu lệnh: câu lệnh đơn giản hay câu lệnh ghép b Sơ đồ hoạt động

c Ý nghĩa sơ đồ:

Bước Kiểm tra điều kiện

Bước

* Nếu điều kiện thực câu lệnh quay lại bước 1 * Nếu điều kiện sai kết thúc vịng lặp.

Ví dụ 3:

While a<=b a:=a+1;  While, từ khóa

 Điều kiện a<=b (chứa phép so sánh)  Câu lệnh a:=a+1 (câu lệnh đơn)

(3)

Begin

write('a>b'); a:=a-1; End;

 While, từ khóa

 Điều kiện a>b (chứa phép so sánh)

 Câu lệnh Write('a>b') a:=a-1 (câu lệnh ghép)

Ví dụ 5: Viết câu lệnh in số tự nhiên liên tiếp bắt đầu số 1. Gợi ý giải:

Sử dụng lệnh lặp với số lần lặp chưa biết trước while…do Đoạn chương trình mẫu:

n:=1

while n<=5 do begin

writeln(n); n:=n+1; end;

1.3 Lặp vô hạn - Lỗi lập trình cần tránh - Phần giảm tải - Khuyến kích HS tự tìm hiểu

Khi viết chương trình sử dụng cấu trúc lặp cần ý tránh tạo nên vịng lặp khơng kết thúc

Chẳng hạn, chương trình lặp lại vơ tận: var a:integer;

begin a:=5;

while a<6 do writeln('A'); end.

 Trong chương trình trên, giá trị biến a luôn 5, điều kiện a<6 luôn nên lệnh writeln('A'); thực

 Do vậy, thực vòng lặp, điều kiện câu lệnh phải thay đổi để sớm hay muộn giá trị điều kiện chuyển từ sang sai Chỉ chương trình khơng "rơi" vào "vịng lặp vơ tận"

2 Luyện tập Bài Tin học 8

Sau học xong Bài 8: Lặp với số lần chưa biết trước, em cần ghi nhớ:

 Ngoài cấu trúc lặp với số lần lặp biết trước, ngơn ngữ lập trình cịn có câu lệnh lặp với số lần chưa biết trước

 While câu lệnh lặp với số lần chưa biết trước Pascal 2.1 Trắc nghiệm

(4)

o B Kiểm tra giá trị < điều kiện > o C Thực câu lệnh sau từ khóa Then o D Kiểm tra < câu lệnh >

Câu 2: < câu lệnh > sau từ khóa Do câu lệnh While thực ít lần?

o A lần

o B lần

o C lần

o D Vô số lần

Câu 3: Cho biết câu lệnh sau Do thực lần đoạn chương trình sau:

i := 5;

While i>=1 i := i – 1;

o A lần

o B lần

o C lần

o D lần

2.2 Bài tập SGK

Bài tập trang 71 SGK Tin học 8

Một vài ví dụ hoạt động lặp với số lần chưa biết trước: HS tự tìm ví dụ Bài tập trang 71 SGK Tin học 8

Gợi ý trả lời 2

Sự khác biệt câu lệnh lặp với số lần lặp cho trước câu lệnh lặp với số lần lặp chưa biết trước điểm sau đây:

Câu lệnh với số lần lặp cho trước Câu lệnh lặp với số lần lặp chưa biết trước

Chỉ thị cho máy tính thực lệnh nhóm lệnh với số lần xác định từ trước

Chỉ thị cho máy tính thực lệnh nhóm lệnh với số lần lặp chưa xác định trước

Điều kiện giá trị biến đếm có giá trị nguyên đạt giá trị lớn hay chưa

Điều kiện kiểm tra giá trị số thực, điều kiện tổng qt khác, ví dụ số có chia hết cho hay không, Câu lệnh thực lần, sau

kiểm tra điều kiện

Điều kiện kiểm tra trước Nếu điều kiện thỏa mãn, câu lệnh thực Do có trường hợp câu lệnh hồn tồn khơng thực

(5)

Hãy tìm hiểu thuật tốn sau cho biết thực thuật tốn, máy tính vòng lặp? Khi kết thúc, giá trị S bao nhiêu? Viết chương trình Pascal thể thuật tốn đó:

a) Thuật tốn

Bước S  10, x  0.5

Bước Nếu S  5.2, chuyển tới bước Bước S  S - x quay lại bước Bước Thông báo S kết thúc thuật toán b) Thuật toán

Bước S  10, n ->

Bước Nếu S ≥ 10, chuyển tới bước

Bước n  n + 3, S  S - n quay lại bước Bước Thông báo S kết thúc thuật toán Hướng dẫn giải chi tiết 3

a) Thuật tốn 1:

10 vịng lặp thực Khi kết thúc thuật toán S = 5.0 Đoạn chương trình Pascal tương ứng:

S:=10; x:=0.5;

while S>5.2 S:=S-x; writeln(S);

b) Thuật toán 2:

Khơng vịng lặp thực từ đầu điều kiện không thỏa mãn nên bước bị bỏ qua S = 10 kết thúc thuật tốn Đoạn chương trình Pascal tương ứng:

S:=10; n:=0; while S<10 do

begin n:=n+3; S:=S-n end; writeln(S);

Nhận xét: Trong thuật tốn chương trình trên, điều kiện kiểm tra trước bước lặp thực Do điều kiện không thỏa mãn từ đầu, bước lặp bị bỏ qua Điều đặc biệt câu lệnh lặp while

Bài tập trang 71 SGK Tin học 8

Hãy tìm hiểu cụm câu lệnh sau cho biết với câu lệnh chương trình thực vòng lặp? Hãy rút nhận xét em

a)

S:=0; n:=0; while S<=10 do

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

(6)

S:=0; n:=0; while S<=10 do n:=n+1; S:=S+n;

Hướng dẫn giải chi tiết 4

a) Chương trình thực vòng lặp

b) Vòng lặp chương trình thực vơ tận 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 thỏa mãn Phần giảm tải -Khuyến kích HS tự tìm hiểu

Nhận xét: Trong câu lệnh thực hiện, điều kiện cần phải thay đổi để sớm hay muộn chuyển sang trạng thái không thỏa mãn Khi vịng lặp kết thúc sau hữu hạn bước Để làm điều này, câu lệnh câu lệnh lặp while thường câu lệnh ghép

Bài tập trang 71 SGK Tin học 8

Hãy lỗi câu lệnh sau đây: a) X:=10; while X:=10 X:=X+5; b) X:=10; while X=10 X=X+5;

c) S:=0; n:=0; while S<=10 n:=n+1; S:=S+n; a) Thừa dấu hai chấm điều kiện;

b) Thiếu dấu hai chấm câu lệnh gán;

c) Thiếu từ khóa begin end trước sau lệnh n:=n+1; S:=S+n, vịng lặp trở thành vơ tận

1 Tóm tắt lý thuyết 1.1 Các hoạt động lặp với số lần chưa biết trước 1.2 Ví dụ lệnh lặp với số lần chưa biết trước 1.3 Lặp vô hạn - Lỗi lập trình cần tránh Việc mà câu lệnh While cần thực gì? < câu lệnh > sau từ khóa Do câu lệnh While thực Cho biết câu lệnh sau Do thực lần đoạn chương trình

Ngày đăng: 08/02/2021, 03:04

Xem thêm:

w