Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Wie lang dürfen verschachtelte FOR-Schleifen sein? (https://www.delphipraxis.net/67926-wie-lang-duerfen-verschachtelte-schleifen-sein.html)

Peter Mössinger 22. Apr 2006 00:06

Re: Wie lang dürfen verschachtelte FOR-Scleifen sein?
 
Hallo,

die ganze Sache ist noch ein wenig komplizierter als bisher diskutiert, denn 100^100 ist eine Zahl mit 200 Nullen und diese Zahl läßt sich in den üblichen Zahlenformaten von Delphi nicht darstellen. Wenn man die numerische Gleichheit wirklich testen wollte, so reicht es nicht die ersten 10 oder 16 Stellen auf Gleichheit abzufragen.

Daher kann man für eine solche numerische Prüfung auch Funktionen wie exp oder log nicht benutzen, denn sie können immer eine minimale Ungenauigkeit mitbringen. Also ganz wichtig: Alle Stellen müssen dargestellt werden und genau rechnen und das bedeutet, dass man nicht exp(n*ln(c)) schreiben kann, sondern man muss wirklich c n-mal mit sich multiplizieren (was in jedem Schleifendurchlauf - wenn es geschickt gemacht ist - einer Multiplikation mit c entspricht).

Dies alles ist der Grund, warum es z.B. so schwierig ist bei großen Zahlen zu testen, ob sie Primzahlen sind und richtig schwierig wird es dann bei Monstern mit hunderttausend oder Millionen von Stellen. Es gibt aber Libraries, die solche Zahlen darstellen und mit ihnen rechnen können.

Nikolas 22. Apr 2006 00:08

Re: Wie lang dürfen verschachtelte FOR-Scleifen sein?
 
Bei solchen Fragen wird immer wieder auf Hagen verwiesen. Luckie bietet eine DownloadmöglichkeitVon Hagens DEC an. (Unten in der Signatur) Darin gibt es den Datentyp IInteger oder so, der meines Wissens nach auf Strings basiert und beliebig große Integer bearbeiten kann.

kleiner Unwissender 22. Apr 2006 00:14

Re: Wie lang dürfen verschachtelte FOR-Scleifen sein?
 
ich hab eben auch schon drann gedacht, meinen alten algo rauszuholen den ich vor urzeiten mal für nen Taschenrechner benutzt habe (da kannte ich Power und exp (n*ln(x) noch nicht) da hab ich das mit ner schleife gemacht und hab x einfach n mal mit sich selbst multipliziert. ABER dann is mir aufgefallen das das ja genausowenig bringt, da ja nacher die Fehler entstehen also beim hohen rechnen. Oder teusch ich mich?
Ich brächte doch auf jeden fall sonne Komponente mit der ich ewig hohe Zahlen noch rechnen kann.

//EDIT: ich schau mal in die DEC rein, mal schauen wie weit ich komm, aber bis hierhin schonmal danke! ihr seid ne große Hilfe!

//EDIT2: So ich hab die DEC runtergeladen, schau da aber wie ein Schwein ins Uhrwerk! Was mus ich denn jetzt da machen um IInteger nutzen zu können?

Sharky 25. Apr 2006 13:45

Re: Wie lang dürfen verschachtelte FOR-Scleifen sein?
 
Ich habe mal, hoffentlich an der richtigen Stelle, diesen Thread aufgeteilt und einen neuen Erzeugt.

Hier geht es zu dem Thread


Diese hier mache ich mal zu.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:23 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz