• Прошу подсказать в программе, у меня есть свой код, но он не правильный точно. Язык 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.

Ответы 1

  • vara, b, i, j, c: integer;f:boolean;beginwrite('Enter a and b: ');readln(a, b); //10 20for 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 20111215
    • Автор:

      connor19
    • 6 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years