AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi 2 Integerwerte in einem Integerwert reversibel speichern?
Thema durchsuchen
Ansicht
Themen-Optionen

2 Integerwerte in einem Integerwert reversibel speichern?

Ein Thema von PeterPanino · begonnen am 10. Aug 2007 · letzter Beitrag vom 12. Aug 2007
 
Polynom

Registriert seit: 1. Jun 2007
Ort: Markdorf
17 Beiträge
 
Delphi 2007 Professional
 
#35

Re: 2 Integerwerte in einem Integerwert reversibel speichern

  Alt 12. Aug 2007, 13:28
Hallo,

Wenn ich mich nicht täusche, dann liegt die Obergrenze des Integer-Zahlenraumes in Delphi bei 2147483647.
Die Quadratwurzel daraus ist etwa 46340. Das bedeutet, dass wenn keine der beiden Primzahlen 46340 überschreitet alles im grünen Bereich ist. Die 46337 ist die 4792. Primzahl (Wenn ich mich nicht verrechnet/verzählt habe).
Wenn eine der Zahlen besonders klein ist, dann kann die zweite Zahl dafür umso größer sein. Wenn die erste Zahl z.B. 1 wäre, dann dürfte die zweite resultierende Primzahl bis zu 1073741821 groß werden - Ich hab nur leider keine so große Liste und kann daher nicht herausfinden welcher "normalen" Zahl dies entsprechen würde.

Bei Hagens Methode liegt die Grenze (wenn ich das System verstanden habe und beide Zahlen etwa gleich groß sind) bei ca. 46339. (korrigiert mich, falls ich falsch liege).

Zitat:
Falls zb. |A| und |B| kleiner 128 wären dann multiplizierst du A mit 128 und addierst B drauf.
An diesem Punkt bin ich etwas verwirrt: Angenommen eine der beiden Zahlen sei enorm klein. Wenn ich die Aussage von Hagen genau so auffasse, wie sie dasteht, dann würde das bedeuten, dass die andere Zahl nur geringfügig größer werden kann. Dies würde dann bei weit auseinander liegenden Zahlen fast schon für die Primzahl-Methode sprechen.
Aber ich nehme an, dass (in dem von Hagen genannten Beispiel) nur |B| kleiner 128 sein muss.

Zum Zeitaufwand bei der Primzahl-Methode: Ich gebe zu, dass der Zeitaufwand für eine Primfaktorzerlegung recht hoch ist, aber ich weiß leider nicht für welches Anwendungsgebiet dies verwendet werden soll. Programme zur Zerlegung in Primfaktoren brauchen bei mir etwa 350 ms für Zahlen im Bereich von 46337*46337. Falls dies auf mehreren Zahlen angewendet wird, so sehe ich es ein, dass der Zeitaufwand nicht akzeptabel wäre.

Mit freundlichen Grüßen, Michael
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:26 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