判断armstrong number pascal

来源:百度知道 编辑:UC知道 时间:2024/06/25 08:51:35
用Pascal编一个程序用来判断一个数是否为armstrong number
十分感谢!

const
a:array[1..10] of longint=(1,10,100,1000,10000,100000,1000000,10000000,100000000,1000000000);
var
n,all,now:longint;
num:array[1..10] of integer;
i,j,l,c,s:integer;
begin
readln(n);
s:=n;
while n>0 do
begin
inc(i);
num[i]:=n mod 10;
n:=n div 10;
end;

for j:=1 to i do
begin
now:=1;
for c:=1 to i do
now:=now*num[j];
inc(all,now);
end;
if all=s then writeln('Yes')
else writeln('No');
end.
范围是longint。输入n,yes表示是,no表示不是。