Tải bản đầy đủ (.ppt) (25 trang)

Cấu trúc lặp Tin học 11

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (753.35 KB, 25 trang )

GV:


Kiểm tra bài cũ

Em hãy nêu cú pháp của câu lệnh rẽ nhánh If-then dạng
thiếu và dạng đủ? Cho ví dụ minh họa?
Trả lời:

•Rẽ nhánh dạng thiếu:
If <điều kiện> then <câu lệnh>;
Ví dụ: If ▲ <0 then write(‘Phuong trinh vo nghiem’);
•Rẽ nhánh dạng đủ:
If <điều kiện> then <câu lệnh 1> else <câu lệnh 2>;
Ví dụ: If ▲<0 then write(‘Phuong trinh vo nghiem’)
else write(‘Phuong trinh co nghiem’);


Tiết 13 - Bài 10 - Chủ đề:


I. Tìm hiểu Lặp

Ví dụ 1 : Viết chương trình in ra màn hình 1
dịng chữ ‘Hello Class 11G’.

Edit by Van Tuyen, 2010


I. Tìm hiểu Lặp


Ví dụ 2 : Viết chương trình in ra màn hình 10
dịng chữ ‘Hello Class 11G’

Edit by Van Tuyen, 2010

Chương trình


1. Lặp:

I. Tìm hiểu Lặp

Edit by Van Tuyen, 2010

 Lặp: một cơng việc, một thao tác, một
lặp…là được
gì ? thực
phép toán, một câuVậy
lệnh
hiện lặp đi, lặp lại một số lần.


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

Bài toán 1:

1
1
1

1
S 

 ... 
a a 1 a  2
a  100
Bài toán 2:

1
1
1
1
S 

 ... 
 ...
a a 1 a  2
aN
1
 0.0001
cho đến khi
aN


ĐIỂM GIỐNG NHAU CỦA 2 BÀI TỐN

* Bài tốn 1:
S

* Bài toán 2:


1
1
1
1


 ... 
a a 1 a  2
a  100

Xuất phát

Lần 1

1
1
1
1


 ... 
 ...
a a 1 a  2
aN
1
Cho đến khi
 0.0001
aN


S

Lần 2

Lần N

1
1
1
1
S 


... 
aN
a a 1 a  2
Sau mỗi lần thực hiện giá trị tổng S tăng thêm:
S=1/(a+i) (với i =1, 2, 3 , ...,N)


TÌM SỰ KHÁC NHAU ?

* Bài tốn 1:

* Bài tốn 2:

1
1
1
1

S 

 ... 
a a 1 a  2
a  100

1
1
1
1
S 

 ... 
 ...
a a 1 a  2
aN
1
Cho đến khi
 0.0001
aN

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

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

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


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

1
 0.0001
aN


CẤU TRÚC LẶP


2. Lặp với số lần biết trước và câu lệnh for – do :
Ví dụ: Tính tổng S với a là số nguyên và a>2

1
1
1
1
S 

 ... 
a a 1 a  2
a  100

- Dữ

Hãy xác định
INPUT và
của bài
liệuOUTPUT
vào(Input)

toán trên?

: Nhập a;

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


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

1
1
1
1
S 


a a 1 a  2 a  3
....................

S0 = 1/a
S1 = S0 + 1/(a+1)

S2 = S1 + 1/(a+2)
S3 = S2 + 1/(a+3)

.....

S100 = S99 + 1/(a+100)

NHẬN XÉT:

Bắt đầu từ S11 việc tính S được
lặp đi lặp lại 100 lần theo quy
luật:

Sii = Si-1
+ 1/(a+i);
i-1
víi i ch¹y tõ 1  100


XÂY DỰNG THUẬT TOÁN (Dạng lặp tiến)

B1: Nhập a;

Nhập a

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

B3: Nếu i > 100 thì đưa ra giá trị
S rồi Kết thúc;
§

i > 100 ?

Đưa ra S rồi kết thúc!

S
S  S + 1/(a+i)
i  i+1


B4 : S  S + 1/(a+i);
B5: i  i +1 quay lại B3.


2. Lặp với số lần biết trước và câu lệnh for – do :
a. Dạng lặp tiến

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

Ví dụ : S:=1/a;
For i:=1 to 100 do S:=S+1/(a+i);
Ví dụ :
For i:=1 to 150 do
begin
write(‘Phần tử thứ : ’, i:6:2);
readln(A[i]);
end;

- Hoạt động của lệnh for – do (dạng lặp tiến): Câu lệnh viết sau từ
khóa do được thực hiện tuần tự, với biến đếm lần lượt nhận các giá
trị liên tiếp tăng từ giá trị đầu đến giá trị cuối.


XÂY DỰNG THUẬT TOÁN (Dạng lặp lùi)

B1: Nhập a;

Nhập a


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

B3: Nếu i < 1 thì đưa ra giá trị S
rồi Kết thúc;
§

i<1?

Đưa ra S rồi kết thúc!

S
S  S + 1/(a+i)
i  i -1

B4 : S  S + 1/(a+i);
B5: i  i - 1 quay lại B3.


2. Lặp với số lần biết trước và câu lệnh for – do :
b. Dạng lặp lùi
For <biến đếm> := <giá trị cuối> downto <giá trị đầu> do < câu lệnh>;

Ví dụ: S:=1/a;
For i:=100 downto 1 do S:=S+1/(a+i);
Ví dụ :
For j:= 150 downto 2 do
if A[j]> 0 then write(‘Phần tử thứ j:’);

- Hoạt động của lệnh for – do (dạng lặp lùi): Câu lệnh viết sau từ

khóa do được thực hiện tuần tự, với biến đếm lần lượt nhận các
giá trị liên tiếp giảm từ giá trị cuối đến giá trị đầu.


2. Lặp với số lần biết trước và câu lệnh for – do :
Trong đó:
 Biến đếm là biến thường có kiểu ngun hoặc kí tự.
 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 hoặc
bằng giá trị cuối.

Lưu ý:
- 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.


2. Lặp với số lần biết trước và câu lệnh for – do :
c. Ví dụ : Lập chương trình tính tổng S với a là số nguyên và a>2
S 

1
1
1
1


 ... 
a a 1 a  2
a  100
HOẠT ĐỘNG
NHÓM


NHÓM 1

NHÓM 2

NHÓM 3

NHÓM 4


Ví dụ 1 : Bài tốn Tong_1a


Ví dụ 1 : Bài tốn Tong_1b


Củng cố bài học:
1. Lặp

2. Lặp với số lần biết trước và câu lệnh for – do:
a. Dạng lặp tiến:
For <biến đếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>;

b. Dạng lặp lùi:
For <biến đếm>:=<giá trị cuối> downto <giá trị đầu> do <câu lệnh>;


Hãy đánh dấu vào ô
đúng hoặc sai
Đúng

Sai những câu dưới đây?
Câu 1: Cấu trúc lặp có hai loại lặp:

Lặp với số lần biết trước và lặp
với số lần không biết trước.





Câu 2: Cấu trúc lặp dạng tiến: For
<biến đếm>:= <giá trị cuối> to trị đầu> do <câu lệnh>;
Câu 3:Cấu trúc lặp dạng lùi: For
<biến đếm>:=
<giá trị đầu> downto <giá trị cuối>
do <câu lệnh>;


Hãy đánh dấu vào ô
đúng hoặc sai
Đúng
Sai
5: X là
biến dưới
kiểu thực;
Ta có
những
câu
đây?

 Câu




câu lệnh lặp
For X:=1 to 100 do

Câu 6: S, i là kiểu nguyên; Câu
lệnh
For i:=1 to 1 do S:=S+1; Sẽ lặp 2
lần
Câu 7: Sau DO muốn thực hiện
nhiều lệnh phải sử dụng câu lệnh
ghép.


Hướng dẫn về nhà
 Học và làm bài tập sách bài tập từ bài
323 – 335(SBT 22 – 24).
 Xem trước phần lặp với số lần chưa biết
trước và câu lệnh while – do :



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×