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

Vòng lặp For....do....

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 (2.87 MB, 26 trang )


Trân Trọng kính chào Quý Thầy Cô
và các em học sinh

1. Hãy cho biết câu lệnh điều kiện có mấy dạng, đó là
những dạng nào?
Trả lời: có 2 dạng
Dạng thiếu: if<điều kiện> then<câu lệnh>;
Dạng đủ: if<điều kiện> then<câu lệnh1> else <câu lệnh 2>;
KIỂM TRA BÀI CŨ
KIỂM TRA BÀI CŨ
KIỂM TRA BÀI CŨ
KIỂM TRA BÀI CŨ
2 . Câu lệnh điều kiện nào sau đây đúng ?
A . If a>b then max : = a ; else max : = b ;
B . If a>b then max = a else max = b ;
C . If a>b then max : = a else max : = b ;
D . If a>b then max : = a esle max = b ;

(Tiết 1)
T
i
ế
t

6
2
T
i
ế
t



6
2
B I 7À
Giáo viên thực hiện: Trần Thị Sang

1/ Các công việc phải thực hiện nhiều lần
? Hãy tìm những ví dụ minh họa các hoạt động lặp
đi lặp lại nhiều lần
Ví dụ: + Mỗi ngày đánh răng 2 lần
+ Mỗi ngày ăn cơm 3 lần
+ Giặt áo quần
+ Học bài
?Trong những ví dụ ở trên em hãy cho biết hoạt
động nào là lặp với số lần biết trước, lặp với số
lần chưa biết trước
Lặp với số
lần biết trước
Lặp với số lần chưa
biết trước
T
i
ế
t

6
2
T
i
ế

t

6
2
CÂU LỆNH LẶP
CÂU LỆNH LẶP

2/ Câu lệnh lặp- một lệnh thay cho nhiều lệnh
Ví dụ 1: Giả sử cần vẽ 3 hình vuông có cạnh là 1
đơn vị. Mỗi hình vuông là ảnh dịch chuyển của
hình bên trái nó một khoảng cách là 2 đơn vị
? Viết thuật toán
CÂU LỆNH LẶP
CÂU LỆNH LẶP
Viết thuật toán
B1:Vẽ hình vuông(vẽ liên tiếp 4 cạnh và trở về đỉnh ban đầu)
B2:Nếu số hình vuông nhỏ hơn 3, di chuyển bút vẽ về bên phải
2 đơn vị và trở lại bước 1, ngược lại kết thúc thuật toán
T
i
ế
t

6
2
T
i
ế
t


6
2
CÂU LỆNH LẶP
CÂU LỆNH LẶP

2/ Câu lệnh lặp- một lệnh thay cho nhiều lệnh
? Viết thuật toán vẽ một hình vuông có độ dài cạnh
là 1 đơn vị
Thuật toán:
B1: k←0(k số đoạn thẳng đã vẽ được)
B2: k←k+1. Vẽ đoạn thẳng 1 đơn vị độ dài và quay
thước 90
0
sang phải
B3: Nếu k<4 thì trở lại B2. Ngược lại kết thúc
thuật toán
T
i
ế
t

6
2
T
i
ế
t

6
2

CÂU LỆNH LẶP
CÂU LỆNH LẶP

T
i
ế
t

6
2
T
i
ế
t

6
2
CÂU LỆNH LẶP
CÂU LỆNH LẶP
2/ Câu lệnh lặp- một lệnh thay cho nhiều lệnh
Ví dụ 2: Tính tổng của 100 số tự nhiên sau
S=1+2+3+4 +100
Thuật toán:
B1:Sum←0;i ←0;
B2:i ←i+1;
B3: Nếu i≤100, thì sum ← sum+i và quay lại B2.
Ngược lại chuyển tới B4
B4: Thông báo kết quả và kết thúc thuật toán

Hãy viết chương trình in ra 10 lần chữ “Màu

sắc”
Program baitap;
Begin
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Readln;
End.
Thử tìm câu lệnh để thay thế cho
đoạn chương trình trên?

3/ Ví dụ về câu lệnh lặp
a)Cú pháp câu lệnh lặp:
For, to, do: các từ khóa
Biến đếm: biến kiểu nguyên
Giá trị đầu, giá trị cuối là các số nguyên
Số lần lặp: giá trị cuối-giá trị đầu +1
Ví dụ: for i:=1 to 10 do writeIn(‘A’);

T
i
ế
t


6
2
T
i
ế
t

