Violet
Baigiang

Tìm kiếm theo tiêu đề

Tin tức cộng đồng

5 điều đơn giản cha mẹ nên làm mỗi ngày để con hạnh phúc hơn

Tìm kiếm hạnh phúc là một nhu cầu lớn và xuất hiện xuyên suốt cuộc đời mỗi con người. Tác giả người Mỹ Stephanie Harrison đã dành ra hơn 10 năm để nghiên cứu về cảm nhận hạnh phúc, bà đã hệ thống các kiến thức ấy trong cuốn New Happy. Bà Harrison khẳng định có những thói quen đơn...
Xem tiếp

Tin tức thư viện

Chức năng Dừng xem quảng cáo trên violet.vn

12087057 Kính chào các thầy, cô! Hiện tại, kinh phí duy trì hệ thống dựa chủ yếu vào việc đặt quảng cáo trên hệ thống. Tuy nhiên, đôi khi có gây một số trở ngại đối với thầy, cô khi truy cập. Vì vậy, để thuận tiện trong việc sử dụng thư viện hệ thống đã cung cấp chức năng...
Xem tiếp

Hỗ trợ kĩ thuật

  • (024) 62 930 536
  • 0919 124 899
  • hotro@violet.vn

Liên hệ quảng cáo

  • (024) 66 745 632
  • 096 181 2005
  • contact@bachkim.vn

Tìm kiếm Bài giảng

Bài 8. Lặp với số lần chưa biết trước

Wait
  • Begin_button
  • Prev_button
  • Play_button
  • Stop_button
  • Next_button
  • End_button
  • 0 / 0
  • Loading_status
Tham khảo cùng nội dung: Bài giảng, Giáo án, E-learning, Bài mẫu, Sách giáo khoa, ...
Nhấn vào đây để tải về
Báo tài liệu có sai sót
Nhắn tin cho tác giả
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Hoàng Thị Vân
Ngày gửi: 08h:35' 25-02-2023
Dung lượng: 1'010.4 KB
Số lượt tải: 117
Số lượt thích: 0 người
KIỂM TRA BÀI CŨ
Hãy
cú pháp
lặp:to…do.
For…to…do?
Khinêu
sử dụng
lệnhcâu
lặplệnh
For…
Số lần

lặp sẽ được tính như thế nào?

Cú pháp:
For := to do
;
Số lần lặp = - +1

VD1: Viết chương trình tính
tổng các số tự nhiên từ 1
đến 100
S = 1 + 2 + 3 + . . .+100
Theo em khi sử dụng lệnh
Lặp 100 lần
lặp để viết chương trình trên
thì phép cộng được lặp lại
mấy lần?

Lặp với số lần biết trước, sử
dụng câu lệnh lặp For…to…do
để viết chương trình

VD2: Viết chương trình tính
tổng n số tự nhiên (Tn) đầu
tiên để ta nhận được tổng Tn
nhỏ nhất lớn hơn 1000?
Theo em phép cộng trên có
Không thể biết
biết trước số lần lặp không?
trướclệnh
số lần
lặp
Có sử dụng
lặp for…
vàđược
không
sử dụng
to…do
không?

lệnh For … to…
do được.

Lặp với số lần chưa biết
trước, sử dụng câu lệnh gì để
viết chương trình?

Tiết
47+48

BÀI 8

Lặp với số lần chưa biết trước

Các hoạt động lặp với
1
số lần chưa biết trước

NỘI
DUNG

Ví dụ về lệnh lặp với
2 số lần chưa biết trước

1. Các hoạt động lặp với số lần chưa biết trước
 Nam làm bài tập cho đến khi làm xong.
 Cô ấy phải đi bộ như vậy cho đến khi về tới nhà.
 Tôi phải nhập dữ liệu vào máy tính cho đến
khi nhập xong.

Các em hãy cho thêm những
ví dụ về hoạt động lặp với số
lần chưa biết trước?

1. Các hoạt động lặp với số lần chưa biết trước
Ví dụ 1:

Một ngày, Long quyết định cứ 10 phút gọi điện
một lần cho Trang cho đến khi nào có người nhấc
máy thì thôi.
Hoạt
độngđộng
lặp: Gọi
Hoạt
lặpđiện
là hoạt
Sốđộng
lầnhoạt
lặp
đã
được
biết
Kết
thúc
động
lặp:
gì ? Khi nào thì
trước
chưa?
Cókết
người
nhấc
máy
thì lặp?
thúc
hoạt
động
thôi.

1. Các hoạt động lặp với số lần chưa biết trước
Ví dụ 2:

Nếu cộng lần lượt n số tự nhiên đầu tiên (n=1,2,3,…).
T =1
Ta sẽ được kết quả:
1

T2 = 1 + 2
T3 = 1 + 2 + 3

… tăng dần

Điều kiện: Khi tổng Tn nhỏ
nhất
lớn
hơn
Điều
kiện
như
thế1000
nào thì kết
thúc
hoạt
động
lặp
kết thúc
hoạt
động
lặp?

1. Các hoạt động lặp với số lần chưa biết trước
Phân tích bài toán:
T0:=0; n:=0;
n

Tổng Tn

1

T1 = 1
T2 = 1 + 2
T3 = 1 + 2 + 3


2
3

?

Tn = 1 + 2 + 3 + … +?
(Sao cho Tn nhỏ nhất
lớn hơn 1000)

Điều kiện Tn ≤ 1000
Đúng
Đúng
Đúng

Sai, kết thúc việc tính
tổng

1. Các hoạt động lặp với số lần chưa biết trước
Kí hiệu S là tổng cần tìm
Böôùc 1:

S  0, n  0.

Böôùc 2:

Nếu S≤1000, n  n+1; Ngược lại, chuyển tới b4.
Böôùc 3: S  S + n và quay lại bước 2.
Böôùc 4: In kết quả: S và n là số tự nhiên nhỏ nhất sao
cho S>1000. Kết thúc thuật toán.
Các hoạt động lặp với số lần
Sai
S1000?
Việc
lặp
lại
một
nhóm
hoạt
động
với
số
lần
chưa
* Cóchưa
thểbiết
diễn
tả bài
trên
trước
phụtoán
thuộc
vào
bằng
sơgìđồ
như
sau:
xác
định
trước
phụlạithuộc
vào một điều kiệnĐúng
cụ thể
cái

chỉ dừng
khi nào?
được thỏa mãn và chỉ dừng lại khi điềunkiện
 n+1; không
S  S+n;
thỏa mãn

1. Các hoạt động lặp với số lần chưa biết trước:

S1000?

Đúng
n  n+1;
S  S+n;

Sai

Điều kiện
TQ

Sai

Đúng

Câu lệnh

Để chỉ dẫn máy tính thực hiện các hoạt động lặp
trên, ta có thể sử dụng câu lệnh có dạng: Lặp với số
lần chưa biết trước

2. Ví dụ về lệnh lặp với số lần chưa biết trước
Cú pháp:
While <điều kiện> do ;

while

Điều kiện

do
Câu lệnh

Trong đó
 While, do: là các từ khóa.
 Điều kiện: thường là một phép so sánh.
 Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh
ghép.

2. Ví dụ về lệnh lặp với số lần chưa biết trước

Quan sát sơ đồ khối,
hãy cho biết cách
thực hiện câu lệnh
lặp?

Bước 1 : Kiểm tra điều kiện.
Bước 2 : - Nếu điều kiện sai, câu lệnh sẽ bị bỏ qua
và việc thực hiện lệnh lặp kết thúc.
- Nếu điều kiện đúng, thực hiện câu lệnh
và quay lại bước 1.
Chừng nào điều kiện còn đúng thì câu lệnh còn thực hiện.

2. Ví dụ về lệnh lặp với số lần chưa biết trước

VD 4: Dùng câu lệnh lặp While … do để viết chương trình thể hiện
thuật toán trong Ví dụ 2 (Sgk)
var S,n: integer;
Begin
S:=0; n:=0;
Câu lệnh ghép
while S<=1000 do
begin
n:=n+1;
S:=S+n ;
end;
write('Tong S= ',S,' va ',n,' la so tu nhien nho nhat sao cho
S>1000');
Readln;
End.



Tong S= 1035 va 45 la so tu nhien nho nhat sao cho S>1000

Thực Hành
Viết chương trình tính tổng của N số tự
nhiên đầu tiên. (Sử dụng lệnh While…do)
S = 1 + 2 + 3 + ∙∙∙ + N

Thực Hành
Viết chương trình tính tổng của N số tự
nhiên đầu tiên. (Sử dụng lệnh While…do)
S = 1 + 2 + 3 + ∙∙∙ + N
Chương trình sử dụng lệnh For…to…do:
Var i,N:byte; S:integer;
Begin
S:=0;
Write('N=');readln(N);
for i:=1 to N do S:=S+i;
Writeln('S=', S);
readln
End.

Var i, N: byte;
S:integer;
Begin
i:=1;S:=0;
Write('N=');readln(N);
while i<=N do
begin
S:=S+i; i:=i+1;
end;
Writeln('S=', S);
Readln;
End.

Nhận xét : Qua ví dụ này cho thấy rằng chúng ta có thể sử
dụng câu lệnh while…do thay cho câu lệnh for…do.

“ Add your company slogan ”

LOGO
468x90
 
Gửi ý kiến