![]() |
Mathematisches Problem - Werte zwischen N und M ausrechnen
Ich bin mal wieder zu blöd etwas zu berechnen. Wie immer.
Ich habe die Werte N und M und X. N und M ist ein bereich, der frei wählbar ist. Sagen wir mal N=0 und M=1024. X = 5. Es geht hier um das erzeugen von X Daten die eine Dateigröße von N bis M haben sollen. Wie berechne ich nun die Werte zwischen N und M damit ich weiß, wie groß jede X Dateien wird? |
AW: Mathematisches Problem - Zahlen zwischen N und M ausrechnen
Ich verstehe die Frage nicht ganz. Was soll X mit N und M zu tun haben?
Meine Interpretation:N und M geben Minimal- und Maximalgröße an, korrekt? Wenn die gesetzt sind, möchtest du jetzt X Dateien erzeugen, die zusammen nicht das Maximum überschreiten dürfen, oder wie? Dann interessiert dich N gar nicht, und Du mußt lediglich M durch X teilen, und erhältst den wert den alle X Dateien als Größe haben müssen. Sollten die X Dateien unterschiedlich groß sein dürfen, mußt du freilich kreativ werden. Sherlock |
AW: Mathematisches Problem - Werte zwischen N und M ausrechnen
Zitat:
Zitat:
Wenn ich aber N=0, M=1024 habe und X=3, dann wäre das 341 pro Datei und N wird somit nicht berücksichtigt :( |
AW: Mathematisches Problem - Werte zwischen N und M ausrechnen
Wenn ich das richtig verstanden habe, willst du X Dateien erstellen, deren Größe gleichmäßig im Bereich N bis M (jeweils einschließlich dieser Grenzen) verteilt ist?
Dann errechnet sich die Größe G der Datei i-ten Datei (i = 1..X) mit:
Delphi-Quellcode:
G[i] := N + (i-1)*(M - N)/(X-1);
Dabei ist natürlich vorher zu prüfen, ob auch X > 1 ist. |
AW: Mathematisches Problem - Werte zwischen N und M ausrechnen
Zitat:
|
AW: Mathematisches Problem - Werte zwischen N und M ausrechnen
Hab' ich noch nich' so ganz verstanden:
Bei den angegebenen Werten könnte es eine Datei mit 1 Byte, eine Datei mit 42 Byte, eine mit 66 Byte, eine Datei mit 1000 Byte und eine mit 1023 Byte Größe geben. Oder halt irgendwelche beliebigen anderen Werte von 0 bis 1024. Hauptsache nicht mehr oder weniger und 5 Dateien. Also ungefähr sowas:
Delphi-Quellcode:
Random liefert hier 'ne Zahl zwischen 0 und m - n.
Randomize;
for i := 1 to x do begin Dateigroesse := n + Random(m - n); end; Hier also 1024 - 0: Sprich eine Zahl von 0 bis 1024. Wenn m = 34567 ist und n = 12345 ist, dann wäre der Bereich 34567 - 12345 = 22222. Random liefert also einen Wert von 0 bis 22222. Wenn wir die Werte oben einsetzen käme dabei
Delphi-Quellcode:
heraus, also ein Zufallswert von 12345 bis 34567.
Dateigroesse := 12345 + Random(22222);
PS: Die grundsätzlich unterschiedlichen Antworten lassen darauf schließen, dass Deine Fragestellung noch präzisiert werden muss. Es scheinen noch erhebliche, sehr unterschiedliche, Interpretationsmöglichkeiten zur Fragestellung zu existieren. |
AW: Mathematisches Problem - Werte zwischen N und M ausrechnen
Zitat:
Sherlock |
AW: Mathematisches Problem - Werte zwischen N und M ausrechnen
Zitat:
(Lübbecke ist ein Schreibfehler, vor 50 Jahren hätte ich das auch noch gewußt) Gruß K-H |
AW: Mathematisches Problem - Werte zwischen N und M ausrechnen
Zitat:
|
AW: Mathematisches Problem - Werte zwischen N und M ausrechnen
Mein Problem hat sich dank eurer Hilfe lösen lassen. Vielen Dank.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:52 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-2025 by Thomas Breitkreuz