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

CAU TRUC LAP

36 8 0

Đ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

Nội dung

Quan sát sách giáo khoa trang 44, chương trình cài đặt các. thuật toán Tong_1A?.[r]

(1)

TRẦN HỮU TRANG

TRƯỜNG TRUNG HỌC PHỔ THÔNG

TIN HỌC 11

(2)

BÀI 10

CẤU TRÚC LẶP

CẤU TRÚC LẶP

(3)

CÁC BÀI TOÁN ĐẶT VẤN ĐỀ

CÁC BÀI TOÁN ĐẶT VẤN ĐỀ

Tính tổng S với a số nguyên a>2

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

cho đến khi

1

0

.

0001

N

(4)

CÙNG TÌM THUẬT TỐN

CÙNG TÌM THUẬT TỐN

Xuất phát

a

S

1

1

1

a

Lần 1

2

1

a

Lần 2

+…

Lần N

N

a

1

Mỗi lần thực hiện, giá trị tổng

tăng bao nhiêu?

i

a

1

(5)

TÌM SỰ KHÁC BIỆT

TÌM SỰ KHÁC BIỆT

Bài tốn 1:

Bài tố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

Cho đến

1

0

.

0001

N

a

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

Việc tăng giá trị cho tổng S

Việc tăng giá trị cho tổng S

được lặp lặp lại

được lặp lặp lại

100

100

lần.

lần.

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

Việc tăng giá trị cho tổng S

Việc tăng giá trị cho tổng S

được lặp lặp lại

(6)

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

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

a Bài toán nêu vấn đề:

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

S

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

N

1

4

1

3

1

2

1

1

S

Hãy xác định INPUT OUTPUT

tốn trên?

(7)

PHÂN TÍCH BÀI TỐN VỚI N=100

PHÂN TÍCH BÀI TỐN VỚI N=100

Nhận xét

S1 = 1

S2 = S1 + 1/2 S3 = S2 + 1/3

S4 = S3 + 1/4

S100 = S99 + 1/100

1

S

Bắt đầu từ S

2

việc tính S

1

được lặp lặp lại 99 lần

theo quy luật

S

sau

= S

trước

+ 1/i,

Với I chạy từ

100

2

1

3

1

4

1

1

100

(8)

So sánh hai thuật toán sau

SƠ ĐỒ THUẬT TOÁN

SƠ ĐỒ THUẬT TOÁN

Thuật toán Tong_1A

Thuật toán Tong_1b

*

Bước 1

: S ← 1/a; N ← 0;

*

Bước 2:

N ← N + 1;

*

Bước 3:

Nếu N > 100 chuyển

đến bước 5;

*

Bước 4:

S ← S + 1/(a + N) quay

lại bước 2;

*

Bước 5:

Đưa S hình, kết

thúc.

*

Bước 1

: S ← 1/a; N ← 101;

*

Bước 2:

N ← N - 1;

*

Bước 3:

Nếu N < chuyển đến

bước 5;

*

Bước 4:

S ← S + 1/(a + N) quay

lại bước 2;

*

Bước 5:

Đưa S hình, kết

thúc.

•Thuật tốn dạng lặp tiến

• Dạng lặp tiến: Biến đếm tự động tăng dần từ giá trị đầu đến giá trị cuối

•Thuật tốn dạng lặp lùi

(9)

CẤU TRÚC DẠNG LẶP TIẾN

CẤU TRÚC DẠNG LẶP TIẾN

Hãy nêu cấu trúc dạng lặp tiến?

Biến đếm: biến kiểu nguyên, kí tự miền con

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

For <

biến đếm

>

:=

<

giá trị đầu

> to <

giá trị cuối

> <

câu lệnh

>;

For <

biến đếm

>

:=

<

giá trị đầu

> to <

giá trị cuối

> <

câu lệnh

>;

Ví dụ S:=1;

(10)

SƠ ĐỒ KHỐI Biến đếm:=giá trị đầu

Biến đếm<=giá trị cuối

Lệnh cần lặp biến đếm tăng Đúng

Sai

Quan sát sơ đồ khối, cho biết thực

máy?

• Bước 1: tính giá trị đầu, gán cho biến đếm • Bước 2: Nếu biến đếm <= giá trị cuối thì:

• thực lệnh cần lặp

(11)

CẤU TRÚC DẠNG LẶP LÙI

CẤU TRÚC DẠNG LẶP LÙI

Hãy nêu cấu trúc dạng lặp lùi?

Biến đếm: biến kiểu nguyên, kí tự miền con

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

for <

biến đếm

>

:=

<

giá trị cuối

> downto <

giá trị đầu

> <

câu lệnh

>;

for <

biến đếm

>

:=

<

giá trị cuối

> downto <

giá trị đầu

> <

câu lệnh

>;

Ví dụ S:=1;

(12)

SƠ ĐỒ KHỐI Biến đếm:=giá trị đầu

Biến đếm>=giá trị cuối

Lệnh cần lặp biến đếm giảm Đúng

Sai