6
2
CÂU LỆNH LẶP
CÂU LỆNH LẶP
For<biến đếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>
Đều kiện trong câu lệnh if then là phép so sánh,
điều kiện trong câu lệnh lặp for do là gì?
Giá trị đầu <giá trị cuối

Hãy viết chương trình in ra 10 lần chữ “Màu
sắc”
Program baitap;
Begin
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);
Writeln(‘Mau sac’);

Writeln(‘Mau sac’);
Readln;
End.
Sử dụng cú pháp câu lệnh lặp để viết lại
đoạn chương trình sau?
Program baitap;
Var i:integer;
Begin
for i:=1 to 10 do
Writeln(‘Mau sac’);
Readln;
End.

b. Sơ đồ và hoạt đông:
True
False
* Hoạt động:
- Biến gán bằng gtđ.
-
CT kiểm tra biến <=gtc
không? Nếu đúng thì câu
lệnh được thực hiện, biến
tự động tăng lên 1 đơn vị,
rồi lại tiếp tục thực hiện
như vậy cho đến khi biến
> gtc thì thoát khỏi vòng
lặp.
Biến <=gtc
Biến <=gtc
Biến <=gtc

Biến <=gtcBiến <=gtc
Biến:=gtđ
Câu lệnh
Biến tăng lên 1 đơn vị
Thoát
T
i
ế
t

6
2
T
i
ế
t

6
2
CÂU LỆNH LẶP
CÂU LỆNH LẶP

1/ Các câu lệnh Pascal sau có hợp lệ không? Vì sao?
a) for i:=1 to 50 do writeln(‘A’);
b) for i:=3.4 to 7.5 do writeln(‘A’);
c) for i:=100 to 1 do writeln(‘A’);
d) var i: real;
Begin for i:=1 to 50 do writeln(‘A’); end;
Sửa lại :
b) for i:=3 to 7 do writeln(‘A’);

c) for i:=1 to 100 do writeln(‘A’);
d) var i: integer;
Begin for i:=1 to 50 do writeln(‘A’); end;
BÀI TẬP VẬN DỤNG
BÀI TẬP VẬN DỤNG

2.Hãy viết chương trình in ra một hình
vuông có độ dài cạnh là 4 ngôi sao?
Program baitap;
Var i:integer;
Begin
for i:=1 to 4 do
Writeln(‘****’);
Readln;
End.
Program baitap;
Begin
Writeln(‘****’);
Writeln(‘****’);
Writeln(‘****’);
Writeln(‘****’);
Readln;
End.
BÀI TẬP VẬN DỤNG
BÀI TẬP VẬN DỤNG

§7. CÂU LỆNH LẶP
HƯỚNG DẪN HỌC Ở NHÀ

Học kỹ nắm vững cú pháp của câu lệnh lặp


Làm bài tập 4+5/61 (SGK)

Chuẩn bị nội dung tiếp theo của CÂU LỆNH
LẶP

KÍNH CHÚC QUÝ
KÍNH CHÚC QUÝ
THẦY CÔ CÙNG
THẦY CÔ CÙNG
CÁC EM HỌC
CÁC EM HỌC
SINH SỨC KHỎE.
SINH SỨC KHỎE.

Trân Trọng kính chào Quý Thầy Cô
và các em học sinh

1. Viết cú pháp của câu lệnh lặp và giải thích các giá trị
có liên quan. Cho ví dụ minh họa?
2. Sử dụng câu lệnh lặp viết chương trình tính tổng của
100 số tự nhiên đầu tiên S=1+2+ +100
KIỂM TRA BÀI CŨ
KIỂM TRA BÀI CŨ
KIỂM TRA BÀI CŨ
KIỂM TRA BÀI CŨ
For<biến đếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>
For, to, do: các từ khóa
Biến đếm: biến kiểu nguyên
Giá trị đầu, giá trị cuối là các số nguyên

Số lần lặp: giá trị cuối-giá trị đầu +1
Chương trình
Program tinhtong;
Var i:integer; s:longint
Begin
S:=0;
For i:=1 to 100 do s:=s+i;
Writeln(‘tong s=‘,s);
Readln;
End.

(Tiết 2)
T
i
ế
t

6
3
T
i
ế
t

6
3
B I 7À
Giáo viên thực hiện: Trần Thị Sang

3/ Ví dụ về câu lệnh lặp

Ví dụ 3: Chương trình in ra màn hình thứ tự lần lặp
T
i
ế
t

6
3
T
i
ế
t

