Hallo, ich hätt da gern mal wieder ein Problem
.
Gegeben sind zwei Zahlen, die zu einer Dezimalzahl zusammengesetzt werden sollen. Die eine Zahl ist festgelegt als 1, die andere ist frei definierbar. Beispiele:
Zahl1 | Zahl2 | Ergebnis |
1 | 55 | 1,55 |
1 | 9999 | 1,9999 |
1 | 0 | 1,0 |
1 | 123456789 | 1,123456789 |
Vereinfacht gesagt soll der zweiten Zahl ein "1," vorangestellt werden. Für diese Operation gibt's bestimmt einen mathematischen Begriff.
Wichtiger ist aber die Frage, wie ich die Sache in Code umsetze. Bisher hab ich dies zusammengestöpselt:
Delphi-Quellcode:
var
Zahl2: integer;
Lsizescalingfactor: Double;
Ldigits: integer;
begin
Ldigits:= CountDigits(Zahl2);
Lsizescalingfactor:= 1 + (Zahl2 / IntPower(10, Ldigits));
Es wird also die Anzahl der Stellen von Zahl2 gezählt und Zahl2 durch 10 hoch AnzahlStellen geteilt und am Ende 1 hinzuaddiert. Das funktioniert auch einwandfrei, aber geht das irgendwie einfacher?
Grüße
Dalai