Надеемся, что решение задачи понятно из комментариев. Сначала в программе задается трехначное число и проверяемая цифра, после чего в переменную 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.