Bài giảng Tin học 8 - Bài 7: Câu lệnh lặp

pptx 21 Trang Thảo Nguyên 7
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Tin học 8 - Bài 7: Câu lệnh lặp", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

Tóm tắt nội dung tài liệu: Bài giảng Tin học 8 - Bài 7: Câu lệnh lặp

Bài giảng Tin học 8 - Bài 7: Câu lệnh lặp
 Bài 7 
CÂU LỆNH LẶP
 Thời gian 2 tiết 11..CCÁÁCC CCÔÔNNGG VVIIÊÊCC̣̣ PPHHAẢ̉ II TTHHƯỰ̣CC HHIIÊÊNṆ̣ NNHHIIÊỀ̀ UU LLÂẦ̀ NN
 Hãy quan sá t cá c ả nh sau
 Mỗi Đi HọcĐánh h ọcngày cho răng mỗi đếntắm mỗingày khim ngàyột mộtthuộc lần hai lần là bài lần cônglà lcônglàà côngcôngviệc việc lviệcviệcặp lặp lại llặpặp lại với lại lạivới sốvớivới 
 lầnsốsố nh lần lầnất nhkhông nhđịnhấtất định địnhvà thể biết vàxácvà biếttrước biếtđịnh trướctrước .được... 11..CCÁÁCC CCÔÔNNGG VVIIÊÊCC̣̣ PPHHAẢ̉ II TTHHƯỰ̣CC HHIIÊÊNṆ̣ NNHHIIÊỀ̀ UU LLÂẦ̀ NN
 Trong cuộc sống hằng ngày, nhiều hoạt động được lặp đi 
 lặp lại nhiều lần.
 Có những hoạt động mà chúng ta thường thực hiện lặp lại 
 với một số lần nhất định và biết trước, chẳng hạn đánh răng 
 mỗi ngày hai lần, mỗi ngày tắm một lần, Chúng ta còn lặp lại 
 công việc với số lần không thể xác định được: học cho đến khi 
 thuộc bài,nhặt từng cọng rau cho đến khi xong, 
 Khi viết chương trình máy tính cũng vậy. Để chỉ dẫn cho 
 máy thực hiện đúng công việc, trong nhiều trường hợp ta cũng 
 cần phải viết lặp lại nhiều câu lệnh thực hiện một phép tính nhất 
 định. 2. CÂU LÊṆ̣ H LẶP̣ _MỘṬ LÊṆ̣ H THAY CHO NHIỀ̀ U LÊṆ̣ H
 Ví dụ 1. Giả sử ta cần vẽ ba hình vuông có 
 cạnh 1 đơn vị như hình 33. 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 2 đơn vị. Do đó, ta chỉ cần lặp lại 
 thao tác vẽ hình vuông ba lần. 
 Hình 33 2. CÂU LÊṆ̣ H LẶP̣ _MỘṬ LÊṆ̣ H THAY CHO NHIỀ̀ U LÊṆ̣ H
 1
 2 2
 •Việc vẽ hình có thể thực hiện được bằng thuật toán sau đây:
 Bước 1. Vẽ hình vuông ( vẽ liên tiếp bốn cạnh và trở về đỉnh 
 ban đầu).
 Bước 2. Nếu số hình vuông đã vẻ được ít hơn 3, di chuyển 
 bút vẻ về bên phải hai đơn vị và trở lại bước 1; ngược lại kết thúc 
 thuật toán. 2. CÂU LÊṆ̣ H LẶP̣ _MỘṬ LÊṆ̣ H THAY CHO NHIỀ̀ U LÊṆ̣ H
 Riêng bài toán vẽ một hình vuông (hình 34), 
 thao tác chính là vẽ bốn cạnh bằng nhau, hãy 
 lập lại bốn lần thao tác vẽ một đoạn thẳng. Sau 
 mỗi lần vẽ đoạn thẳng, thước kẻ được quay 
 một góc 90 sang phải tại vị trí của bút vẽ.
.....
 Hình 34 Thuật toán sau đây sẽ mô tả các bước để vẽ hình vuông:
 Bước1. K 0 ( là số đoạn thẳng đã 
 vẽ được)
 Bước2. K K+1. Vẽ đoạn thẳng 1 
 đơn vị độ dài và quay thước 900
 sang phải.
 .....
 Bước3. Nếu K < 4 thì trở lại bước2; 
 Ngược lại, kết thúc thuật toán. Ví dụ 2. Giả sử cần tính tổng của 100 số tự 
nhiên đầu tiên, tức là tính:
 S= 1+2+3+ +100.
 Thuật toán sau đây sẽ mô tả việc thực hiện lặp lại phép cộng 100
 lần:
 Bước1. SUM 0; i 0.
 Bước2. I i+1. 
 Bước3. Nếu i ≤ 100, thì SUM SUM + i và quay lại 
 bước 2.
 Bước4. Thông báo kết quả và kết thúc thuật toán. Hãy nêu cấu trúc dạng lặp tiến?
