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

tiet 11

17 153 0
Tài liệu đã được kiểm tra trùng lặp

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Bài 10 (Phần 1 và phần 2 (lý thuyết))
Chuyên ngành Tin học
Thể loại Giáo án điện tử
Định dạng
Số trang 17
Dung lượng 0,91 MB

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

Nội dung

Bài toán đặt vấn đề - Dữ liệu ra Output : Tổng S Lập chương trình tính tổng sau: - Dữ liệu vào Input : Nhập a Hãy xác định INPUT và OUTPUT của bài toán trên!.  Giá trị đầu, giá trị cu

Trang 1

ViÕt c©u lÖnh If Then (trong

Pascal) thÓ hiÖn cÊu tróc rÏ nh¸nh sau:

NÕu ngµy b»ng 20 vµ th¸ng b»ng 11 th× ®­a ra mµn h×nh 5

dßng th«ng b¸o “Chµo mõng ngµy nhµ gi¸o viÖt nam”

Trang 2

IF (ngay=20) and (thang=11) THEN

Begin

End;

Trang 3

Bµi 10

Gi¸o ¸n ®iÖn tö tin häc líp 11

(PhÇn 1 vµ phÇn 2 (lý thuyÕt))

TiÕt 11

Trang 4

Bài toán 1:

Bài toán 2:

100

1

2

1 1

1

1

+

+

+ +

+ +

+

=

a a

a a

S

1

2

1 1

1

1

+ +

+

+ +

+ +

+

=

N a

a a

a S

Các bài toán đặt vấn đề : Tính tổng S, với a là số nguyên và a>2

cho đến khi 1 < 0 0001

+ N a

Trang 5

XuÊt ph¸t

a

1

1

+

+

a

LÇn 1

2

1

+

+

a

LÇn 2

+…

LÇn N

N

1

Sau mçi lÇn thùc hiÖn gi¸ trÞ tæng S t¨ng thªm  ( víi i =1; 2; 3 ; ;N)

a + i

Cïng t×m thuËt to¸n

Mçi lÇn thùc hiÖn gi¸ trÞ tæng S t¨ng thªm bao nhiªu?

Trang 6

Bài toán 1: Bài toán 2:

100

1

2

1 1

1

1

+

+

+ +

+ +

+

=

a a

a a

+

+

+ +

+ +

+

=

N a

a a

a S

Cho đến khi a +1N < 0.0001

Số lần lặp biết trước.

Việc tăng giá trị cho tổng S được lặp đi lặp lại cho đến khi

0.0001 N

a

1

<

+

Việc tăng giá trị cho

tổng S được lặp đi lặp

lại 100 lần

tìm sự khác biệt

Số lần lặp chưa biết trước.

các em hãy cho biết

sự khác biệt giữa hai

bài toán?

Trang 7

CÊu tróc lÆp

Trang 8

1 Bài toán đặt vấn đề

- Dữ liệu ra (Output) : Tổng S

Lập chương trình tính tổng sau:

- Dữ liệu vào (Input) : Nhập a

Hãy xác định INPUT và OUTPUT của bài

toán trên!

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

100

1

2

1 1

1

1

+

+

+ +

+ +

+

=

a a

a a

S

Trang 9

Phân tích bài toán (ý tưởng)

Nhận xét:

Ban đầu: S = 1/a

Cộng lần 1: S = S + 1/(a+1)

Cộng lần 2: S = S + 1/(a+2)

Cộng lần 3: S = S + 1/(a+3)

Cộng lần 100: S = S + 1/(a+100)

a

1

=

S

Bắt đầu từ lần cộng 1 việc tính

S được lặp đi lặp lại 100 lần theo quy luật

S sau = S trước + 1/(a+i) với i chạy từ 1 100

1

1

+

+

1

+

+

1

+

+

a

100

1

+

+

+

a

Từ ý tưởng trên em hãy viết thuật toán cho bài toán

Trang 10

B1: Nhập a;

B2: S1/a; i0;

B4: Nếu i >100 thì đưa ra giá

trị S rồi Kết thúc;

B5 : S S + 1/(a+i) rồi quay

lại bước 3;

B3: i  i +1;

Xây dựng thuật toán

Trang 11

Phân tích bài toán (ý tưởng 2)

Nhận xét:

Ban đầu: S = 1/a

Cộng lần 1: S = S + 1/(a+100)

Cộng lần 2: S = S + 1/(a+99)

