早教吧作业答案频道 -->其他-->
编写一个已知整数判断其是否是完全数的函数,并用该函数输出1000之内的所有完全数如果一个整数(>1)的各因子(包括1但不包括整数自身)之和等於该整数,称这样的整数为完全数,例如6=1+2+3所以6
题目详情
编写一个已知整数判断其是否是完全数的函数,并用该函数输出1000之内的所有完全数
如果一个整数(>1)的各因子(包括1但不包括整数自身)之和等於该整数,称这样的整数为完全数,例如6=1+2+3所以6是完全数
如果一个整数(>1)的各因子(包括1但不包括整数自身)之和等於该整数,称这样的整数为完全数,例如6=1+2+3所以6是完全数
▼优质解答
答案和解析
//完全数判断函数
function IsPerfectNum(i:LongInt):Boolean ;
var
sum,k:LongInt;
begin
sum:=1;
for k:= 2 to i div 2 do
if i mod k=0 then sum:=sum+k;
if i=sum then
Result:= true
else
Result:=false;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
idx: Integer;
begin
for idx := 2 to 1000 do
begin
if IsPerfectNum(idx) then
begin
Memo.Lines.Add(IntToStr(idx));
end;
end;
end;
输出:
6
28
496
function IsPerfectNum(i:LongInt):Boolean ;
var
sum,k:LongInt;
begin
sum:=1;
for k:= 2 to i div 2 do
if i mod k=0 then sum:=sum+k;
if i=sum then
Result:= true
else
Result:=false;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
idx: Integer;
begin
for idx := 2 to 1000 do
begin
if IsPerfectNum(idx) then
begin
Memo.Lines.Add(IntToStr(idx));
end;
end;
end;
输出:
6
28
496
看了 编写一个已知整数判断其是否是...的网友还看了以下:
用2、7、8、5和3个0写数.(1)最大的七位数是()(2)最小的七位数是()(3)只读一个0的最 2020-04-27 …
按要求写数.(1)10以内的所有奇数:()(2)20以内既是奇数又是5的倍数的数:()(3)15以 2020-05-13 …
已知数1/未知数=0.166667用什么公式算得出未知数1/未知数=0.166667 这个未知数用 2020-05-17 …
已知m、n为已知数,1-4x/(x+2)(x+5)=(m/x+5)(n/x+2),则m²+n²=( 2020-06-06 …
用0、0、0、5、5、5、5、5、这八个数按要求写数.1、只读两个零的八位数:2、三个零都读的八位 2020-06-12 …
丽丽从1来时连续写数,1,2,3,.,一直写下去,写到200多才停住.写完后,要数一数共写了多少个 2020-06-15 …
聪聪从1开始连续写数,1,2,3.一直写下去,写到200多个才停止.写完后,聪聪数一数自己一共写了 2020-06-15 …
李军按照一定的规律写数;+1,+3,-5,+7,+9,-11,+13等当他写完第152个数时,他不 2020-07-18 …
(1)若a:c=d:b,则d叫做第比例项(2)若x:y=y:x,则y是x和z的.(3)6是3和的比 2020-08-02 …
已知数1、已知数2,如何求未知数? 2020-12-28 …