pascal 将一个合数各位数字相加=如果将他分解成质因数相乘,把这些质因数各位数字相加其和

500以内
2024-12-25 14:25:08
推荐回答(1个)
回答1:

如果题目想表达的意思是:
找500以内 的 合数 满足 其各位数字相加 和 其质因数全部相加 相等的数
那么程序代码如下:
var
i,j,k,a,b:integer;
begin
for i:=4 to 500 do begin
for j:=2 to i do if i mod j=0 then break;
if i div j=1 then continue;
a:=0;b:=0;
j:=i;
while j>0 do begin
inc(a,j mod 10);
j:=j div 10;
end;
k:=2;
j:=i;
while j>1 do begin
while j mod k>0 do inc(k);
if j mod k=0 then begin
inc(b,k);
j:=j div k;
end;
end;
if a=b then writeln(i);
end;
end.