Nội dung của Bài 7: Câu lệnh lặp dưới đây sẽ giúp các em biết được nhu cầu cần có cấu trúc lặp trong ngôn ngữ lập trình, hiểu hoạt động của câu lệnh lặp với số lần biết trước for...do trong Pascal, viết đúng lệnh for...do trong một số tình huống đơn giản, hiểu lệnh ghép trong Pascal,... Mời các em cùng theo dõi bài học để tìm hiểu chi tiết.
Trong cuộc sống hằng ngày, nhiều hoạt động được thực hiện lặp đi lặp lại nhiều lần.
Ví dụ:
Ví dụ số lần lặp biết trước: Các ngày trong tuần các em đều lặp đi lặp lại hoạt động buổi sáng đến trường và buổi trưa trở về nhà.
Ví dụ số lần lặp không biết trước: Trong một trận cầu lông các em lặp đi lặp lại công việc đánh cầu cho đến khi kết thúc trận cầu.
Tóm lại: Khi viết chương trình máy tính, trong nhiều trường hợp ta cũng phải viết lặp lại nhiều câu lệnh chỉ để thực hiện 1 phép tính nhất định.
Ví dụ 1: Giả sử cần vẽ 3 hình vuông có cạnh 1 đơn vị. 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ị.
Hình 1. Ba hình vuông
Thuật toán:
Bài toán vẽ một hình vuông:
Hình 2. Các bước vẽ hình vuông
Thuật toán mô tả các bước để vẽ hình vuông:
Trong đó, biến k được sử dụng như là biến đếm để ghi lại số cạnh đã vẽ được.
Ví dụ 2: Tính tổng 100 số tự nhiên đầu tiên S=1+2+…+100
Thuật toán:
KẾT LUẬN:
Cú pháp:
For < Biến đếm > := < Giá trị đầu > to < Giá trị cuối > do < Câu lệnh >;
Trong đó:
Lưu ý:
Hoạt động của vòng lặp:
Ví dụ 3: Chương trình sau sẽ in ra màn hình thứ tự lần lặp.
Chương trình mẫu:
Program ViDu3;
Var i: Integer;
Begin
For i:=1 to 10 do
Writeln ('Day la lan lap thu ',i);
Readln;
End.
Ví dụ 4: In một chữ "O" trên màn hình.
Chương trình mẫu:
Program ViDu4;
Uses crt;
Var i:Integer;
Begin
Clrscr;
For i:=1 to 20 do
Begin
Writeln('O'); Delay(100);
End;
Readln;
End.
Hình 3. Câu lệnh đơn và câu lệnh ghép
Câu lệnh đơn giản writeln('O') và delay(100) được đặt trong hai từ khóa begin và end để tạo thành một câu lệnh ghép trong Pascal.
Ví dụ 5: Chương trình sau đây sẽ tính tổng N số tự nhiên đầu tiên với N nhập từ bàn phím.
Chương trình mẫu:
Program tinh_tong;
Var N,i: Integer;
S: longint;
Begin
Clrscr;
Writeln(‘Nhap N =’);
Readln(N);
S:=0;
For i:=1 to N do
S:=S+i;
Witeln(‘tong la:’,S);
Readln;
End.
Ví dụ 6: Ta kí hiệu N! là tích N số tự nhiên đầu tiên: N! = 1.2.3…N.
Chương trình mẫu:
Program tinh_giai_thua;
Var N,i: Integer;
P: Longint;
Begin
Clrscr;
Write(‘Nhap N =’);
readln(N);
P:=1;
For i:=1 to N do
P:=P*i;
Wirteln(N,’!=’,P);
Readln;
End.
Sau khi học xong Bài 7: Câu lệnh lặp, các em cần ghi nhớ:
Các em có thể hệ thống lại nội dung kiến thức đã học được thông qua bài kiểm tra Trắc nghiệm Tin học 8 Bài 7 cực hay có đáp án và lời giải chi tiết.
Chọn cú pháp đúng nhất về câu lệnh lặp:
Hoạt động nào sau đây lặp với số lần lặp biết trước?
Em hiểu lệnh lặp theo nghĩa nào dưới đây?
Câu 4- 10: Mời các em đăng nhập xem tiếp nội dung và thi thử Online để củng cố kiến thức về bài học này nhé!
Các em có thể xem thêm phần hướng dẫn Giải bài tập Tin học 8 Bài 7để giúp các em nắm vững bài học và các phương pháp giải bài tập.
Bài tập 1 trang 60 SGK Tin học 8
Bài tập 2 trang 60 SGK Tin học 8
Bài tập 3 trang 60 SGK Tin học 8
Bài tập 4 trang 61 SGK Tin học 8
Bài tập 5 trang 61 SGK Tin học 8
Bài tập 6 trang 61 SGK Tin học 8
Trong quá trình học tập nếu có thắc mắc hay cần trợ giúp gì thì các em hãy comment ở mục Hỏi đáp, Cộng đồng Tin học DapAnHay sẽ hỗ trợ cho các em một cách nhanh chóng!
Chúc các em học tập tốt và luôn đạt thành tích cao trong học tập!
-- Mod Tin Học 8 DapAnHay
Chọn cú pháp đúng nhất về câu lệnh lặp:
Hoạt động nào sau đây lặp với số lần lặp biết trước?
Em hiểu lệnh lặp theo nghĩa nào dưới đây?
Khi nào thì câu lệnh For..to..do kết thúc?
Cho các câu lệnh sau hãy chỉ ra câu lệnh đúng?
Với ngôn ngữ lập trình Passcal câu lệnh lặp for i:=1 to 10 do x:=x+1; thì biến đếm i phải được khai báo là kiểu dữ liệu nào?
Trong câu lệnh lặp với số lần biết trước (For – do), được thực hiện mấy lần?
Xác định số vòng lặp cho bài toán: tính tổng các số nguyên từ 1 đến 100
Kết quả của < điều kiện > trong câu lệnh sẽ có giá trị là gì?
Sau khi thực hiện đoạn chương trình sau:
S:=0; For i:=1 to 5 do S:=S+i;
Giá trị của biến S bằng bao nhiêu?
Cho một vài ví dụ về hoạt động được thực hiện lặp lại trong cuộc sống hàng ngày.
Hãy cho biết tác dụng của câu lệnh lặp với số lần biết trước.
Khi thực hiện các hoạt động lặp, chương trình kiểm tra một điều kiện. Với lệnh lặp:
for < biến đếm > := < giá trị đầu > to < giá trị cuối > do < câu lệnh >;
của Pascal, điều kiện cần phải kiểm tra là gì?
Sau khi thực hiện đoạn chương trình sau, giá trị của biến j bằng bao nhiêu?
j:=0;
for i:=0 to 5 do j:=j+2
Các câu lệnh Pascal có hợp lệ không, vì sao?
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');
e) var x: real; for x:=1 to 10 do writeln('A');
Hãy mô tả thuật toán để tính tổng sau đây:
\(A=\frac{1}{1.3}+\frac{1}{2.4}+\frac{1}{3.5}+...+\frac{1}{n.(n+2)}\)
Họ và tên
Tiêu đề câu hỏi
Nội dung câu hỏi
Viết chương trình fascal tính:
a. 1+2+3+4+...+n
Câu trả lời của bạn
Program tinh_tong;
Uses crt;
Var s:longint;
n,i:integer;
Begin
clrscr;
write('nhap vào số n: ');readln(n);
for i:=1 to n do s:=s+i;
write('tong tren co ket qua la: 's);
readln;
End.
Viết chương trình fascal tính:
a. 1+2+3+4+...+n
Câu trả lời của bạn
Program tinh_tong;
Uses crt;
Var s:longint;
n,i:integer;
Begin
clrscr;
write('nhap vào số n: ');readln(n);
for i:=1 to n do s:=s+i;
write('tong tren co ket qua la: 's);
readln;
End.
Viết chương trình fascal tính:
a. 1+2+3+4+...+n
Câu trả lời của bạn
Program tinh_tong;
Uses crt;
Var s:longint;
n,i:integer;
Begin
clrscr;
write('nhap vào số n: ');readln(n);
for i:=1 to n do s:=s+i;
write('tong tren co ket qua la: 's);
readln;
End.
Viết chương trình fascal tính:
a. 1+2+3+4+...+n
Câu trả lời của bạn
Program tinh_tong;
Uses crt;
Var s:longint;
n,i:integer;
Begin
clrscr;
write('nhap vào số n: ');readln(n);
for i:=1 to n do s:=s+i;
write('tong tren co ket qua la: 's);
readln;
End.
Viết chương trình fascal tính:
a. 1+2+3+4+...+n
Câu trả lời của bạn
Program tinh_tong;
Uses crt;
Var s:longint;
n,i:integer;
Begin
clrscr;
write('nhap vào số n: ');readln(n);
for i:=1 to n do s:=s+i;
write('tong tren co ket qua la: 's);
readln;
End.
uses crt;
Var
i,n:integer; a:real;
begin
clrscr
Write('Nhap n:');
Readln(n);
a:=0;
For i:=1 to n do
a:=a+i
Writeln('a=',a:3:1);
Readln;
End.
Viết chương trình fascal tính:
a. 1+2+3+4+...+n
Câu trả lời của bạn
Program tinh_tong;
Uses crt;
Var s:longint;
n,i:integer;
Begin
clrscr;
write('nhap vào số n: ');readln(n);
for i:=1 to n do s:=s+i;
write('tong tren co ket qua la: 's);
readln;
End.
uses crt;
Var
i,n:integer; a:real;
begin
clrscr
Write('Nhap n:');
Readln(n);
a:=0;
For i:=1 to n do
a:=a+i
Writeln('a=',a:3:1);
Readln;
End.
Viết chương trình xác định số lần xuất hiện của các số nguyên chẵn và tính tổng của các số nguyên đó trong dãy n số nguyên nhập từ bàn phím
Câu trả lời của bạn
uses crt;
var n,i,t,dem:longint;
a:array[1..100]of longint;
begin
clrscr;
write('nhap n= ');readln(n);
for i:=1 to n do
begin
readln(a[i]);
if a[i] mod 2=0 then
begin
t:=t+a[i];
inc(dem);
end;
write('Xuat Hien: ',j,' ','Tong: ',dem);
readln
end.
cho mik 1 like nha bn
var a:array[1..100] of integer;
n,i,chan,s:integer;
begin
write('nhap n');readln(n);
for i:=1 to n do
begin
write('[',i,']');
readln(a[i]);
end;
for i:=1 to n do
if a[i] mod 2=0 then
begin
s:=s+a[i];
chan:=chan+1;
end;
writeln('so lan xuat hien',chan);
writeln('tong',s);
readln;
end.
var a:array[1..100] of integer;
n,i,chan,s:integer;
begin
write('nhap n');readln(n);
for i:=1 to n do
begin
write('[',i,']');
readln(a[i]);
end;
for i:=1 to n do
if a[i] mod 2=0 then
begin
s:=s+a[i];
chan:=chan+1;
end;
writeln('so lan xuat hien',chan);
writeln('tong',s);
readln;
end.
Viết chương trình fascal tính:
a. 1+2+3+4+...+n
Câu trả lời của bạn
Program tinh_tong;
Uses crt;
Var s:longint;
n,i:integer;
Begin
clrscr;
write('nhap vào số n: ');readln(n);
for i:=1 to n do s:=s+i;
write('tong tren co ket qua la: 's);
readln;
End.
uses crt;
Var
i,n:integer; a:real;
begin
clrscr
Write('Nhap n:');
Readln(n);
a:=0;
For i:=1 to n do
a:=a+i
Writeln('a=',a:3:1);
Readln;
End.
Viết chương trình fascal tính:
a. 1+2+3+4+...+n
Câu trả lời của bạn
.
bạn spawn hơi nhiều!!!
Viết chương trình để người dùng nhập các số khác 0 rồi tính và in ra màn hình tổng các nghịch đảo của các số này. Chương trình kết thúc khi người dùng nhập số 0 đầu tiên.
Giúp em với!!!
Câu trả lời của bạn
0 Bình luận
Để lại bình luận
Địa chỉ email của hạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *