Hola.
Código Delphi
[-]
function MayorDigito(Numero: Integer): Integer;
var
Digito: Integer;
begin
Result:= -1;
while Numero > 0 do
begin
Digito:= Numero mod 10;
Numero:= Numero div 10;
if Digito > Result then
Result:= Digito;
end;
end;
Un saludo.
Edito: Veo que mientras hacía los últimos retoques del código, Caro ya había puesto una solución muy similar...