Pues la idea que cuentas me parece buena. Yo creo que se haría con algo así:
Código Delphi
[-]FUNCTION DeBase10aBase35 (Numero: INTEGER): STRING;
VAR
Parte: INTEGER;
BEGIN
DeBase10aBase35 := '';
REPEAT
Parte := Numero MOD 35;
IF Parte < 9 THEN
DeBase10aBase35 := Char (Ord ('0') + Parte) + DeBase10aBase35
ELSE
DeBase10aBase35 := Char (Ord ('A') + (Parte - 10) + DeBase10aBase35;
Numero := Numero DIV 35;
UNTIL Numero = 0;
END;
Que conste que lo he hecho de memoria, sin comprobar si funciona o no, pero creo que se pilla la idea, ¿no?
Eso sí, ojo con la W...