Tải bản đầy đủ (.doc) (8 trang)

Bài 7. Câu lệnh lặp

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 (117.55 KB, 8 trang )

Ngµy so¹n: 12/01/2017
Tiết 39-40-41-42-43
CHỦ ĐỀ 2: LẶP VỚI SỐ LẦN ĐỊNH TRƯỚC
Số tiết dạy: 5
Tiết

1

Địa điểm

Lớp học

2
Lớp học

3
Lớp học

4
Phòng máy

5
Phòng máy

Ngày dạy
Sĩ số lớp
Tên HS
vắng

8A
8B


8A
8B

1. Mục tiêu
Kiến thức
Biết nhu cầu cần có cấu trúc lặp trong ngôn ngữ lập trình.
Biết ngôn ngữ lập trình dùng cấu trúc lặp để chỉ dẫn máy tính thực hiện lặp đi
lặp lại công việc nào đó một số lần.
Hiểu hoạt động của câu lệnh với số lần biết trước for...do trong Pascal
Biết được các tình huống sử dụng lệnh lặp.
Kĩ năng
Viết đúng lệnh lặp với số lần định trước.
Thái độ:
Rèn tính cẩn thận, chính xác, thái độ nghiêm túc khi học tập.
Năng lực cần hướng tới
Viết được chương trình có sử dụng lệnh lặp với số lần định trước.
2. Phương pháp:
- Thuyết trình-trực quan
- Đặt và giải quyết vấn đề
3. Chuẩn bị:
Giáo viên: Bảng phụ, SGK, phòng máy, máy chiếu
Học sinh: Đọc bài trước khi đến lớp.


4. Tổ chức dạy học :
Hoạt động khởi động:
* Các công việc phải thực hiện nhiều lần.
Trong cuc sng hng ngy, nhiu hot ng c thc hin lp i lp li nhiu
ln. vớ d:
Cỏc ngy trong tun cỏc em u lp i lp li hot ng bui sỏng n trng v

bui tra tr v nh
Hóy cho thờm mt vi vớ d trong thc t trong i sng hng ngy m ta phi thc
hin cỏc thao tỏc c lp i lp nhiu ln?
Khi vit chng trỡnh mỏy tớnh cng vy, trong nhiu trng hp ta cng phi vit
lp li nhiu cõu lnh ch thc hin 1 phộp tớnh nht nh.
Hoạt động hình thành kiến thức:
1. Chuyển giao nhiệm vụ học tập:
* Câu lệnh lặp - một lệnh thay thế cho nhiều lệnh
Gv gi 1 hs lờn bng v mt hỡnh vuụng cnh 1 n v di (20cm) v yờu cu c
lp theo dừi bn thc hin cỏc thao tỏc trờn bng.
Vy khi bn v 1 hỡnh vuụng ó thc hin bao nhiờu thao tỏc?
VD1: Giả sử cần vẽ 3 hình vuông có cạnh 1 đơn vị . Mỗi hình
vuông là ảnh của hình bên trái nó dịch chuyển 1 khoảng các 2
đơn vị. Vy ta cn bao nhiờu thao tỏc? Mụ t thut toỏn?
Bớc 1: vẽ hình vuông(vẽ liên tiếp 4 cạnh và trở về đỉnh ban đầu)
Bớc 2: Nếu số hình vuông đã đợc vẽ ít 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 thì kết thúc thuật
toán.
Riêng với 1 bài toán vẽ hình vuông thì thao tác chính là vẽ bốn
cnh bằng nhau,hay lặp lại 4 lần thao tác vẽ đoạn thẳng
Thut toỏn mụ t cỏc bc v hỡnh vuụng.
Bc 1: k 0 (k l s on thng ó v c).
Bc 2: k k+1. V on thng 1 n v di v quay thc 900 sang phi.
Bc 3: Nu k<4 thỡ quay li bc 2; ngc li kt thỳc.
k l bin m
* Tỡnh hung dn n cõu lnh lp
VD2: Mụ t thut toỏn tớnh tng cỏc s t nhiờn t 1 100: S= 1+2+3+ + 100


Bc 1: S 0; i 0.

