![]() |
AW: Zwei Ganzzahlen zu Dezimalzahl zusammensetzen
Zitat:
![]() oder der Funktion das Zeichen mitgeben, welches verwendet werden soll. ![]() ![]() |
AW: Zwei Ganzzahlen zu Dezimalzahl zusammensetzen
Zitat:
Delphi-Quellcode:
StrToFloat(IntToStr(Zahl1) + FormatSettings.DecimalSeparator + IntToStr(Zahl2))
Edit: Ups nicht gesehn dass himitsu schneller war |
AW: Zwei Ganzzahlen zu Dezimalzahl zusammensetzen
Das mit den führenden Nullen ist unter der Annahme, dass zahl2 ein Integer ist, eh nicht möglich. Dazu müsste zahl2 schon als string vorliegen.
|
AW: Zwei Ganzzahlen zu Dezimalzahl zusammensetzen
Zitat:
Delphi-Quellcode:
oder wenn die Zahlen als Strings eingelesen werden (also führende Nullen möglich sind):
function Combine(_Zahl1, _Zahl2: integer): Double;
var err: integer; begin Val(Format('%d.%d', [_Zahl1, _Zahl2]), Result, err); end;
Delphi-Quellcode:
Funktioniert unabhängig vom Dezimaltrennzeichen.
function Combine(const _Zahl1, _Zahl2: string): Double;
var err: integer; begin Val(Format('%s.%s', [Zahl1, Zahl2]), Result, err); end; |
AW: Zwei Ganzzahlen zu Dezimalzahl zusammensetzen
Mittlerweile hab ich die selbst gestellte Aufgabe ganz anders gelöst, so dass gar kein Faktor mehr errechnet werden muss. Ich hätte wohl gleich über die Problematik gezielter und intensiver nachdenken sollen. Naja, hinterher ist man immer schlauer :).
Nur der Vollständigkeit halber: Das Ziel war, Dateigrößen zu errechnen, die beim Codieren von (binären) Dateien entstehen, ohne die eigentliche Codierung durchzuführen (weil rechen- und damit zeitintensiv). Zu Beginn dachte ich, die üblichen 33% bis 37% reichen dafür nicht aus, denn meine Tests ergaben 41-43% größere Dateien. Dann fiel mir auf, dass diese Base64 codierten Dateien noch einen Header und Footer haben. Inzwischen hab ich einen brauchbaren Algorithmus gefunden, der im Maximum einen 2 Byte zu kleinen Wert ergibt, in der Mehrzahl der Fälle aber korrekt ist. Das ist für den Zweck akzeptabel. Anyway, danke an alle Beteiligten für die Denkanstöße! :dp:. Grüße Dalai |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz