Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#68

Re: 9hoch9hoch9 - hohe Zahlen

  Alt 2. Mär 2004, 11:12
Zitat:
600.000 entspricht 1 = 1 Stunde
1.200.000 entspricht 2 = 16 Stunden
1.800.000 entspricht 3 = 256 Stunden
Also ich habe das auch mal ausgerechnet:

9^600.000 = 100ms
9^1.200.000 = 220ms
9^1.800.000 = 545ms

auf meinem P4 1.5GHz Rechner. Die benutzte Bibliothek findest du sogar hier im Forum.
Somit dürften die 256 Stunden enorm stark übertrieben sein.

Allerdings bei 9^387.420.489 dürften nicht das Problem die Berechnung an sich sein, sondern der enorm hohe Speicherverbrauch. Rein theoretisch kann man 9^387.420.489 in Big O = O(1) berechnen, also schneller als eine Addition. Dazu benötigt man eine Mathematische Bibliothek die die Zahlen intern zur Basis 9 darstellt. Bei solchen Zahlen müsste man nur an der Ziffernpossition 387.420.489 eine 1 setzen und fertig wäre die Berechnung. Als Beispiel: wir wollen 2^387.420.489 berechen mit Binärzahlen. Wir setzen dann einfach in einem Speicher aus lauter Nullen an der Bitposition 387.420.489 eine 1 und schon steht im Speicher 2^387.420.489. Exakt so kann man auch 9^387.420.489 berechnen falls die Zahlenbasis zu 9 ist. 2^387.420.489 benötigt 387.420.489/8 Bytes an Speicher , das sind 47Mb. 9^(9^9) käme auf ca. 240Mb in Binärdarstellung.

Allerdings: 9^9^9 = (9^9)^9 =
196 62705 04755 52913 61807 59085 26912 11628 31034 50944 21476 69273 15415 53796 63911 96809

in 0.02 ms berechnet. Punkt vor Strich ansonsten von links nach rechts.

Gruß Hagen
  Mit Zitat antworten Zitat