Entwickler-Ecke
Off Topic - Quadratwurzel aus 2 auf 500'000 Nachkommastellen ...!
Hochhaus - Mi 23.05.12 19:02
Titel: Quadratwurzel aus 2 auf 500'000 Nachkommastellen ...!
Hallo allerseits !
Ich habe ein Programm geschrieben, das Quadratwurzeln auf bis zu 1 Million Nachkommastellen berechnet. Nun frage ich mich, ob das Ergebnis korrekt ist. Deshalb poste ich die Ergebnisdatei - und falls jemand etwas Ähnliches gemacht hat, kann er/sie es mit meinem Ergebnis vergleichen.
Gruss,
Hochhaus
Hochhaus - Mi 23.05.12 19:40
Da ich nicht runde, berechne ich eine Stelle mehr ... ... ...
Gruss, Hochhaus
Mathematiker - Mi 23.05.12 20:22
Hallo Hochhaus,
jfheins hat folgendes geschrieben : |
==> Ist wahrscheinlich richtig. |
ist nicht nur wahrscheinlich richtig, es ist richtig. :D
Mein Computer hat alle Ziffern geprüft. Ich biete sogar 10 Millionen Ziffern, auch von Pi, e, phi und log 2.
Ich empfehle mal nach dem Freeware-Programm "pifast" zu googeln.
Beste Grüße
Mathematiker
Nachtrag: 20 Millionen Ziffern = 65 s Rechenzeit bei "pifast".
Ich biete übrigens sogar 1 Milliarde(!) Dezimalstellen von Wurzel 4; auf Wunsch auch noch mehr! :wink:
Hochhaus - Mi 29.08.12 18:12
Beiliegend auch die Wurzel aus 10 auf 100'000 Nachkommastellen. Ob die wohl auch stimmt ?
Hochhaus
haentschman - Mi 29.08.12 20:15
Mal nachgefragt... 8)
Zitat: |
Ich biete übrigens sogar 1 Milliarde(!) Dezimalstellen von Wurzel 4 |
...gibt es im realen Leben Anwendungsfälle ? Außer der Platzierung eines Staubkorns aus Omas Teppich im Mondkrater Nummer 17... :P
Mathematiker - Mi 29.08.12 21:54
Hochhaus hat folgendes geschrieben : |
Beiliegend auch die Wurzel aus 10 auf 100'000 Nachkommastellen. Ob die wohl auch stimmt? |
Bei Kontrolle mit WinFunktion ergibt sich: alles ok, bis auf die letzte Ziffer. Die ist wohl gerundet. :P
haentschman hat folgendes geschrieben : |
Mal nachgefragt... 8)
Zitat: | Ich biete übrigens sogar 1 Milliarde(!) Dezimalstellen von Wurzel 4 |
...gibt es im realen Leben Anwendungsfälle ? Außer der Platzierung eines Staubkorns aus Omas Teppich im Mondkrater Nummer 17... :P |
Nun ja. Du glaubst nicht, was für "glänzende" Augen jemand bekommt, wenn er nach dem Download von, sagen wir, 1 Billion Dezimalstellen von Wurzel 4 das Ergebnis sich ansieht. Einfach köstlich.
Und damit Du mir glaubst, hänge ich 100000 Ziffern von Wurzel 4 an.
Beste Grüße
Mathematiker
Nachtrag: Nach 1 Stunde "nur" 3 Downloads. Ich wollte eigentlich mehr glänzende Augen sehen. :eyecrazy: Deshalb gibt's jetzt 5 Millionen Dezimalziffern von Wurzel 4.
Nachtrag 2: Die Datei mit dem Inhalt 2,00000000000000000000... ist gelöscht.
bummi - Mi 29.08.12 23:39
:gruebel:
Martok - Do 30.08.12 13:47
:lol:
Mathematiker hat folgendes geschrieben : |
Nachtrag: 20 Millionen Ziffern = 65 s Rechenzeit bei "pifast". |
Quelltext
1: 2: 3:
| In[9]:= Timing[Export["C:\\test.txt", N[Sqrt[2], 20000000]]]
Out[9]= {40.75, "C:\\test.txt"} |
Quelltext
1: 2: 3:
| In[10]:= Timing[Export["C:\\10_100k.txt", N[Sqrt[10], 100000]]]
Out[10]= {0.079, "C:\\10_100k.txt"} |
Sqrt(10), 100k Stellen (zip, 46.71 KB)
Mathematiker - Do 30.08.12 14:04
Martok hat folgendes geschrieben : |
:lol:
Quelltext 1: 2:
| In[9]:= Timing[Export["C:\\test.txt", N[Sqrt[2], 20000000]]] Out[9]= {40.75, "C:\\test.txt"} | |
Gratulation! Offensichtlich sind Mathematica und dein Computer sehr schnell.
Weißt Du vielleicht, mit welchem Algorithmus Mathematica die Wurzel berechnet? Leider schweigen sich Wolfram Research und wirklich gute Bücher, wie "Computeralgebra" von Koepf, über die genutzten Verfahren stets aus.
Beste Grüße
Mathematiker
Gammatester - Do 30.08.12 14:30
Dazu braucht es eigentlich keine besonders schnellen Algorithmen:
MPArith [
http://www.wolfgang-ehrhardt.de/misc_de.html#mparith] rechnet (im Rahmen der ca 1+ Mio Bits) die Wurzel auf 500000 Stellen in weniger als 300 ms aus, es wird Zimmermanns Karatsuba-Quadratwurzel benutzt.
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| D:\Xtools\MPArith>t_calc.exe T_CALC using MPArith V1.22.07 (31/32 bit) [mp_calc] (c) W.Ehrhardt 2006-2012 Karatsuba cutoffs: mul/sqr = 16/32, Toom-3 cutoffs: mul/sqr = 32/64 Burnikel/Ziegler div cutoff = 32, MaxBit = 1011840, MaxFact = 65535 Type "?<enter>" to get some info about commands, "\q" or "quit" to end.
[D]:=> x=2*2^1000000; X = [>0, 1000002 bits, chksum=$06C2008A, time=20.673 ms] [D]:=> y=sqrt(x); Y = [>0, 500001 bits, chksum=$D769B1F0, time=255.499 ms] |
Tranx - Do 30.08.12 15:25
Echt, das mit den Millionen Stellen von Wurzel(4) ist der Hammer. Doch eine Frage ist noch zu klären? Bei Wurzel 10 ist nicht eindeutig, welches Ergebnis man erhalt. Im Zehnersystem sicher die 3,16227766016837933199889354443.... Doch im 16er System? Nun: 4!!!! und im 12er System entsprechend eine andere Ziffernfolge.
Tja, Mathematik ist eben eine Frage der Konvention, oder?
Jann1k - Do 30.08.12 15:27
Zitat: |
Echt, das mit den Millionen Stellen von Wurzel(4) ist der Hammer. Doch eine Frage ist noch zu klären? Bei Wurzel 10 ist nicht eindeutig, welches Ergebnis man erhalt. Im Zehnersystem sicher die 3,16227766016837933199889354443.... Doch im 16er System? Nun: 4!!!! und im 12er System entsprechend eine andere Ziffernfolge.
Tja, Mathematik ist eben eine Frage der Konvention, oder? |
Naja, das Ergebnis also die Zahl "Wurzel Zehn" bleibt immer dasselbe und ist eindeutig, einzig die Darstellung ändert sich. Zahlen sind halt ganz merkwürdige Wesen...
Mathematiker - Do 30.08.12 15:37
Tranx hat folgendes geschrieben : |
Echt, das mit den Millionen Stellen von Wurzel(4) ist der Hammer. Doch eine Frage ist noch zu klären? Bei Wurzel 10 ist nicht eindeutig, welches Ergebnis man erhalt. Im Zehnersystem sicher die 3,16227766016837933199889354443.... Doch im 16er System? Nun: 4!!!! und im 12er System entsprechend eine andere Ziffernfolge. |
Wow! Soweit habe ich ja noch gar nicht gedacht. D.h., meine mühevoll :wink: berechneten 5 Millionen Ziffern von Wurzel 4 sind ja auch 5 Millionen Ziffern von Wurzel [4]p in jedem Positionssystem mit p > 4.
Mit einem Download hat man also unendlich(!) viele Wurzeln auf 5 Millionen Stellen genau.
Ich bin stolz auf mich! :D
Mathematiker
Delphi-Laie - Do 30.08.12 15:59
Wer vera...lbert hier eigentlich wen?
Und wer fing damit an?
Tranx - Mo 03.09.12 08:37
Was heißt hier veralbern? Es stimmt doch, dass die einziffrigen Zahlen eindeutig definiert sind. Da ja es immer mindestens eine Ziffer mehr gibt, als der Wert der höchsten einziffrigen Zahl (10 Ziffern im Zehnersystem, höchste einstellige Zahl 9, 2 Ziffern im Zweiersystem, höchste einziffrige Zahl 1 ....)
Doch die zwei- und mehrziffrigen Zahlen sind nicht eindeutig definiert, da das Bezugssystem (heute in der Regel das 10er System, doch zu Babylons Zeiten war es das 12er System, daher auch die 12/24 Uhreinteilung. Reste des 12er-Systems gibt es auch bei uns (Dutzend, Gros). Und Programmierer arbeiten bekanntlich mehr im 16er System, da die Prozessoren damit arbeiten.
10 (16er) = 16 (10er)
20 (12er) = 24 (10er)
20 (16er) = 32 (10er) usw. usf.
Daher gibt es auch für diverse Rechenoperationen diverse Ziffernfolgen, je nach Basissystem:
18 * 18 = 324 (10er) = 230 (12er) = 190 (16er) ....
Also echt keine Veralberung!!! Nur eine Definitionsfrage!
Delphi-Laie - Mo 03.09.12 10:40
Tranx hat folgendes geschrieben : |
Es stimmt doch, dass die einziffrigen Zahlen eindeutig definiert sind. |
Behauptete oder bestritt das jemand?
Inwiefern sind denn ein- und mehrziffrige Zahlen definiert - und wo?
Natürliche Zahlen als solche kann man natürlich über ein Axiomsystem mit einem definitorischen Rahmen umgeben, doch sind sie auch als Abstraktion der Anzahl(en) verständlich, erklärlich und definierbar und existieren damit völlig unabhängig von ihrer Darstellung(sart). Sie existieren sogar ohne daß man sie überhaupt darstellt.
Es geht hier auch nicht um die ein- und mehrziffrige Zahlen, sondern darum, ob die Zahlen ganz sind oder nicht. Ob ein gebrochener (gebrochenrationaler) Anteil existiert oder nicht, ist für die Wahl der Basis des Positionssystems irrelevant. Einen verschwindenden Nachkommanteil kann man immer nur mit dem leeren Element (scheinbar) "füllen", und dann eben beliebig oft. Die mathematische Informationsmenge wächst damit nicht, wohl aber die über den Schreiberling.
Mathematiker - Mo 03.09.12 13:32
Hallo Leute,
das Letzte, was ich mit meinem Spaß wollte, war Streit.
Millionen Dezimalstellen der Wurzel 4 = 2,0000000000000000000... anzubieten, fand ich lustig. Und ich gestehe, ich habe mich stets etwas gefreut, wenn wieder einer die Datei heruntergeladen hat. Ich habe mir dann vorgestellt, wie er "entgeistert" auf die vielen Nullen schaut. :lol:
Entschuldigung! Tut mir leid. :flehan: Es war ein Spaß, vielleicht auch ein schlechter?
Beste Grüße
Mathematiker
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!