Bc 2: i i + 1
Bc 3: nu i 100, thỡ S S + i v quay li bc 2; ngc li kt thỳc.
i l bin m
Mụ t thut toỏn trờn gi l cu trỳc lp.
Mi ngụn ng lp trỡnh u cú cỏch ch th cho mỏy tớnh thc hin cu trỳc lp ch
vi 1 cõu lnh. ú l cõu lnh lp
2. Thực hiện nhiệm vụ học tập
* Cu trỳc câu lệnh lặp
Cỳ Phỏp cõu lnh lp vi s ln bit trc trong Pascal.
for<bin m>:= <giỏ tr u> to <giỏ tr cui> do <cõu lnh>
trong ú:
+ for, to, do l cỏc t khúa
+ bin m l bin n cú kiu nguyờn
+ giỏ tr u v giỏ tr cui l cỏc biu thc cú cựng kiu vi bin m v giỏ tr
cui phi ln hn giỏ tr u
+ cõu lnh cú th l cõu lnh n gin hay cõu lnh ghộp
VD 3: Lnh lp no sau õy l ỳng?
A.For <bin m>= <giỏ tr u> to <giỏ tr cuụớ> do <cõu lnh>.
B.For <bin m>:= <giỏ tr u> to <giỏ tr cuụớ> do <cõu lnh>.
C.For <bin m>:= <giỏ tr cuụớ> downto <giỏ tr u> do <cõu lnh>.
D.For <bin m>: <giỏ tr cuụớ> downto <giỏ tr u> do <cõu lnh>.
VD 4: Cõu lnh pascal no sau õy l hp l?
A. For i:=100 to 1 do writeln(A);
B. For i:=1.5 to 10.5 do writeln(A);
C. For i= 1 to 10 do writeln(A);
D. For i:= 1 to 10 do writeln(A);
3. Báo cáo kết quả và thảo luận
* Ví dụ về câu lệnh lặp
VD 5: Hóy ch ra cỏc li trong cỏc cõu lnh sau õy:
a) s := 10; for x := 10 to 1 do s := x + 5;

c) s=0; for i:=1 to 10 do s=s+i;


VD 6: Cho bit kt qu sau khi chy on chng trỡnh sau:
s:=0;
For i:=1 to 5 do
Begin j:=i+5;s:=s+j; end;
4. Đánh giá kết quả thực hiện nhiệm vụ học tập
VD 7 :
Yờu cu HS chia lp hot ng nhúm
Nhúm 1,3 : Vit chng trỡnh in ra mn hỡnh th t ln lp.
Nhúm 2,4: Vit chng trỡnh ghi nhn v trớ 10 ch O ri t trờn xung.
Chng trỡnh mong mun nhn c nh sau:
Chuong trỡnh in ra mn hỡnh th t ln lp.
Program lap;
var i:integer;
begin
for i:= 1 to 20 do writeln(Day la lan lap thu,i); readln;
end.
Chng trỡnh ghi nhn v trớ 10 ch O ri t trờn xung.
ues crt;
var i:integer;
begin
clrscr;
for i:= 1 to 20 do begin writeln(O);delay(200); end;
readln;
end.
*Lu ý: Cõu lnh đơn giản Writeln(O) và Delay(200) đợc đặt
trong từ khoá BEGIN và END để tạo thành câu lệnh ghép trong
PASCAL

VD 8:Chng trỡnh pascal sau s in ra mn hỡnh ni dung gỡ?
Var i: integer;
BEGIN
For i:=1 to 10 do Writeln(Day la lan lap thu ,i);
Readln;
END.


Hoạt động luyện tập
VD 9: Yêu cầu HS hoạt động nhóm viết chương trình tính tổng của 100 số tự
nhiên đầu tiên. Đây là chương trình đầu tiên về câu lệnh lặp, chủ yếu để học sinh
suy nghĩ và làm quen. Chương trình mong muốn nhận được như sau:
Program tinh_tong;
var s,i:integer;
begin
s:=0;
for i:= 1 to 100 do s:=s+i;
writeln(‘Ket qua la: ’,s); readln;
end.
* TÝnh tæng vµ tÝch b»ng c©u lÖnh lÆp
Mô tả thuật toán tính tổng các số tự nhiên từ 1→ 100?
Từ đó mô tả thuật toán tính tổng các số tự nhiên từ 1 đến n? thuật toán tính tích của
các số tự nhiên từ 1 đến n( n!)?
Chương trình mong muốn nhận được như sau:
VD 9:Chương trình tính tổng N số tự nhiên đầu tiên, với N là số tự nhiên được
nhập từ bàn phím. S = 1+2+3+ … + N
program Tinh_tong;
var

