Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 19 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
19
Dung lượng
1,03 MB
Nội dung
CÂU LỆNHLẶPCÂULỆNHLẶP Bài 7 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âulệnh thực hiện một phép tính nhất định. 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âulệnh thực hiện một phép tính nhất định. !"#$%& !"#$%& 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 ' ( ( 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. . 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 o 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 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. S 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. ,-./0 1 ,-./0 1 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ự 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. 2345biến đếm6:= 5giá trị đầu635giá trị cuối6735câu lệnh68 2345biến đếm6:= 5giá trị đầu635giá trị cuối6735câu lệnh68 Ví dụ9:;'8 2&-<:;(&'**/&9:;9='><8 Câu lệnh: Không được làm thay đổi giá trị biến đếm, ?@<ABCDEFGH<IJ43KJHL M3Begin . end8 9NOPQR S<?I?C:;K<4TIU S<?I?C5;K<4TV< FUEJHW<?I?CXK' OYK 9< Quan sát sơ đồ khối, hãy cho biết sự thực hiện của máy? Z S[\':]K<4TIU^K3W<?I?C+ Z S[\(:?W<?I?C5;K<4TV<G: Z _<FEFUEJH+ Z XKW<?I?C'IB`T^Ea<W[\( [...]... Writeln (‘Tong cua S = ’,S); Readln; End CỦNG CỐ 1 Cấu trúc lặp được sử dụng để chỉ thị cho máy tính thực hiện lặp lại một vài hoạt động nào đó cho đến khi một điều kiện nào đó được thoả mãn 2 Mọi ngôn ngữ lập trình đều có các câu lệnhlặp để thể hiện cấu trúc lặp 3 Ngôn ngữ Pascal thể hiện cấu trúc lặp với số lần lặp cho trước bằng câu lệnh For … do ... + 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 TÍNH TỔNG BẰNG CÂU LỆNH LẶ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 TÍNH TỔNG BẰNG CÂU LỆNH LẶP Viết chương trình tính tổng của N số tự... 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 CẤU TRÚC DẠNG LẶP TIẾN Để in một chữ “O” trên màn hình, ta có thể sử dụng lệnh Program lap; Uses crt; Var i: integer; Begin For i:= 1 to 20 do begin Writeln (‘O’); delay(100) end; Readln end CẤU TRÚC DẠNG LẶP LÙI Hãy nêu cấu trúc dạng lặp lùi? for :=... Var i: integer; Begin For i:= 1 to 20 do begin Writeln (‘O’); delay(100) end; Readln end CẤU TRÚC DẠNG LẶP LÙ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; Lưu... 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 ’,N,’ So tu nhien dau tien S = ‘,S); Readln; end TÍNH TÍCH BẰNG CÂU LỆNH LẶP Cho biết: 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 = . CÂU LỆNH LẶP CÂU LỆNH LẶP Bài 7 . 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. 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.