Autor Beitrag
Hochhaus
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 662
Erhaltene Danke: 8

Windows 7
Delphi XE2
BeitragVerfasst: Mi 23.05.12 19:02 
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
Einloggen, um Attachments anzusehen!
FinnO
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1331
Erhaltene Danke: 123

Mac OSX, Arch
TypeScript (Webstorm), Kotlin, Clojure (IDEA), Golang (VSCode)
BeitragVerfasst: Mi 23.05.12 19:35 
Gottseidank gibt es Wolframalpha.

www.wolframalpha.com...digit+of+sqrt%282%29

Durch nachzählen habe ich festgestellt, dass du 500001 Stellen berechnet hast. :mrgreen:

Für diesen Beitrag haben gedankt: BenBE, Hochhaus
Hochhaus Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 662
Erhaltene Danke: 8

Windows 7
Delphi XE2
BeitragVerfasst: Mi 23.05.12 19:40 
user profile iconFinnO hat folgendes geschrieben Zum zitierten Posting springen:
Gottseidank gibt es Wolframalpha.

www.wolframalpha.com...digit+of+sqrt%282%29

Durch nachzählen habe ich festgestellt, dass du 500001 Stellen berechnet hast. :mrgreen:


Da ich nicht runde, berechne ich eine Stelle mehr ... ... ...

Gruss, Hochhaus
jfheins
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 918
Erhaltene Danke: 158

Win 10
VS 2013, VS2015
BeitragVerfasst: Mi 23.05.12 19:41 
Gibt sonst auch andere die sowas schon gemacht haben ;-)
apod.nasa.gov/htmltest/gifcity/sqrt2.1mil
==> Ist wahrscheinlich richtig.

Für diesen Beitrag haben gedankt: Hochhaus
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1447

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Mi 23.05.12 20:22 
Hallo Hochhaus,
user profile iconjfheins hat folgendes geschrieben Zum zitierten Posting springen:
==> 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:

Für diesen Beitrag haben gedankt: BenBE, Hochhaus
Hochhaus Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 662
Erhaltene Danke: 8

Windows 7
Delphi XE2
BeitragVerfasst: Mi 29.08.12 18:12 
Beiliegend auch die Wurzel aus 10 auf 100'000 Nachkommastellen. Ob die wohl auch stimmt ?

Hochhaus
Einloggen, um Attachments anzusehen!
haentschman
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 285
Erhaltene Danke: 33


DX10 Berlin Professional
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1447

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Mi 29.08.12 21:54 
user profile iconHochhaus hat folgendes geschrieben Zum zitierten Posting springen:
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
user profile iconhaentschman hat folgendes geschrieben Zum zitierten Posting springen:
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.

_________________
Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein


Zuletzt bearbeitet von Mathematiker am So 04.11.12 00:57, insgesamt 1-mal bearbeitet
bummi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1248
Erhaltene Danke: 187

XP - Server 2008R2
D2 - Delphi XE
BeitragVerfasst: Mi 29.08.12 23:39 
:gruebel:

_________________
Das Problem liegt üblicherweise zwischen den Ohren H₂♂
DRY DRY KISS
Martok
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: Do 30.08.12 13:47 
:lol:

user profile iconMathematiker hat folgendes geschrieben Zum zitierten Posting springen:
Nachtrag: 20 Millionen Ziffern = 65 s Rechenzeit bei "pifast".

ausblenden Quelltext
1:
2:
3:
In[9]:= Timing[Export["C:\\test.txt", N[Sqrt[2], 20000000]]]

Out[9]= {40.75, "C:\\test.txt"}


ausblenden 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)
Einloggen, um Attachments anzusehen!
_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1447

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Do 30.08.12 14:04 
user profile iconMartok hat folgendes geschrieben Zum zitierten Posting springen:
:lol:
ausblenden 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

_________________
Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
Gammatester
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 328
Erhaltene Danke: 101



BeitragVerfasst: Do 30.08.12 14:30 
Dazu braucht es eigentlich keine besonders schnellen Algorithmen: 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.
ausblenden 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]

Für diesen Beitrag haben gedankt: Mathematiker
Tranx
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 648
Erhaltene Danke: 85

WIN 2000, WIN XP
D5 Prof
BeitragVerfasst: 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?

_________________
Toleranz ist eine Grundvoraussetzung für das Leben.
Jann1k
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 866
Erhaltene Danke: 43

Win 7
TurboDelphi, Visual Studio 2010
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1447

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Do 30.08.12 15:37 
user profile iconTranx hat folgendes geschrieben Zum zitierten Posting springen:
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

_________________
Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein

Für diesen Beitrag haben gedankt: Delphi-Laie
Delphi-Laie
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1600
Erhaltene Danke: 232


Delphi 2 - RAD-Studio 10.1 Berlin
BeitragVerfasst: Do 30.08.12 15:59 
Wer vera...lbert hier eigentlich wen?

Und wer fing damit an?
Tranx
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 648
Erhaltene Danke: 85

WIN 2000, WIN XP
D5 Prof
BeitragVerfasst: 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!

_________________
Toleranz ist eine Grundvoraussetzung für das Leben.
Delphi-Laie
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1600
Erhaltene Danke: 232


Delphi 2 - RAD-Studio 10.1 Berlin
BeitragVerfasst: Mo 03.09.12 10:40 
user profile iconTranx hat folgendes geschrieben Zum zitierten Posting springen:
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.


Zuletzt bearbeitet von Delphi-Laie am Mo 03.09.12 17:27, insgesamt 1-mal bearbeitet
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1447

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: 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

_________________
Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein