Article View: de.sci.informatik.ki
Article #21Re: Unl�sbares Problem!?
From: Markus Kuhn
Date: Wed, 16 Dec 1998 00:00
Date: Wed, 16 Dec 1998 00:00
58 lines
3192 bytes
3192 bytes
In Markus.Wurdak@t-online.de (Markus Wurdak) writes: |> Ich habe folgendes Problem: Ich will ein Programm schreiben (Turbo |> Pascal), welches mir die Zahl "9 hoch 9 hoch 9", also "9 hoch 387420489" |> berechnet. Da diese Zahl (ca. 387420489 Ziffern) viel zu gro� f�r eine |> Variable ist, h�tte ich folgende Fragen: |> |> - ist es m�glich die Berechnung schrittweise (stellenweise, evt. |> r�ckw�rts bzw. von hinten) auszuf�hren und gleichzeitig in eine |> Textdatei zu speichern? Wenn ja, wie? Ich br�uchte nur den |> mathematischen Teil f�r die stellenweise Berechnung! Du berechnest 9^2, 9^4, 9^8, 9^16, 9^32, 9^64, usw. durch fortw�hrendes Quadrieren. Du stellst 387420489 als Binaerzahl dar, und multipliziert die 9^(2^i) f�r die die i-te Binaerziffer des Exponenten 1 ist. Das ist der �bliche Square&Multiply Algorithmus. Literatur: Donald E. Knuth, The Art of Computer Programming, Volume II, Seminumerical Algorithms. |> - wie bekomme ich heraus, wieviele Ziffern diese Zahl exakt hat? Trivial: log10(9^(9^9)) = (9^9)*log10(9) |> - ist es m�glich mehrere Variablen (evt. Felder) zu einer berechenbaren |> Variable zu kombinieren? Wenn ja, wie? Klar. Bignum Arithmetik wird in Knuth (siehe oben) ausf�hrlich diskutiert. Du kannst auch gmp benutzen, eine GNU C library f�r das effiziente Rechnen mit beliebig grossen Zahlen. |> - gibt es andere M�glichkeiten, diese Berechnung, bzw. das Ergebnis |> davon, in eine Datei auf der Festplatte zu bekommen? Benutze nicht Pascal sondern eine Sprache mit eingebauten bignum Datentypen, wie etwa Scheme oder Mathematica. Das Scheme Programm (expt 9 (expt 9 9)) tut das gew�nschte (dauert aber etwas ...). |> Hintergrund: Mein Mathematik-Lehrer gibt nen Kasten Bier aus, wenn ihm |> jemand diese Zahl berechnet. Diese Wette hat er jedoch vor dem Zeitalter |> des CD-Brennens ausgesprochen, und hat gedacht soviel Papier w�re dies |> nicht wert ;-)))... OK, eine Flasche geht aber dann bitte an die Adresse auf meiner Web seite ... ;-) Markus -- Markus G. Kuhn, Computer Laboratory, University of Cambridge, UK Email: mkuhn at acm.org, WWW: <http://www.cl.cam.ac.uk/~mgk25/>
Technical Details
Message-ID:
<7573h2$2lc$1@pegasus.csx.cam.ac.uk>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<36765AD0.141E39D@t-online.de>Show Full Headers
Complete Article Headers
X-Google-Language: GERMAN,ASCII X-Google-Thread: 113080,a06195c287227431 X-Google-Attributes: gid113080,public X-Google-Thread: 102c5b,a06195c287227431 X-Google-Attributes: gid102c5b,public X-Google-Thread: 1102ea,a06195c287227431 X-Google-Attributes: gid1102ea,public X-Google-Thread: 113dff,a06195c287227431 X-Google-Attributes: gid113dff,public X-Google-Thread: 1032cb,a06195c287227431 X-Google-Attributes: gid1032cb,public X-Google-Thread: f4da7,a06195c287227431 X-Google-Attributes: gidf4da7,public From: mgk25@cl.cam.ac.uk (Markus Kuhn) Subject: Re: Unl�sbares Problem!? Date: 1998/12/16 Message-ID: <7573h2$2lc$1@pegasus.csx.cam.ac.uk> X-Deja-AN: 422711592 References: <36765AD0.141E39D@t-online.de> To: Markus.Wurdak@t-online.de Organization: U of Cambridge Computer Lab, UK Newsgroups: de.sci.informatik.ki,de.sci.informatik.misc,fido.ger.informatik,maus.sci.informatik,z-netz.wissenschaft.informatik,de.sci.mathematik