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

Bai 10 Cau truc lap

36 11 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

Thông tin cơ bản

Định dạng
Số trang 36
Dung lượng 2,95 MB

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

Nội dung

Quan sát sách giáo khoa trang 47, chương trình cài đặt thuật toán “ Tìm ước số chung lớn nhất của hai số nguyên dương M và N?. .......[r]

Trang 2

BÀI 10

CẤU TRÚC LẶP

Thời gian 3 tiết

Trang 3

1 1

a a

S

1

2

1 1

a a

a S

cho đến khi 1  0 0001

a

Bài toán 1:

Trang 4

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

tăng bao nhiêu?

i a

1

Sau mỗi lần thực hiện phép cộng, giá trị tổng S tăng ( Với i =1; 2; 3 ; ;N)

Trang 5

TÌM SỰ KHÁC BIỆT

100

1

2

1 1

a a

2

1 1

a a

a S

N a

 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 100 lần.

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

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

N a

1

Trang 6

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

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

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

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

N

1

4

1 3

1 2

1 1

Trang 7

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

S sau = S trước + 1/i,

Trang 8

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

SƠ ĐỒ THUẬT TOÁN

Trang 9

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ự hoặc miền con Giá trị đầu, giá trị cuối là biểu thức cùng kiểu với biến đếm Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối.

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

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

Ví dụ S:=1;

FOR i:=2 TO 100 DO S:=S+1/i;

Trang 10

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

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

• 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 hiện lệnh cần lặp.

• tăng biến đếm 1 đơn vị, quay lại bước 2

Trang 11

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ự hoặc miền con Giá trị đầu, giá trị cuối là biểu thức cùng kiểu với biến đếm Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối.

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

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

Ví dụ S:=1;

FOR i:=100 DOWNTO 2 DO S:=S+1/i;

Trang 12

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

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

• 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 hiện lệnh cần lặp.

• giảm biến đếm 1 đơn vị, quay lại bước 2

Trang 13

Lưu ý:

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

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

+ Giá trị của biến đếm được điều chỉnh tự động, vì vậy câu lệnh viết sau DO không được thay đổi giá trị biến đếm

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

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

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

Trang 14

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?

Trang 15

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

* Bước 2: N ← N + 1;

* Bước 3: Nếu N > 100 thì chuyển đến bước 5;

* Bước 4: S ← S + 1/(a + N) rồi quay lại bước 2;

* Bước 5: Đưa S ra màn hình, rồi kết thúc.

Trang 16

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

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

thuật toán Tong_1B?

Trang 17

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

* Bước 2: N ← N - 1;

* Bước 3: Nếu N < 1 thì chuyển đến bước 5;

* Bước 4: S ← S + 1/(a + N) rồi quay lại bước 2;

* Bước 5: Đưa S ra màn hình, rồi kết thúc.

Trang 18

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

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

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

nguyên dương M và N (M<N) Tính và đưa ra màn hình tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ M đến N?

Trang 22

TÌM SỰ KHÁC BIỆT

100

1

2

1 1

a a

2

1 1

a a

a S

N a

 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 100 lần.

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

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

N a

1

Trang 23

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

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

2

1 1

a a

a S

cho đến khi

0001

Trang 24

THUẬT TOÁN

Nhận xét thuật toán.

* Bước 5: Đưa S ra màn hình, rồi kết thúc.

* Bước 1: S ← 1/a; N ← 0; {Khởi tạo S và N}

* Bước 3: N ← N + 1;

* Bước 2: Nếu 1/(a + N) < 0,0001 thì chuyển đến bước 5;

* Bước 4: S ← S + 1/(a + N) rồi quay lại bước 2;

Từ bước 2 đến bước 4 được lặp lại nhiều lần nếu điều kiện 1/(a + N) < 0.0001 chưa được thoả mãn

Trang 25

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ệ hoặc biểu thức logic Câu lệnh: là môt câu lệnh trong Pascal

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

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

Trang 26

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

• Bước 2: Nếu <điều kiện> có giá trị đúng thì:

Trang 27

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

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

1

2

1 1

a a

a

N a

+ Tăng giá trị của tổng S thêm 1/(a + N).

+ Tăng N thêm 1 đơn vị

Trang 28

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

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

toán Tong_2?

Trang 29

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

•Nếu <điều kiện> có giá trị đúng thì:

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

• quay lại bước 1.

Trang 30

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

47, chương trình cài đặt thuật toán “ Tìm ước số chung lớn nhất của hai số nguyên dương

M và N?

Trang 31

THUẬT TOÁN

* Bước 5: Đưa ra kết quả ƯCLN rồi kết thúc.

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

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

* Bước 2: Nếu M = N thì lấy giá trị chung này làm ƯCLN rồi chuyển đến bước 5;

* Bước 4: Quay lại bước 2;

Trang 32

Trang 34

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 >;

Repeat <câu lệnh> until <điều kiện >;

Trang 35

Trang 36

Thực hiện tháng 8 năm 2007E_mail: dhhoang03@yahoo.co.uk

Ngày đăng: 05/06/2021, 06:31

TỪ KHÓA LIÊN QUAN

w