我擦,楼主那个 6 的倍数 1110 也可以吧,所以说楼主的数据有问题 19 也是一样也 11001
正确标程
var a:array[1..1000] of longint;
l,i,n:longint;
function t(l:longint):boolean;
var i:integer;
begin
for i:=1 to l do
if (a[i]<>0)and(a[i]<>1) then exit(false);
exit(true);
end;
begin
readln(n);
while n<>0 do
begin
fillchar(a,sizeof(a),0);
a[1]:=n;l:=1;
while not(t(l)) do
begin
a[1]:=a[1]+n;
for i:=1 to l do
if a[i]>9 then
begin
a[i+1]:=a[i+1]+a[i] div 10;
a[i]:=a[i] mod 10;
end;
if a[l+1]>0 then inc(l);
//if l>100 then break;
end;
for i:=l downto 1 do write(a[i]);writeln;
readln(n);
end;
end.