Nội dung của Bài thực hành 6: Sử dụng lệnh lặp While…Do dưới đây sẽ giúp các em hiểu câu lệnh lặp while...do trong chương trình Turbo Pascal có sẵn; rèn luyện kĩ năng về khai báo, sử dụng biến; biết về vai trò của việc kết hợp các cấu trúc điều khiển;... Mời các em cùng theo dõi nội dung chi tiết của bài thực hành.
Câu lệnh lặp với số lần chưa biết trước While…Do:
Cú pháp: While <điều kiện>Do ;
Trong đó:
Các bước thực hiện của câu lệnh lặp While…Do:
Gợi ý làm bài:
Ý tưởng:
Ta sử dụng biến Dem và câu lệnh lặp While…Do để nhập và cộng dần các số vào một biến kiểu số thực Tong cho đến khi nhập đủ n số.
Xác định bài toán:
Thuật toán:
Hình 1. Sơ đồ khối mô tả thuật toán tính trung bình N số thực
Chương trình:
Program tinh_trung_binh;
Var N, Dem: integer;
X, TB: real;
Begin
Clrscr;
Dem:=0;
TB:=0;
Writeln(‘Nhap cac so can tinh N =’);
Readln(N);
While Dem < N do
Begin
Dem:= Dem + 1;
Writeln(‘Nhap so thu’, Dem,’=’);
Readln(x);
Tb:= TB + x;
End;
TB:=TB/n;
Witeln(‘Trung binh của’,N,’so là =’, TB:10:3);
Readln;
End.
Gợi ý làm bài:
Ý tưởng: Kiểm tra lần lượt N có chia hết cho các số tự nhiên \(2 \leq i \leq N-1\) hay không. Kiểm tra tính chia hết bằng phép chia lấy phần dư (mod).
Xác định bài toán:
Xây dựng thuật toán:
Chương trình:
Uses Crt;
Var N, i:integer;
Begin
clrscr;
write('Nhap vao mot so nguyen: ');
readln(N);
If N<=1 then
writeln('N khong la so nguyen to')
else
begin
i:=2;
while (N mod i<>0) do
i:=i+1;
if i=N then
writeln(N,' la so nguyen to!')
else
writeln(N,' khong phai la so nguyen to!');
end;
readln;
end.
Sau khi học xong Bài thực hành 6: Sử dụng lệnh lặp While…Do, các em cần ghi nhớ về các nội dung:
1. Các hoạt động lặp với số lần chưa biết trước phụ thuộc vào một điều kiện cụ thể và chỉ dừng lại khi điều kiện đó sai.
2. Câu lệnh lặp với số lần lặp chưa biết trước:
a) Trường hợp câu lênh đơn:
WHILE < điều kiện > DO < câu lệnh >;
b) Trường hợp câu lệnh ghép:
WHILE <điều kiện> DO
Begin
câu lệnh 1;
câu lệnh 2; …
End;
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 thực hành 6 cực hay có đáp án và lời giải chi tiết.
Vòng lặp while ..do là vòng lặp:
Đoạn lệnh sau, mỗi lần lặp giá trị của biến i trong câu lệnh sau thay đổi như thế nào?
While i<=10 do i:=i+3;
Câu 3- 5: 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é!
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
Vòng lặp while ..do là vòng lặp:
Đoạn lệnh sau, mỗi lần lặp giá trị của biến i trong câu lệnh sau thay đổi như thế nào?
While i<=10 do i:=i+3;
Câu lệnh lặp while…do có dạng đúng là:
Đoạn lệnh sau đúng, sai như thế nào?
While n<=0 do;
Write(‘Nhap lai n:’);
Readn (n);
Tìm hiểu đoạn lệnh sau và cho biết với đoạn lệnh đó chương trình thực hiện bao nhiêu vòng lặp?
Var a:integer;
Begin
a:=5;
While a< 6 do writeln(‘A’);
End.
Họ và tên
Tiêu đề câu hỏi
Nội dung câu hỏi
Viết chương trình tính tích của n số tự nhiên đầu tiên khác 0 sao cho tích nhỏ nhất lớn hơn 100? In ra màn hình n, tích?
Các bạn giúp mình làm bài này với.
Câu trả lời của bạn
Program baitap1;
Uses crt;
Var S,n : integer;
Begin
Clrscr;
n:=1;
S:=1;
while S<100 do
begin
n:=n+1;
S:= S*n;
end;
writeln(' Tong la: ',S);
write('n la: ',n);
End.
sử dụng lệnh while ... do
viết ct nhập vào số tự nhiên n sau đó in ra n có bao nhiêu số !!!
Câu trả lời của bạn
program bai1;
var n,du,d:longint;
begin
write('N= ');readln(n);
d:=0;
while n<>0 do
begin
du:=n mod 10;
d:=d+1;
n:=n div 10;
end;
writeln('So chu so la ',d);
readln
end.
sử dụng câu lệnh while ... do
viết ct nhập vào số tự nhiên n sau đó in ra n có bao nhiêu chữ số lẻ!!!!
Câu trả lời của bạn
program bai1;
var n,du,d:longint;
begin
write('N= ');readln(n);
d:=0;
while n>0 do
begin
du:=n mod 10;
if (du mod 2<>0) then d:=d+1;
n:=n div 10;
end;
writeln('So chu so le la ',d);
readln
end.
Sử dụng câu lệnh lặp do while-do để tính tích các số tự nhiên từ 1 đến 100.
Câu trả lời của bạn
câm mồm vào
sủa nhiều quá
ngáo đá hả
Program Tinhsotunhien;
Uses Crt;
Var i, Tich: longint;
Begin
Clrscr;
Tich:=1; i:=1;
While Tich <= 100 do
Begin
Tich:=Tich*i;
End;
Writeln('Ket qua',Tich);
Readln;
End.
Tính tích \(\dfrac{1}{2}.\dfrac{1}{4}.\dfrac{1}{6}....\dfrac{1}{n}\)
(Dùng lệnh While Do)
Câu trả lời của bạn
program bai1;
var s,i,n:longint;
begin
write('N= '):readln(n);
i:=0;
s:=1;
while i<=n do
begin
if i mod 2=0 then s:=s*1/i;
i:=i+1;
end;
write('S= ',s);
readln
end.
Viết chương trình tìm ước chung lớn nhất của 3 số nguyên a,b, c nhập từ bàn phím
Câu trả lời của bạn
end.
Viết chương trình tính tổng của số tự nhiên từ 10-50 sử dụng lệnh while do
Câu trả lời của bạn
program Tong;
uses crt;
var i, n, S: integer;
begin
clrscr;
S:=0; i:=10;
while i<=50 do begin S:=S+i; i:=i+1 end;
writeln('Tong so cac so tu nhien tu 10 den 50 la', S);
readln
end.
Viết chương trình tìm số nhỏ nhất lớn hơn 100, biết S= 1+2+3+...+n và khi đó cho biết n bằng bao nhiêu ?
Câu trả lời của bạn
program Tim_so_nho_nhat_lon_hon_100;
uses crt;
var S,n: integer;
begin
S:=0; n:=0;
while S<=100 do
begin n:=n+1; S:=S+n end;
writeln('So n nho nhat de tong > 100 la ',n);
writeln('Tong dau tien > 100 la ',S);
readln
end.
viết chương trình nhập vào số e tính tổng ngịch đảo của các số từ 1 đến n ( dừng khi 1/n<e)
Câu trả lời của bạn
program bai1;
var e,s,i:longint;
begin
write('E= ');readln(e);
write('n= ');readln(n);
s:=0;
while 1/n <e do
begin
for i:=1 to n do
s:=s+1/i;
end;
writeln('Tong la ',s);
readln
end.
viết chương trình nhập vào số n in ra màn hình số đảo ngược của n
Câu trả lời của bạn
var s,b:string;
n,k:longint;
code:word;
i:byte;
begin
readln (n);
str (n, s);
b:='';
for i
:= length (s) downto 1
do b:=b+s[i];
val(b,k,code);
write(k);
readln;
end.
Mình nghĩ bạn làm thế này sẽ tối ưu hơn
var
s:string;
n:longint;
begin
write('Nhap gia tri n: ');readln(n);
str(n,s);
for i:=length(s) to 1 do
val(s,n);
writeln('so dao nguoc la: ',n);
readln;
end.
program bai1;
var n,t:longint;
s:real;
begin
write('N= ');readln(n);
t:=n;
while n<>0 do
begin
S:=S*10+n mod 10;
n:=n div 10;
end;
If S=t then writeln('so doi xung')
else writeln('khong doi xung');
readln;
end.
Viết chương trình pascal tính tổng S=1+2+3+...+N?(bằng câu lệnh while...do:)
Câu trả lời của bạn
Var S,N,i:Integer;
begin
Write('Nhap N='); Readln(N);
S:=0;
i:=0;
While S<=N do
begin
i:=i+1;
S:=S+i;
End;
Writeln('S=',S);
Readln
End.
Viết chương trình pascal nhập số tự nhiên N sau đó in ra màn hình tổng các chữ số là số nguyên tố của số N
Mọi người giuups mk vs mk cảm ơn nhiều
Câu trả lời của bạn
Sử dụng lênh while ...do... nha mọi người
Viết chương trình tính tính tổng các số tự nhiên từ 100 đến 200 (sử dụng lệnh while-do)
Câu trả lời của bạn
Program tinhtong;
var: i: longint;
Begin
i:=100
While i<=200 do
Begin i:=i+1
s:=s+i;
End;
readln;
end.
Viết chương trình tính tổng sau S=1+2+3+... đến khi tổng lớn hơn hoặc bằng 100, dùng câu lệnh While..do.
Câu trả lời của bạn
Program Tinh_tong;
Uses Crt;
Var i, S: Integer;
Begin
Clrscr;
S:=0; i:=1;
While S>=100 do
Begin
S:=S+i;
i:=i+1;
End;
Writeln('Ket qua',S);
Readln;
End.
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 *