早教吧 育儿知识 作业答案 考试题库 百科 知识分享

一道非常简单的pascal问题,求用函数和过程一起来做。自然数a的因子指的是能整除a的所有数,但不含a本身。例如12的因子为1,2,3,4,6。若自然数a的因子之和为b,而且b的因子之和又等于a,则

题目详情
一道非常简单的pascal问题,求用函数和过程一起来做。
自然数a的因子指的是能整除a的所有数,但不含a本身。例如12的因子为1,2,3,4,6。若自然数a的因子之和为b,而且b的因子之和又等于a,则称a,b为一对"亲和数",求出一对最小的亲和数(ab).
procedure和function都要做、
▼优质解答
答案和解析
用function做的求30000以内的所有"亲和数":
var n,i,j,k:longint;
function yinzihe(n:longint):longint;
var s,i,j:longint;
begin
s:=1; j:=trunc(sqrt(n));
for i:=2 to j-1 do
if n mod i=0 then inc(s,i+n div i);
if j*j=n then inc(s,j);
yinzihe:=s
end;
begin
for i:=2 to 30000 do
begin
j:=yinzihe(i);
if (yinzihe(j)=i)and(i
看了一道非常简单的pascal问题...的网友还看了以下: