program raf105;
var a:array[1..3] of integer;
abc,i:integer;
begin
write('Введите число меньше тысячи: ');
readln(abc);
a[1]:=1000;
a[2]:=1000;
a[3]:=1000;
while abc<>0 do
begin
i:= i+1;
a[i]:= abc mod 10;
abc:= (abc-a[i]) div 10;
end;
if (a[1]<>a[2]) and (a[1]<>a[3]) and (a[1]<>1000)
then abc:= abc+1;
if (a[2]<>a[1]) and (a[2]<>a[3]) and (a[2]<>1000)
then abc:= abc+1;
if (a[3]<>a[1]) and (a[3]<>a[2]) and (a[3]<>1000)
then abc:= abc+1;
if abc=3 then abc:= abc-1;
writeln('Количество разных цифр: ',abc+1);
end.
Программа написана на языке PascalABC.NET