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

Bài 8: Lặp Với Số Lần Chưa Biết Trước (tiết 1)

4 1,2K 9

Đ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 4
Dung lượng 84 KB

Nội dung

Kiến thức: - Biết được nhu cầu có cấu trúc lặp với số lần chưa biết trước trong ngôn ngữ lập trình.. - Biết ngôn ngữ lập trình dùng cấu trúc lặp với số lần chưa biết trước để chỉ dẫn máy

Trang 1

Tuần: 25 Tiết: 49

I MỤC TIÊU:

1 Kiến thức:

- Biết được nhu cầu có cấu trúc lặp với số lần chưa biết trước trong ngôn ngữ lập trình

- Biết ngôn ngữ lập trình dùng cấu trúc lặp với số lần chưa biết trước để chỉ dẫn máy tính thực hiện lặp đi lặp lại công việc đến khi một điều kiện nào đó được thoả mãn

- Hiểu được hoạt động của câu lệnh lặp với số lần chưa biết trước while… do… trong ngôn ngữ Pascal

2 Kỹ năng:

- Rèn khả năng đọc chương trình, phân tích tác dụng các câu lệnh

- Viết được câu lệnh lặp ở những bài toán đơn giản

3 Thái độ:

- Ham thích môn học

- Tích cực học tập

II CHUẨN BỊ:

1 Giáo viên :

- SGK, tài liệu, giáo án

- Đồ dùng dạy học: máy tính

2 Học sinh :

- Đọc trước bài và học bài ở nhà

- SGK, Đồ dùng học tập

III PHƯƠNG PHÁP:

Phương pháp thử, trực quan, thảo luận nhóm, thực hành

IV TIẾN TRÌNH DẠY HỌC:

1 Ổn định lớp

2 Kiểm tra bài cũ

3 Bài mới :

Hoạt động 1: Giới thiệu

Gv: Ở bài trước các em đã được học về câu lệnh lặp với

số lần lặp đã biết trước Nhưng cũng có những hoạt động

lặp mà số lần lặp chưa biết trước Em hãy cho 1 ví dụ về

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

Hs: Học cho đến khi thuộc bài

Gv: Vậy thế nào là lặp với số lần chưa biết trước và trong

Pascal sử dụng câu lệnh nào để giải quyết bài tóan về số

lần lặp chưa biết trước Cô và các em sang bài mới

Bài 8:

LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC

Hoạt động 2: Hs làm quen với hoạt động lặp với số lần chưa biết trước.

Gv: Các em qua phần 1

Gv: Các em mở SGK trang 67 và đọc cho cô ví dụ 1

Gv: Yêu cầu Hs đọc ví dụ 1

Hs: Đọc bài

Gv: Một ngày chủ nhật, Long gọi điện cho Trang

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

Trang 2

- lần 1: không có người nhấc máy.

- Long gọi thêm 2 lần nữa

Gv: Vậy Long gọi điện cho Trang mấy lần?

Hs: 3 lần

Gv: Một ngày khác, Long quyết định cứ 10’ gọi điện cho

Trang 1 lần, cho đến khi nào có người nhấc máy

Gv: Các em có biết Long gọi điện cho Trang bao nhiêu

lần hay không?

Hs: Không biết

Gv: Vậy hoạt động Long gọi điện cho Trang cho đến khi

có người nhấc máy là hoạt động lặp với số lần chưa biết

trước

Gv: Ta xét thêm ví dụ nữa

Gv: Yêu cầu Hs đọc ví dụ 2

Hs: Đọc bài

Gv: Đề bài yêu cầu ta làm gì?

Hs: Tính tổng Tn của n số tự nhiên đầu tiên sao cho tổng

Tn nhỏ nhất > 1000

Gv: - Đầu tiên ta có tổng Tn của 1 số tự nhiên đầu tiên

tức là Tn = 1

- Tiếp đó ta sẽ tính tổng Tn của 2 số tự nhiên đầu tiên

tức là Tn = 1 + 2

- Tiếp tục ta có Tn = 1 + 2 + 3 là tổng của 3 số tự

nhiên đầu tiên

Cứ như thế ta có tổng Tn ngày càng tăng, đến lúc tổng Tn

nhỏ nhất > 1000, thì thuật tóan của ta sẽ kết thúc

Gv: Ta cần cộng bao nhiêu số tự nhiên đầu tiên để có

tổng Tn nhỏ nhất lớn hơn 1000?

Hs: Không biết

Gv: Trong trường hợp này, để quyết định thực hiện phép

cộng với số tiếp theo hay dừng, trong từng bước ta cần

kiểm tra điều gì?

Hs: Tổng đã lớn hơn 1000 hay chưa

Gv: Qua ví dụ 2 này ta không biết cần cộng thêm bao

nhiêu số tự nhiên vào để tổng Tn nhỏ nhất lớn hơn 1000,

đây là 1 hoạt động lặp với số lần chưa biết trước

Gv: Chúng ta hãy cùng tìm hiểu các bước của thuật toán

trong ví dụ này một cách cụ thể hơn

Gv: Tương tự như bài tóan tính tổng S=1+2+3+ +n thì

B1 ta phải làm gì?

Hs: Ta gán S  0 và n  0

Gv: Để quyết định việc cộng thêm hay dừng thì ta phải

kiểm tra điều kiện gì?

Hs: S <= 1000