Cộng lần 3: S = S + 1/(a+98)

Cộng lần 100: S = S + 1/(a+1)

a

1

=

S

Bắt đầu từ lần cộng 1 việc tính

S được lặp đi lặp lại 100 lần theo quy luật

S sau = S trước + 1/(a+i) với i chạy từ 100 1

100

1

+

+

1

+

+

1

+

+

a

1

1

+

+ +

a

Trang 12

B1: Nhập a;

B2: S1/a; i0;

B4: Nếu i >100 thì đưa ra giá

trị S rồi Kết thúc;

B5 : S S + 1/(a+i) rồi quay

lại bước 3;

B3: i  i +1;

Xây dựng thuật toán Thuật toán Tong_1a

B1: Nhập a;

B2: S1/a; i101;

B4: Nếu i <1 thì đưa ra giá trị

S rồi Kết thúc;

B5 : S S + 1/(a+i) rồi quay lại bước 3;

B3: i  i -1;

Thuật toán Tong_1b

Thuật toán Tong_1a , giá trị i bắt đầu tham gia vòng lặp là 1 sau mỗi lần lặp i tăng lên 1 cho đến khi i > 100 (i = 101) thì

kết thúc lặp (thực hiện 100 lần).

Nhận xét:

Thuật toán Tong_1b , giá trị i bắt đầu tham gia vòng lặp là 100 sau mỗi lần lặp i giảm đi 1 cho đến khi i < 1 (i = 0) thì kết thúc

Ta nói cách lặp trong thuật toán Tong_1a là dạng tiến và trong thuật toán Tong_1b dạng lùi.

Trang 13

FOR <biến đếm> := <giá trị đầu> TO <giá trị cuối> DO < câu lệnh>;

VD1: S:=1/a;

FOR i:=1 TO 100 DO S:=S+1/(a+i);

b Dạng 2 (dạng lùi)

FOR <biến đếm> := <giá trị cuối> DOWNTO <giá trị đầu> DO <câu lệnh >;

VD1: S:=1/a;

FOR i:=100 DOWNTO 1 DO S:=S+1/(a+i);

a Dạng 1 (dạng tiến)

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

VD2: IF (ngay=20) and (thang=11) THEN

FOR i:=1 TO 5 DO writeln(’ngay nha giao Viet Nam’);

VD2: IF (ngay=20) and (thang=11) THEN

FOR i:=5 DOWN TO 5 DO writeln(’ngay nha giao Viet Nam’);

Trang 14

Giá trị đầu, giá trị cuối là các biểu thức cùng kiểu với biến đếm, giá trị đầu phải nhỏ hơn giá trị cuối.

VD: For i:= 100 to 200 do write(i);

Giá trị biến đếm được điều chỉnh tự động, vì vậy câu

lệnh sau DO không được thay đổi giá trị biến đếm.

Trong đó

 Biến đếm là biến kiểu số nguyên hoặc kí tự.

VD2: For i:=‘a’ to ‘z’ do write(i);

Trang 15

S := 1 ; i := 2;

S := S +1/ i ;

i := i +1;

2.08 1.83

1.5

1

4 3

2 Lượt

i

5

Nhập N

S := 1 ; i := 2;

2>5 ?

S

S := 1 +1/2 ;

i := 2 +1;

3>5 ?

S := 1.5+1/3 ;

i := 3 +1;

4>5 ?

S := 1.83+1/4 ;

i := 4 +1;

5>5 ?

S := 2.08+1/5;

i := 5 +1;

6

S 6>5 ? Tổng S=2.28 In Tổng S

Với N = 5

2.28

Đ

Mô phỏng thuật toán

Trang 16

Lặp dạng tiến Lặp dạng lùi

Biến:=<GT đầu >

Biến <= GT cuối

Cõu lệnh Biến tự động tăng 1 ĐVị

Biến:=<GT cuối >

Biến >= GT đầu

Cõu lệnh

Biến tự động giảm 1 ĐVị

Biến:=<GT đầu >

Biến <= GT cuối

Cõu lệnh

Biến tự động tăng 1 ĐVị

True

False

Biến:=<GT cuối >

Biến >= GT đầui

Cõu lệnh

Biến tự động giảm 1 ĐVị

True

Lưu đồ hoạt động

Trang 17

Hãy nhớ!

FOR TO DO

FOR Downto DO

trước.

Ngày đăng: 09/07/2013, 01:25

Xem thêm

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w