Прошу подсказать в программе, у меня есть свой код, но он не правильный точно. Язык pascal Программа вводит натуральные числа a и b и выводит на экран все натуральные числа на отрезке [a, b] делящиеся на каждую из своих цифр va...

Прошу подсказать в программе, у меня есть свой код, но он не правильный точно. Язык 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.
Гость
Ответ(ы) на вопрос:
Гость
var a, b, i, j, c: integer; f:boolean; begin write('Enter a and b: '); readln(a, b); //10 20 for i:=a to b do  begin  f:=true;  j:=i;  while j <> 0 do    begin   c:=j mod 10;   if (c = 0)or(i mod c <> 0) then f:=false;   j := j div 10;   end;  if f then writeln(i);  end; end. Пример: Enter a and b: 10 20 11 12 15
Не нашли ответ?
Ответить на вопрос
Похожие вопросы