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

Chia sẻ bởi Đỗ Đức Uý | Ngày 24/10/2018 | 56

Chia sẻ tài liệu: Bài 7. Câu lệnh lặp thuộc Tin học 8

Nội dung tài liệu:

NHiệt liệt chào mừng

Người thực hiện: Đỗ Đức Uý
Em đánh răng 2 lần một ngày
Kim giây quay 60 vòng trong 1 giờ
Bài toán: Viết chương trình
in ra mh các số từ 1 đến 10
Hãy kể tên những hoạt động được thực hiện lặp đi lặp lại với số lần nhất định và biết trước?
10 lệnh in
1. Các công việc phải thực hiện nhiều lần


O





O
O
O
O
Ví dụ1: In ra mh một chữ O
Ví dụ2: In ra mh bốn chữ O
Program in1;
Uses crt;
Begin
Writeln(`O`);
End.
Program in4;
Uses crt;
Begin
Writeln(`O`);
Writeln(`O`);
Writeln(`O`);
Writeln(`O`);
End.
Kết quả
2. Câu lệnh lặp - một lệnh thay cho nhiều lệnh
O
O
? Mọi ngôn ngữ lập trình đều có câu lệnh giúp thực hiện nhiều câu lệnh lặp đi lặp lại bằng một câu lệnh. Đó là các câu lệnh lặp.
Nếu viết chương trình in ra màn hình 100 chữ `O` thì sao nhỉ?
chương trình quá dài, và viết mất nhiều thời gian !
Câu lệnh lặp với số lần lặp biết trước trong Pascal:
FOR := TO DO < câu lệnh>;
? Giá trị cuối phải lớn hơn giá trị đầu.
? Câu lệnh có thể là câu lệnh đơn giản(một lệnh) hoặc lệnh ghép (nhiều lệnh)

Trong đó
? Biến đếm thường có kiểu số nguyên
For i:=1 to 100 do writeln(`O`);

3. câu lệnh lặp
Program in4;
Uses crt;
Begin
Writeln(`O`);
Writeln(`O`);
Writeln(`O`);
Writeln(`O`);
End.
Program in4;
Uses crt;
Begin

For i:=1 to 4 do Writeln(`O`);

End.
? Ban đầu biến đếm (i=1<4) lệnh in được thực hiện ? In ra mh chữ O đầu tiên
? Biến đếm i tăng 1 đơn vị (i=2<4) lệnh in được thực hiện ? in ra mh chữ O thứ hai
? Tương tự như vậy cho đến khi biến đếm i bằng giá trị cuối (i=4) thì lệnh được thực hiện lần cuối và kết thúc ? trên màn hình có 4 chữ O.










O
O
O
O
Hoạt động của lệnh For..to..do
ví dụ 1: In ra màn hình 4 chữ O
Program in4;
Uses crt;
Begin

For i:=1 to 10 do
begin
Writeln(`O`);
delay(100);
end;
End.
Với mỗi giá trị của biến đếm
+ Hai câu lệnh Writeln(`o`) và delay(100) được thực hiện
+ Hai lệnh trên được đặt giữa hai từ khoá begin, end ? Câu lệnh ghép

O
O
O
O
O
O
O
O
O
O
ví dụ 2: Mô phỏng quả trứng rơi từ trên cao xuống
Ví dụ 1: Tính tổng của 100 số tự nhiên đầu tiên liên tiếp
S = 1 + 2 + 3 + 4 + ... + 100
Nhận xét:
S = 0
S = S + 1
S = S + 2
S = S + 3


.....
S = S + 100
Việc tính S được lặp đi lặp lại 100 lần theo quy luật
Ssau = Strước+ i
với i tăng lần lượt từ 1 đến100
. . . . . . . . . . . . . . . . . . . .
4. Tính tổng và tích bằng câu lệnh lặp
Diễn tả thuật toán
B1: Bắt đầu
B2: S:=0; i:=1;
B3: Nếu i > 100 thì kết thúc
B4 : S:= S + i
i := i +1 quay lại B3.
Program tinhtong;
Uses crt;
Var S,i : Integer;
Begin
S:=0;
For i:=1 to 100 do S:=S +i;
Writeln(`Tong S=`,S);
Readln;
End.
Chương trình
Uses crt;
Var i,N : Integer; S : real;
BEGIN
Readln;
END.
S:=0;
FOR i:=1 to N do S := S+1/i;
Writeln(` Tong S =`,S:8:3);
Write(` Nhap vao gia tri cua N :`);readln(N);
Program Tinh_tong2;
Dựa vào đề bài hãy xác định:
Giá trị khởi tạo của S
Giá trị đầu, cuối của biến đếm i
Câu lệnh sẽ được lặp

S:=0;
For i:=1 to N do
S:= S + 1/i;
Lập chương trình tính tổng sau:
Ví dụ 2:
1! = 1
2! = 1 . 2
3! = 1 . 2 . 3
4! = 1. 2 . 3 . 4
Ví dụ 3: Tính N! (Tích N số tự nhiên đầu tiên)
N! = 1.2.3.4...N
GT = 1
GT = GT . 2
GT = GT . 3
GT = GT . 4
Hãy xác định:
Giá trị khởi tạo của GT
Giá trị đầu, cuối của biến đếm i
Câu lệnh sẽ được lặp

GT:=1;
For i:=1 to N do
GT:= GT*i;
Em hãy khai báo biến cho bài toán trên?
Em hãy viết câu lệnh nhập vào N?
Begin
Clrscr;
Write(`Nhap N= `); Readln(N);
Khởi tạo GT bằng bao nhiêu?
GT:=1;
Hãy viết câu lệnh lặp với các giá trị của biến đếm và câu lệnh được lặp.
For i:=1 to N do GT:=GT*i;
In ra kết quả?
Writeln(`Tich cua N so tu nhien =`,GT);
Readln;
End.

N:integer;
GT:longint;
Ghi nhớ!
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 hoạt động nào đó, thường là vớic ác dữ liệu khác nhau, cho đên skhi một điều kiện nào đó được thỏa mãn
Mọi ngôn ngữ lập trình đều có các câu lệnh lặp để thể hiện cấu trúc lặp
Ngôn ngữ Pascal thể hiện cấu trúc lặp với số lần cho trước bằng câu lệnh for ... do.
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Đỗ Đức Uý
Dung lượng: | Lượt tài: 2
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)