For := to do ;
 Biến đếm: biến kiểu nguyên, kí tự 
 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.
 Câu lêṇ h: Không được làm thay đổi giá trị biến đếm, 
 Nếu có nhiều hơn một lệnh thì phải đặt trong cặp từ 
 khoá Begin ... end;
 Ví dụ S:=1;
 FOR i:=2 TO 100 DO S:=S+1/i; SƠ ĐỒ KHỐI
 Biến đếm:=giá trị đầu
 Sai
 Biến đếm<=giá trị cuối
 Quan sát sơ 
 đồ khối, hãy 
 cho biết sự Đúng
 thực hiện của 
 máy? Lệnh cần lặp biến đếm tăng 1
• 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 3.3. CẤUCẤU TRÚCTRÚC DẠNGDẠNG LẶPLẶP TIẾNTIẾN
Chương trình sau sẽ in ra mà n hình số lầ n 
 lăp̣
 Program lap;
 Uses crt;
 Var i: integer;
 Begin
 For i:= 1 to 10 do
 Writeln (‘Day la lan lap thu ’,i);
 Readln
 end. Để in môṭ chữ “O” trên mà n hình, ta có thể 
 sử duṇ g lêṇ h
 Program lap;
 Uses crt;
 Var i: integer;
 Begin
 For i:= 1 to 20 do
 begin 
 Writeln (‘O’);
 delay(100)
 end;
 Readln
 end. 4.4. CẤUCẤU TRÚCTRÚC DẠNGDẠNG LẶPLẶP LÙILÙI
 Hãy nêu cấu trúc dạng lặp lùi?
for := downto do ;
 Biến đếm: biến kiểu nguyên, kí tự 
 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.
 Ví dụ S:=1;
 FOR i:=100 DOWNTO 2 DO S:=S+1/i; SƠ ĐỒ KHỐI
 Biến đếm:=giá trị đầu
 Sai
 Biến đếm>=giá trị cuối
 Quan sát sơ đồ 
 khối, hãy cho Đúng
 biết sự thực 
 hiện của máy? Lệnh cần lặp biến đếm giảm 1
• 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 Lưu ý:
 + Biến đếm là biến đơn, có kiểu nguyên hoặc kí tự.
 For i:=1 to 10 do write(i);
 For i:=‘a’ to ‘z’ do write(i);
 + 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.
 For i:= 100 to 200 do write(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 55.. TTIÍŃNHH TTÔỔ̉ NNGG BBĂẰ̀ NNGG CCÂÂUU LLÊÊṆṆ HH LLĂẶP̣P
Viết chương trình tính tổng 
 S=1+2+3+4+5
 Program Tinh_tong;
 Uses crt;
 Var i: integer;
 S: longint;
 Begin
 S:=0;
 For i:= 1 to 5 do S:= S + 1;
 Writeln (‘Tong cua S = ’,s);
 Readln
 end. 55.. TTIÍŃNHH TTÔỔ̉ NNGG BBĂẰ̀ NNGG CCÂÂUU LLÊÊṆṆ HH LLĂẶP̣P
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 
 Program Tinh_tong;
 Uses crt;
 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 S = ’,N,’ So tu nhien dau tien S = ‘,S);
 Readln
 end. 55.. TTIÍŃNHH TTÔỔ̉ NNGG BBĂẰ̀ NNGG CCÂÂUU LLÊÊṆṆ HH LLĂẶP̣P
Ta kí hiệu N! là tích N số tự nhiên đầu tiên:
 N! = 1.2.3 N
 - Viết chương trình tính N! với N là số 
 tự nhiên được nhập vào từ bàn 
 phím.
 Program Tính_Giai_thua;
 Uses crt;
 Var i, N: integer;
 P: longint;
 Begin
 write (‘Nhap N = ‘); readln (N);
 P:= 1;
 For i:= 1 to N do P:= P*i;
 Writeln (N,’! = ’,P);
 Readln
 end. 55.. TTIÍŃNHH TTÔỔ̉ NNGG BBĂẰ̀ NNGG CCÂÂUU LLÊÊṆṆ HH LLĂẶP̣P
Em hãy viết chương trình tính tổng các số 
nguyên liên tiếp từ n đến m với n,m là các số 
nguyên dương nhập vào từ bàn phím
 Program tinh_tong;
 Uses crt;
 Var m, n, i: integer;
 S: longint;
 Begin
 write (‘Nhap n = ‘); readln ( n);
 write (‘Nhap m=‘); readln ( m);
 S:=0;
 For i:= n to m do S:= S + n; 
 Writeln (‘Tong cua S = ’,s); Readln 
 end. GHI NHỚ
1. Cấ u trú c lăp̣ được sử duṇ g để chi ̉ thi ̣cho má y tiń h thực 
 hiêṇ lăp̣ laị môṭ và i hoaṭ đôṇ g nà o đó cho đế n khi môṭ 
 điề u kiêṇ nà o đó được thoả mãn.
2. Moị ngôn ngữ lâp̣ triǹ h đề u có cá c câu lêṇ h lăp̣ để thể 
 hiêṇ cấ u trú c lăp̣ .
3. Ngôn ngữ Pascal thể hiêṇ cấ u trú c lăp̣ vớ i số lầ n lăp̣ 
 cho trướ c bằ ng câu lêṇ h For do

File đính kèm:

  • pptxbai_giang_tin_hoc_8_bai_7_cau_lenh_lap.pptx