1. Trang chủ
  2. » Cao đẳng - Đại học

Giáo án Tin học 8 - Tiết 41, Bài 8: Lặp với số lần lặp chưa biết trước (Tiết 1) - Năm học 2009-2010 - Phạm Tuấn Anh

3 7 0

Đ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 3
Dung lượng 207,71 KB

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

Nội dung

Mục tiêu: - Biết nhu cầu cần 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í[r]

Trang 1

Dạy lớp: 8A; 8B; 8E Ngày soạn: 23/01/2010 Tiết PPCT: 41 Ngày dạy: 25/01/2010.

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

I Mục tiờu:

- Biết nhu cầu cần 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;

- Nhận biết được đõu là hoạt động lặp với số lần chưa biờt trước.

- Nghiờm tỳc trong quỏ trỡnh nghiờn cứu và thực hành

II Chuẩn bị:

- GV: Soạn bài, đọc tài liệu tham khảo, dụng cụ học dạy học

- HS: Xem bài trước ở nhà, dụng cụ học tập

III Tiến trỡnh bài giảng:

Hoạt động 1: Kiểm tra bài củ

Viết thuật toỏn tớnh tổng 100 số

tự nhiờn đầu tiờn

1,2,3,…,99,100

Trả lời

Bước 1 SUM  0; i  0.

Bước 2 i  i + 1.

Bước 3 Nếu i ≤ 100, thỡ

SUM  SUM + i

và quay lại bước 2

Bước 4 Thụng bỏo kết quả

và kết thỳc thuật toỏn

+ G : y/c hs đọc vớ dụ 1sgk/67

+ Hs : 2-3 hs đọc vớ dụ sgk

+ G : Phõn tớch vớ dụ

+ Hs : Chỳ ý lắng nghe

+ G : y/c hs đọc vớ dụ 1sgk/67

+ Hs : 2-3 hs đọc vớ dụ sgk

+ G : Phõn tớch vớ dụ

+ Hs : chỳ ý lắng nghe

+ G : Hướng dẫn hs xõy dựng

thuật toỏn

+ Hs : Nghe giỏo viờn hướng

dẫn, sau đú tự xõy dựng thuật

toỏn

+ G : Chạy tay cho học sinh

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

a/ Vớ dụ 1(sgk).

b/ Vớ dụ 2 : Nếu cộng lần lượt n số tự nhiờn đầu tiờn

(n = 1, 2, 3, ), Cần cộng bao nhiờu số tự nhiờn đầu tiờn để ta nhận được tổng Tn nhỏ nhất lớn hơn 1000?

Giải :

Trang 2

đến 10 )

+ Hs : Chú ý nghe

Hs ghi vở ví dụ 2

+ G : Giới thiệu sơ đồ khối

Hoạt động 2

+ G : Nêu nhận xét

+ G : Có thể sử dụng lệnh lặp

với số lần lặp chưa biết trước

trong các chương trình lập trình

Sau đây ta xét câu lệnh và ví

dụ trong TP

+ G : Giới thiệu cú pháp lệnh

while … do ….;

+ hs : chú ý nghe và ghi chép

+ G : Xét ví dụ 3

Chúng ta biết rằng, nếu n càng

lớn thì 1

n càng nhỏ, nhưng luôn

luôn lớn hơn 0 Với giá trị nào

của n thì 1

n < 0.005 hoặc 1

n <

0.003 ?

( Gv đưa phim trong ví dụ 3 )

+ Hs : Đọc ví dụ 3 ( Phim trong)

sau:

+ Bước 1 S  0, n  0

+ Bước 2 Nếu S ≤ 1000, n  n + 1; ngược lại

chuyển tới bước 4

+ Bước 3 S  S + n và quay lại bước 2.

+ Bước 4 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.

* Ta có sơ đồ khối :

* Nhận xét : Để 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

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

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

có dạng:

while <điều kiện> do <câu lệnh>;

trong đó:

- điều kiện thường là một 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

Câu lệnh lặp này được thực hiện như sau:

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

Bước 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 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.

Ví dụ 3

Với giá trị nào của n ( n>o ) thì < 0.005 hoặc < 1

n

1

n

0.003? Chương trình dưới đây tính số n nhỏ nhất để

nhỏ hơn một sai số cho trước :

1

n

Trang 3

+ G : giới thiệu chương trình

mẫu sgk ( Giáo viên in chương

trình mẫu trên phim trong )

+ Hs : quan sát

+ G : Chạy tay cho học sinh

xem

+ Hs : chú ý nghe và tự chạy tay

lại

+ G : Yêu cầu học sinh mở máy

tính và mở chương trình ví dụ 3

( giáo viên chuẩn bị chương

trình mẫu và đưa lên các máy )

+ Hs : thực hiện

+ G : Cho học sinh chạy chương

trình trên máy

+ Hs : thực hiện

+ G : Yêu cầu hs thay điều kiện

sai_so = 0.003 thành 0.002 ;

0.001 ; 0.005 ;

+ Hs : thực hiện

uses crt;

var x: real;

n: integer;

const sai_so=0.003;

begin

clrscr;

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:5:4, 'la ',n);

readln

end.

2 Củng cố:

- Lấy ví dụ về các hoạt động phải lặp lại với số lần chưa biết trước

3 Hướng dẫn về nhà:

- Học bài

- Nghiên cứu trước nội dung các phần còn lại

Ngày đăng: 29/03/2021, 14:24

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

w