N,i:integer; S:longint;


begin
write(‘Nhap so N = ‘);readln(N);
S:= 0;
for i:= 1 to N do

S:= S+i;

writeln(‘Tong cua’, N, ‘so tư nhien dau tien S = ‘, S);
readln;
end.
VD 10: Chương trình tính tích N số tự nhiên, với N là số tự nhiên được nhập từ
bàn phím.
N! = 1.2.3….N
program Tinh_Giai_Thua;
var

N,i:integer; P:longint;


begin
write(‘Nhap so N = ‘);

readln(N);

P:= 1;
for i:= 1 to N do

P:= P*i;


writeln( N, ‘! = ‘, P);
readln;
end.
*Kiểu longint có phạm vi từ -231 đến 231 – 1.
VD 11: Sử dụng câu lệnh For… do… viết chương trình tính tổng các số tự nhiên
trong khoảng 100 đến 1000.
Hoạt động vận dụng:
* Thực hành
Yêu cầu HS mở máy gõ lại c¸c bài tập trên, sau khi gõ xong mỗi bài cần thử với 3
bộ test và kiểm tra kết quả
VD 12 : Viết chương trình in ra tất cả các ước của một số n (Với n được nhập từ
bàn phím)
a. Hướng dẫn:
- Cho biến i chạy từ 1 đến n. Nếu n chia hết cho i thì in ra i.
Chương trình mong muốn:
Program Tim_uoc;
uses crt;
Var n, i: integer;
Begin
clrscr;
Write('Nhap so n ='); readln(n);
For i:=1 to n do if n mod i = 0 then write(i:3,',');
readln
end.
* Thực hành
Yêu cầu HS mở máy gõ lại bài tập trên
* Hướng dẫn thực hành


VD 13: Viết chơng trình nhập vào từ bàn phím 2 số x,y. Nếu

xđến y, nếu x > y thì in số 0 ra màn hình.
HS nghiên cứu bài toán, tìm input và output.
GV phân tích bài toán và hớng dẫn HS viết chơng trình
HS đọc, phân tích câu lệnh tìm hiểu hoạt động của chơng
trình.
GVyêu cầu một học sinh đứng tại vị trí trình bày hoạt động
của chơng trình, các nhóm khác cùng tham gia phân tích.
* Thc hnh
HS gõ bài tập lên máy và test kết quả
Program baitap;
Uses crt;
Var i, x,y,dem: integer;
Begin
Clrscr;
Writeln(Nhap vao so x); readln(x);
Writeln(Nhap vao so y); readln(y);
If x>y then write(0) else
Begin
Dem:=0;
For i:=x to y do if i mod 3=0 then
Begin write(i:6); dem:=dem+1 end;
Writeln(Co tat ca ,dem, so chia het cho 3);
End;
Readln;
End.
Hot ng tỡm tũi m rng:
VD 14: Vit chng trỡnh in ra cỏc s l nh hn hoc bng n (Vi n c nhp).
Hng dn:
- Cho bin i chy t 1 n n.

- Nu i chn ( i chia 2 d 0) thỡ in ra s n.
Chng trỡnh mong mun


Program In_So_Le;
Uses crt;
var i,n: integer;
Begin
Clrscr;
Write('Nhap so n ='); readln(n);
For i:=1 to n do
if i mod 2 =1 then Write(i:3,',');
readln
end.
VD 15: Viết chương trình in ra tổng các số lẻ nhỏ hơn hoặc bằng n ( Với n được
nhập).
Hướng dẫn:
- Cho S = 0.
- Cho biến i chạy từ 1 đến n.
- Nếu i chẵn ( i chia 2 dư 0) thì cộng thêm i vào S.
- In ra S.
Chương trình mong muốn:
Program In_So_Le;
Uses crt;
var S,i,n: integer;
Begin
Clrscr;
Write('Nhap so n ='); readln(n);
S:= 0;
For i:=1 to n do if i mod 2 =1 then S:= S+i;

Writeln('Tong cac so le nho hon ',n,' la: ',S);
readln
end.
Chú ý: Ta dùng biến S để cộng dồn nên nó được khởi tạo giá trị đầu bằng 0.
16/01/2017
BGH duyÖt

Đặng Thị Thanh Xuân



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

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