Gv: Sau khi đã kiểm tra điều kiện và tăng biến n lên thì S

 S + n và quay lại B2

Gv: Khi đã tìm ra tổng S > 1000 và n là số nhỏ nhất ta in

kết quả ra màn hình và kết thúc thuật toán

Gv: Cho Hs ghi thuật toán vào vở

Hs: Ghi bài

a Ví dụ 1: SGK

b Ví dụ 2: SGK

* Thuật toán:

- B1: S  0, n  0

- B2: Nếu S <= 1000, n  n + 1; Ngược lại, chuyển tới B4

- B3: S  S + n và quay lại B2

- B4: In kết quả: S và n là số tự nhiên nhỏ nhất sao cho S > 1000 Kết thúc thuật toán

Trang 3

Gv: Các em quan sát trên bảng, bây giờ cô sẽ chạy tay thử

chương trình với điều kiện là S <= 10

1 Trước khi kiểm tra điều kiện: n = 0, S = 0

2 Khi bắt đầu kiểm tra điều kiện

S<=10 Đúng Đúng Đúng Đúng Đúng Sai

2 Kết thúc: n = 6, S = 15

Gv: Các em vừa tìm hiểu về việc thực hiện phép cộng

được lặp lại với số lần chưa biết trước, hoạt động đó phụ

thuộc vào điều kiện gì, phép cộng dừng khi nào?

Hs: Điều kiện S<= 10 và chỉ dừng khi điều kiện trên sai

(S > 10)

Gv: Đưa sơ đồ hình vẽ 39 và phân tích

Gv: Để viết chương trình chỉ dẫn máy tính thực hiện các

hoạt động lặp như trong các ví dụ trên, ta có thể sử dụng

câu lệnh có dạng lặp với số lần chưa biết trước

Gv: Các ngôn ngữ lập trình đều sử dụng câu lệnh lặp với

số lần chưa biết trước nhưng cú pháp câu lệnh ở các ngôn

ngữ lập trình là khác nhau Sau đây ta sẽ xét cú pháp câu

lệnh và một số ví dụ về câu lệnh lặp với số lần chưa biết

trước trong Turbo Pascal

* Ta có sơ đồ hoạt động sau:

Hoạt động 3: Một số ví dụ về lệnh lặp với số lần chưa biết trước.

Gv: Giới thiệu câu lệnh While… do… Hướng dẫn Hs

viết câu lệnh và giải thích ý nghĩa các thành phần

Hs: Ghi bài

Gv: Trong Pascal từ while, do được gọi là gì?

Hs: Từ khóa

Gv: Nếu câu lệnh là câu lệnh ghép thì nó được đặt trong

cặp từ nào?

Hs: Begin end

Gv: Hướng dẫn Hs biết cách thực hiện của câu lệnh

While do

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

2 Nếu điều kiện sai, câu lệnh sẽ bị bỏ qua và việc thực

hiện lệnh lặp sẽ kết thúc Nếu điều kiện đúng, thực hiện

câu lệnh và quay lại bước 1.

Gv: Để hiểu rõ việc thực hiện của câu lệnh While do

như thế nào, một em hãy đọc đề ví dụ 3

Gv: Hãy nhìn vào chương trình trong SGK Các em hãy

thảo luận nhóm để phân tích ý nghĩa câu lệnh trong

chương trình

Hs: Thảo luận và phân tích

Gv: Điều kiện là: x >= sai_so

Câu lệnh là: n:=n+1; x:=1/n;

Gv: Câu lệnh ở đây là câu lệnh ghép nên nó được đặt

2 Ví dụ về lệnh lặp với số lần chưa biết trước:

* Cú pháp:

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

lệnh>;

Trong đó:

- Điều kiện thường là phép so sánh.

- Câu lệnh có thể là câu lệnh đơn

giản hay câu lệnh ghép

* Ví dụ 3: SGK

Điều kiện ? Câu lệnh

Sai

Đúng

Trang 4

trong cặp Begin end

Gv: Bây giờ cô và các em hãy chạy thử chương trình để

hiểu rõ hơn về câu lệnh while do với điều kiện sai_so

= 0.3

1 Trước khi bắt đầu vòng lặp while do

n = 1, x = 1

2 Khi bắt đầu vòng lặp while do

3 Kết thúc: n = 4, x= 1/4

Gv: Cho Hs ghi chương trình vào vở

Hs: Ghi bài

Gv: Yêu cầu Hs viết chương trình và chạy thử Sau đó

sửa giá trị sai_so = 0.3, 0.002, 0.001

Hs: Thực hành

Program vd3;

Var x: real;

n: integer;

Const sai_so = 0.003;

Begin x:=1; n:=1;

while x >= sai_so do begin n:=n+1; x:=1/n end;

writeln('so n nho nhat de 1/n <', sai_so:6:4,' la ',n);

readln;

End

4.Củng cố:

- Nêu những dạng câu lệnh lặp mà em đã được học?

- Trả lời câu hỏi 1, 2 trang 71 SGK

5 Dặn dò:

- Về nhà học bài, trả lời câu hỏi trong SGK

- Coi tiếp phần còn lại của bài “Lặp với số lần chưa biết trước”

x>=sai_so Đúng Đúng Đúng Sai

x 1/2 1/3 1/4

Ngày đăng: 05/07/2014, 23:00

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w