Hallo,
ich habe genau das Problem, das ich mit Mathematica schon gelöst bekommen habe.
https://mathematica.stackexchange.co...l-from-integer
Doch jetzt brauche ich es in Delphi.
Wer kann mir bitte helfen?
Ich habe ein Problem im Nachmachen der Mathematica Funktion IntegerDigits[n,b,len].
es convertiert n in base b wie hier beschrieben:
http://delphi-kb.blogspot.co.at/2009...to-base-n.html
(Siehe unter:
https://reference.wolfram.com/langua...gerDigits.html)
Mein Ansatz ist:
Delphi-Quellcode:
(* Lösung von: Jacob Akkerboom siehe link oben
chR = CharacterRange["A", "Z"];
n = 26*26 + 26 + 1;
base = 26
numberOfIntegerDigits = Ceiling[Log[base, base - n (1 - base)] - 1];
numberInTuples = n - (base - base^numberOfIntegerDigits)/(1 - base)
charReps =
1 + IntegerDigits[numberInTuples - 1, base, numberOfIntegerDigits];
StringJoin@Part[chR, charReps]
*)
function Tform1.createexcelindex(col: integer):string;
var
n: integer;
base: integer;
numberOfIntegerDigits,numberInTuples,charReps: integer;
begin
n := 26*26 + 26 + 1;
base := 26;
numberOfIntegerDigits := system.Math.ceil(system.Math.LogN(base, base - n *(1 - base)) - 1);
numberInTuples := n - (base - POwer(base,numberOfIntegerDigits))/(1 - base);
charReps = 1 + IntegerDigits[numberInTuples - 1, base, numberOfIntegerDigits];
end ;
Wer kann mir bitte einen Rat geben?
DANKE
mfg
Walter