Quan sát sơ đồ khối, cho biết thực

của máy?

• Bước 1: tính giá trị đầu, gán cho biến đếm • Bước 2: Nếu biến đếm >= giá trị cuối thì:

• thực lệnh cần lặp

(13)

Lưu ý:

+ Biến đếm biến đơn, có kiểu nguyên kí tự.

+ Giá trị đầu, giá trị cuối biểu thức có kiểu với

biến đếm Giá trị đầu phải nhỏ giá trị cuối.

+ Giá trị biến đếm điều chỉnh tự động, câu

lệnh viết sau DO không thay đổi giá trị biến đếm

For i:=1 to 10 write(i);

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

(14)

Quan sát sách giáo khoa trang

44, chương trình cài đặt

(15)

* Bước 1: S ← 1/a; N ← 0; * Bước 2: N ← N + 1;

(16)

Quan sát sách giáo khoa trang

44, chương trình cài đặt

(17)

* Bước 1: S ← 1/a; N ← 101; * Bước 2: N ← N - 1;

(18)

Quan sát sách giáo khoa trang

45, chương trình thực việc

nhập từ bàn phím hai số

nguyên dương M N (M<N)

Tính đưa hình tổng

các số chia hết cho

(19)(20)

Hãy lập trình tính:

50

1

n

n

1

(21)(22)

TÌM SỰ KHÁC BIỆT

TÌM SỰ KHÁC BIỆT

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

Cho đến

1

0

.

0001

N

a

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

Việc tăng giá trị cho tổng S

Việc tăng giá trị cho tổng S

được lặp lặp lại

được lặp lặp lại

100

100

lần.

lần.

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

Việc tăng giá trị cho tổng S

Việc tăng giá trị cho tổng S

được lặp lặp lại

(23)

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

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

a Bài toán nêu vấn đề:

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

S

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

Hãy xác định INPUT OUTPUT

toán trên?

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

N

1

2

1

1

1

1

N

a

a

a

a

S

cho đến khi

(24)

THUẬT TOÁN

THUẬT TOÁN

Nhận xét thuật tốn.

*

Bước 5:

Đưa S hình, kết thúc.

*

Bước 1

: S ← 1/a; N ← 0; {Khởi tạo S N}

*

Bước 3:

N ← N + 1;

*

Bước 2:

Nếu 1/(a + N) < 0,0001 chuyển đến bước 5;

*

Bước 4:

S ← S + 1/(a + N) quay lại bước 2;

(25)

CÂU LỆNH WHILE - DO

CÂU LỆNH WHILE - DO

Hãy nêu cấu trúc lặp với câu lệnh while - do?

Điều kiện: biểu thức quan hệ biểu thức logic Câu lệnh: môt câu lệnh Pascal

While <

điều kiện

> <

câu lệnh

>;

(26)

Quan sát sơ đồ khối, cho biết thực

máy?

• Bước 1: tính giá trị <điều kiện>

• Bước 2: Nếu <điều kiện> có giá trị thì: • thực lệnh cần lặp

• quay lại bước

SƠ ĐỒ KHỐI

Điều kiện

Lệnh cần lặp Đúng

Sai

(27)

BÀI TOÁN ĐẶT VẤN ĐỀ

BÀI TỐN ĐẶT VẤN ĐỀ

Tính tổng S với a số nguyên a>2

1

2

1

1

1

1

N

a

a

a

a

S

Cho đến

1

0

.

0001

N

a

Nhận xét

While

1/(a + N) >= 0.0001

do

Begin

S:=S+1/(a+N);

N:=N+1;

End;

Chừng 1/(a + N) >= 0.0001

thực hiện:

+ Tăng giá trị tổng S thêm

1/(a + N).

(28)

Quan sát sách giáo khoa trang

47, chương trình cài đặt thuật

(29)

• Tính giá trị <điều kiện>

•Nếu <điều kiện> có giá trị thì: • thực lệnh cần lặp

(30)

Quan sát sách giáo khoa trang

47, chương trình cài đặt thuật

tốn “ Tìm ước số chung lớn

nhất hai số nguyên dương

(31)

THUẬT TOÁN

THUẬT TOÁN

*

Bước 5:

Đưa kết ƯCLN kết thúc.

* Bước 1: Nhập M, N;

* Bước 3: Nếu M > N M ← M + N ngược lại N ← N - M

;

* Bước 2: Nếu M = N lấy giá trị chung làm ƯCLN

chuyển đến bước 5;

(32)(33)

Chừng

M≠N

thì

M> N

M:= M-N

ngược lại

N:= N-M

Đến

M=N

thì

đưa ƯCLN(M,N)=

M

(34)

CÂU LỆNH REPEAT - UNTIL

CÂU LỆNH REPEAT - UNTIL

Hãy nêu cấu trúc lặp với câu lệnh repeat - until?

Repeat <

câu lệnh

> until <

điều kiện

>;

(35)(36)

Thực tháng năm 2007

Ngày đăng: 30/05/2021, 18:33

w