6
3
CÂU LỆNH LẶP(tt)
CÂU LỆNH LẶP(tt)
Thuật toán:
B1:i ←0;
B2:i ←i+1;
B3: Nếu i≤10, thì in ra lan lap thu i
và quay lại B2.
Ngược lại chuyển tới B4
B4: Thông báo kết quả và
kết thúc thuật toán
Program lap;
Var i:integer;
Begin
for i:=1 to 10 do
writeln(‘day la lan lap thu ‘,i);

Readln;
End.

3/ Ví dụ về câu lệnh lặp:
Ví dụ 4: Để in ra chữ “O” trên màn hình ta sử dụng lệnh
writeln(‘O’);
Program in;
Uses crt;
Var i:integer;
begin
clrscr;
for i:= 1 to 20 do
begin writeln(‘O’); delay(100) end;
Readln;
End.
T
i
ế
t

6
3
T
i
ế
t

6
3
CÂU LỆNH LẶP(tt)

CÂU LỆNH LẶP(tt)
writeln(‘O’); delay(100)
Câu lệnh ghép
Chú ý: Các câu lệnh đơn giản đặt trong hai từ khóa Begin và end
tạo thành câu lệnh ghép

3/ Ví dụ về câu lệnh lặp:
Ví dụ 5: Viết chương trình chào hỏi của các bạn trong lớp
T
i
ế
t

6
3
T
i
ế
t

6
3
CÂU LỆNH LẶP(tt)
CÂU LỆNH LẶP(tt)
Program chaohoi;
Var i:integer;
Ten:string;
For i:=1 to 5 do
Begin write(‘nhap ten:’); readln(ten);
Writeln(‘chao ban ‘, ten);

End;
Readln;
End.


4/ Tính tổng và tích bằng câu lệnh lặp:
Ví dụ 6: Viết chương trình tính tổng của N số tự nhiên đầu
tiên, với N là số tự nhiên được nhập vào từ bàn phím:
S=1+2+ +N
T
i
ế
t

6
3
T
i
ế
t

6
3
CÂU LỆNH LẶP(tt)
CÂU LỆNH LẶP(tt)
Thuật toán:
B1: Nhập n
B2:S←0;i ←0;
B3:i ←i+1;
B4: Nếu i≤n, thì s ← s+i

và quay lại B2.
Ngược lại chuyển tới B5
B5: Thông báo kết quả và
kết thúc thuật toán
Program tong;
Var i,n:integer;
S:longint;
Begin
Write(‘nhap so n=‘);
readln(n);s:=0;
For i:=1 to n do s:=s+i;
Writeln(‘tong =‘,s);
Readln;
End.

4/ Tính tổng và tích bằng câu lệnh lặp:
Ví dụ 7: Tính tích của N số tự nhiên đầu tiên với N được
nhập từ bàn phím
Kí hiệu N!=1.2.3 N
T
i
ế
t

6
3
T
i
ế
t


6
3
CÂU LỆNH LẶP(tt)
CÂU LỆNH LẶP(tt)
Thuật toán:
B1: Nhập n
B2:P←1;i ←0;
B3:i ←i+1;
B4: Nếu i≤n, thì p ← p*i và
quay lại B2.
Ngược lại chuyển tới B5
B5: Thông báo kết quả và
kết thúc thuật toán
Program tich;
Var i,n:integer;
p:longint;
Begin
Write(‘nhap so n =‘);
readln(n);p:=1;
For i:=1 to n do p:=p*i;
Writeln(‘tich cac so tu nhien p =‘,p);
Readln;
End.

1. Sử dụng câu lệnh lặp để viết chương trình tính
tổng các số chẵn,lẻ từ 1 đến n với n nhập từ
bàn phím.

BÀI TẬP CỦNG CỐ

BÀI TẬP CỦNG CỐ
Program tong;
Var i,n,tc,tl:integer;
Begin
Write(‘nhap so n=‘); readln(n);tl:=0;tc:=0;
For i:=1 to n do
If i mod 2<>0 then tl:=tl+i else tc:=tc+i;
Writeln(‘tong chan=‘,tc);
Writeln(‘tong le=‘,tl);
Readln;
End.
2. Sau khi thực hiện đoạn chương trình sau
giá trị của biến j bằng bao nhiêu?
J :=0;
For i:=0 to 5 do j:=j+2;

§7. CÂU LỆNH LẶP
HƯỚNG DẪN HỌC Ở NHÀ

Học kỹ nắm vững cú pháp của câu lệnh lặp

Làm bài tập (SGK+SBT)

Chuẩn bị bài thực hành số 5 về CÂU LỆNH
LẶP

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

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