zadach20.PAS

{* Задача 23 *}

Unit ZADACH20;
Interface
Implementation
Begin
 writeln('Вычислить сумму тех чисел из заданного отрезка [a;b] (a и b - натуральные ), в запись которых входит цифра k. ');
End.

Program p1(input, output);

Uses zadach20.pas; {* Эту строку можно удалить *}
Var {* В работе нам потребуются переменные: *}
  a               : integer;
  b               : integer;
  k               : integer;
Function summ(a : integer);
b               : integer);
k               : integer);
Var {* Необходимые переменные *}
  i               : integer;
  s               : integer;
Function in_k(c : integer);
k               : integer);
Var {* Необходимые переменные *}
  p : integer;
Begin
  While c0 Do
  Begin
    p := c;
    c := c Mod 10;
    If c = k Then
    Begin
      in_k := true;
      Goto 99
    End;
    Else c := p Div 10;
  End;
  in_k := false;
  99:
End;
Begin
  s := 0;
  For i := a To b Do {* Цикл для i => [a .. b] *}
    If in_k(i, k) Then
      s := s + i;
  summ := s;
End;
Begin
  write('interval>');
  readln(a, b);
  write('k>');
  readln(k);
  write(summ(a, b, k));
  readln; {* Приостановка программы. Ожидание Enter *}
  readln; {* Приостановка программы. Ожидание Enter *}
End.