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

Bạn chưa đăng nhập. Vui lòng đăng nhập để hỏi bài
NGUYEN MINH

Câu 1: Tìm hiểu về công dung, cú pháp và quy trình hoạt động lệnh While trong Pascal

Câu 2: Sử dụng ngôn ngữ lập trình Pascal để giải quyết các bài toán sau:

A. Tìm giá trị nguyên dương nhỏ nhất để tổng S = 1+2+3+… > E với E là số nguyên được nhập vào từ bàn phím

B. Đếm xem số nguyên dương n được nhập vào từ bàn phím có bao nhiêu chữ số

C. Tính tổng các chữ số của số nguyên dương n được nhập vào từ bàn phím

D. Kiểm tra số nguyên dương n được nhập vào từ bàn phím có phải là số đối xứng hay không

E. Tìm tất cả các số đối xứng từ 1 đến n với n là số nguyên dương n được nhập vào từ bàn phím

Nguyễn Lê Phước Thịnh
22 tháng 3 2020 lúc 16:47

Câu 1:

*Công dụng: Dùng để thực hiện câu lệnh lặp với số lần chưa biết trước

*Cú pháp: While <điều kiện> do;

*Quy trình thực hiện:

-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à thực hiện lệnh lặp kết thúc. Nếu điều kiện đúng thì thực hiện câu lệnh và quay lại bước 1

Câu 2:

A:

uses crt;
var s,e,i:integer;
begin
clrscr;
write('e='); readln(e);
i:=1;
s:=1;
while s<e do
begin
i:=i+1;
s:=s+i;
end;
writeln('so nguyen duong nho nhat de tong s=1+2+3+4+...>',e,' la: ',s);
readln;
end.

B:

uses crt;
var n,dem,x:integer;
begin
clrscr;
write('n='); readln(n);
if n>0 then
begin
x:=n;
dem:=0;
while n>0 do
begin
n:=n div 10;
dem:=dem+1;
end;
writeln('so chu so trong ',x,' la: ',dem);
end
else writeln('vui long nhap so nguyen duong n');
readln;
end.

C:

uses crt;
var n,t,d,i,x:integer;
st:string;
a:array[1..100]of integer;
begin
clrscr;
write('n='); readln(n);
if n>0 then
begin
str(n,st);
d:=length(st);
t:=0;
for i:=1 to d do
begin
val(st[i],a[i],x);
t:=t+a[i];
end;
writeln('tong cac chu so cua ',n,' la: ',t);
end
else writeln('vui long nhap so nguyen duong n');
readln;
end.

D:

uses crt;
var n,d,kt,i:integer;
st:string;
begin
clrscr;
write('n='); readln(n);
if n>0 then
begin
str(n,st);
d:=length(st);
kt:=0;
for i:=1 to d do
if st[i]<>st[d-i+1] then kt:=1;
if kt=0 then writeln('day la so doi xung')
else writeln('day khong la so doi xung');
end
else writeln('vui long nhap so nguyen duong n');
readln;
end.

E:

uses crt;
var n,i,d,kt,j:integer;
st:string;
begin
clrscr;
write('n='); readln(n);
if n>0 then
begin
writeln('cac so doi xung trong khoang tu 1 toi ',n,' la: ');
for i:=1 to n do
begin
str(i,st);
d:=length(st);
kt:=0;
for j:=1 to d do
if st[j]<>st[d-j+1] then kt:=1;
if kt=0 then write(i:4);
end;
end
else writeln('vui long nhap so nguyen duong n');
readln;
end.

Khách vãng lai đã xóa
✟şin❖
23 tháng 3 2020 lúc 16:03

Đây

Câu 1:*Công dụng: Dùng để thực hiện câu lệnh lặp với số lần chưa biết trước

*Cú pháp: While <điều kiện> do;

*Quy trình thực hiện:

-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à thực hiện lệnh lặp kết thúc. Nếu điều kiện đúng thì thực hiện câu lệnh và quay lại bước 1

Câu 2:

A:

uses crt;
var s,e,i:integer;
begin
clrscr;
write('e='); readln(e);
i:=1;
s:=1;
while s<e do
begin
i:=i+1;
s:=s+i;
end;
writeln('so nguyen duong nho nhat de tong s=1+2+3+4+...>',e,' la: ',s);
readln;
end.

B:

uses crt;
var n,dem,x:integer;
begin
clrscr;
write('n='); readln(n);
if n>0 then
begin
x:=n;
dem:=0;
while n>0 do
begin
n:=n div 10;
dem:=dem+1;
end;
writeln('so chu so trong ',x,' la: ',dem);
end
else writeln('vui long nhap so nguyen duong n');
readln;
end.

C:

uses crt;
var n,t,d,i,x:integer;
st:string;
a:array[1..100]of integer;
begin
clrscr;
write('n='); readln(n);
if n>0 then
begin
str(n,st);
d:=length(st);
t:=0;
for i:=1 to d do
begin
val(st[i],a[i],x);
t:=t+a[i];
end;
writeln('tong cac chu so cua ',n,' la: ',t);
end
else writeln('vui long nhap so nguyen duong n');
readln;
end.

D:

uses crt;
var n,d,kt,i:integer;
st:string;
begin
clrscr;
write('n='); readln(n);
if n>0 then
begin
str(n,st);
d:=length(st);
kt:=0;
for i:=1 to d do
if st[i]<>st[d-i+1] then kt:=1;
if kt=0 then writeln('day la so doi xung')
else writeln('day khong la so doi xung');
end
else writeln('vui long nhap so nguyen duong n');
readln;
end.

E:

uses crt;
var n,i,d,kt,j:integer;
st:string;
begin
clrscr;
write('n='); readln(n);
if n>0 then
begin
writeln('cac so doi xung trong khoang tu 1 toi ',n,' la: ');
for i:=1 to n do
begin
str(i,st);
d:=length(st);
kt:=0;
for j:=1 to d do
if st[j]<>st[d-j+1] then kt:=1;
if kt=0 then write(i:4);
end;
end
else writeln('vui long nhap so nguyen duong n');
readln;
end

Khách vãng lai đã xóa

Các câu hỏi tương tự
Lâm Khả Doanh
Xem chi tiết
Bảo Trâm
Xem chi tiết
Bảo Trâm
Xem chi tiết
Nguyenthanh
Xem chi tiết
Thư Uyên
Xem chi tiết
Minh Đông
Xem chi tiết
nguyễn bảo nga
Xem chi tiết
Thúy Anh
Xem chi tiết
Lan Phương
Xem chi tiết