Прошу подсказать в программе, у меня есть свой код, но он не правильный точно. Язык pascal
Программа вводит натуральные числа a и b и выводит на экран все натуральные числа на отрезке [a, b] делящиеся на каждую из своих цифр
var
a, b, k, t, m, i, p, d, j: integer;
begin
write('Enter a and b: ');
readln(a, b); //10 20
t := 0;
repeat
k := a + 1;
j := k;
t := k;
while j <> 0 do
begin
p := j mod 10;
d := d + 1;
j := j div 10;
// стало 0
end;
for i := 1 to d do //по количеству знаков делает
begin
if not (k / t mod 10 = 1 or 2 or 3 or 4 or 5 or 6 or 7 or 8 or 9)
then m := m - 1;
t := t div 10;
end;
if m > 0 then
writeln(k);
until a = b;
end.