Надеемся, что решение задачи понятно из комментариев. Сначала в программе задается трехначное число и проверяемая цифра, после чего в переменную C1 помещается число сотен, используя целочисленное деление заданного числа на 100. Переменная C2 содержит число десятков в числе. Покажем это на примере. Пусть Cifra=347, тогда C1=3 (347 div 100 = 3). Отсюда C2=4 ( (347-3*100) div 10 = (347-300) div 10 = 47 div 10 = 4). Понятно, что C3=7 ( 347 mod 10 = 7).

Program Problem2; 
Var
  Chislo,Cifra:Byte;
  C1,C2,C3:Byte;
Begin
  Write('Задайте трехзначное натуральное число: ');
  ReadLn(Chislo);
  Write('Проверяемая цифра: ');
  ReadLn(Cifra);
  C1:=Chislo div 100; {Число сотен}
  C2:=(Chislo-C1*100) div 10; {Число десятков}
  C3:=Chislo mod 10; {Число единиц}
  If (Cifra=C1) or (Cifra=C2) or (Cifra=C3) Then
                WriteLn('Такая цифра в числе есть')
  Else WriteLn('Такой цифры в числе нет');
End.
Текст этой программы можно взять здесь.