Var n, i, a, k: integer; f: boolean; begin readln(n); for i := 1 to n do begin a := i; f := true; while a > 0 do begin k := a mod 10; a := a div 10; if (k = 0) or (i mod k <> 0) then //если в числе есть 0, то считать что на 0 не делится, иначе замените = на <> f := False; end; if f then write(i, ' '); end; end.
n, i, a, k:
integer;
f: boolean;
begin
readln(n);
for i := 1 to n do
begin
a := i;
f := true;
while a > 0 do
begin
k := a mod 10;
a := a div 10;
if (k = 0) or (i mod k <> 0) then //если в числе есть 0, то считать что на 0 не делится, иначе замените = на <>
f := False;
end;
if f then
write(i, ' ');
end;
end.