PI Wettbewerb[Verlägert bis Oktober]

Übersicht BlitzBasic Allgemein

Gehe zu Seite Zurück  1, 2, 3  Weiter

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.

Justus

BeitragDi, Jun 14, 2005 20:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Mal schauen, ob ichs hinbekomme.
In einigen Tests habe ich schon Annäherungen erreicht. Mein größtes Problem sind allerdings die langen Zahlen.
Also muss ich sehen, wie ich das ganze mit Strings regele...

garret

BeitragMi, Jun 15, 2005 12:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe den so bei mir abgeschrieben doch es hat leider nicht hingehauen. Mit der Step-Schrittweite war aber doch ein anderes Beispiel, nicht das hier gezeigte.
Bevor jetzt ein ganz Schlauer kommt: Ich hatte das Komma (s. u.) und das Semikolon angepasst Wink
Es handelt sich hierbei um einen "Einzeiler" (aus einem Wettbewerb des 64'er entsprungen). Man muss die Variablen (w,u,o) aber noch als Floats kennzeichnen glaube ich...


Das hier ist der O-Text:

Zitat:

;1, damals noch mit Zeilennummern Wink
For i=0 To 12
w=-(u=0)
o=2*Sqr(3)*w+o
u=3*w+u
o=2*o*u/(o+u)
u=Sqr(o*u)
Print 6*2^i,u;o ;<---Diese Zeile muss angepasst werden, habe ich hier noch nicht gemacht
Next


Quelle: "C64 Tips, Tricks und Tools", Florian Müller, ISBN 3-89090-499-8 Wink

Abgesehen davon mache ich beim Wettbewerb ja gar nicht mit. Das Beispiel hier wird wohl kaum so leistungsfähig sein Wink
Warum sollte ich also meine Lage verschlechtern, TOONY? Wink
>>nec aspera terrent<< (Auch Widerwärtigkeiten schrecken nicht)
 

TOONY

BeitragMi, Jun 15, 2005 13:38
Antworten mit Zitat
Benutzer-Profile anzeigen
achso, ich dachte du machst mit, wenn du schon ein pi programm schreibst.....

ich denke, das der code PI auch bis auf 10000000 nachkommastellen berechnen kann, wenn man statt die Integers String Variablen benutzt....

Mich würde ja mal interessieren nach welcher Formel ihr euch PI anähert....

Justus

BeitragMi, Jun 15, 2005 14:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Mich würde ja mal interessieren nach welcher Formel ihr euch PI anähert....


Ich habe bereits 2 Methoden ausprobiert:

Leibnitz-Methode:
Pi/4 = 1/1^2 - 1/3^2 + 1/5^2 - 1/7^2 ...

und die hier:

Pi^2/6 = 1/1^2 + 1/2^2 + 1/3^2 + 1/4^2 + 1/5^2

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragDo, Jun 16, 2005 21:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Hat überhaupt schon einer mehr Stellen als BB selbst verarbeiten kann,
sagen wir mal >5 Nachkommastellen?
@Toony:Hast du denn schon was fertiges?
Machst du selber mit?
[BB2D | BB3D | BB+]

SoNenTyp

BeitragDo, Jun 16, 2005 22:00
Antworten mit Zitat
Benutzer-Profile anzeigen
jau is aber noch sau langsam
Gruss Der Typ.

User posted image
 

TOONY

BeitragFr, Jun 17, 2005 12:12
Antworten mit Zitat
Benutzer-Profile anzeigen
ich bin dabei ebenfalls soeinen Code zu programmieren,
aber da ich der Leiter des Wettbewerbes bin kann ich selbst wohlnicht teilnehmen...

mit meinem Code kann ich momentan in 21 sec 65 Stellen von PI richtig berechnen

(auf einem PIII 500 MHZ)

Kalex

BeitragFr, Jun 17, 2005 17:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi.
Also versuche es auch mit der Leibniztformel.
Weiter als die 5 Nachkommastellen die BB hergibt bin ich aber leider auch nicht. Wird aber noch.

Kleine Fragen an Toony:

1. Muss das Programm PI jedesmal speichern oder kann ich eine Abfrage einbauen, wo der User dann entscheidet ob er speichern möchte oder nicht.
(PI speichern (S))

2. Benötigst du die Funktion für irgend etwas oder ist das einfach Just for fun ?
My Fantasy Story:
Reich der Drachen
 

TOONY

BeitragFr, Jun 17, 2005 19:57
Antworten mit Zitat
Benutzer-Profile anzeigen
1) Du kannst eine Einstellung in die Funktion einbauen, um zu entscheiden ob PI gespeichert werden soll oder nicht. Wenn es solch eine Funktion gibt, muß aber darauf hingewiesen werden.

2)
Ich hab mit schön öfters überlegt, wie man mit BB PI berechnen könnte und habe schon fast alle formeln zur Berechnung durch. Im Internet finden sich auch einige Programme dazu, doch keine für BB. Daher kamm irgendwie die Idee einen Wettbewerb daraus zu machen....
und zu schauen wieweit man mit BB kommt.

Die Japaner haben PI auf 6 Milliarden stellen berechnet,
das soetwas mit BB nicht möglich ist, ist mir schon klar aber 1.000.000 müßte mackbar sein, wenn man die richtigen formeln benutzt!

Also einfach Just for Fun!


CODE-FORTSCHRITT (nehme nicht am Wettbewerb teil)
4 MIN für 186 Stellen

SoNenTyp

BeitragFr, Jun 17, 2005 21:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Es sind ein paar Milliarden mehr. Very Happy
http://de.wikipedia.org/wiki/Kreiszahl


Ganz unten giebts ne nette Tabelle!
Gruss Der Typ.

User posted image

stfighter01

BeitragFr, Jun 17, 2005 23:38
Antworten mit Zitat
Benutzer-Profile anzeigen
schätze die japsen haben auch ein bisschen mehr rechenpower und etwas mehr zeit aufgewendet als wir.
vielleicht wenn sich ein guter code ergibt, sich das ganze forum vereint und wir alle rechner 10 wochen laufen laufen lassen. dann können wir diese marke brechen *gg*
genaugenommen wärs aber auch nicht so toll, denn schlussendlich hätten wir ein so grosses textfile, das keiner unserer rechner dieses file zur begutachtung od. kontrolle öffnen könnte Laughing
verdammt, 10MRD stellen= 10GBArbeitsspeicher nur für textfile.

(kleiner ausflug in meine gedankenwelt)

mfg stfighter
Denken hilft!

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragSa, Jun 18, 2005 0:39
Antworten mit Zitat
Benutzer-Profile anzeigen
hab den Code für String rechnen ja schon lange und auch im Code Archiv gepostet.
Pi berrechnenn mit den Formeln aus dem Netz, schnell abgeschrieben, da schafft mein Rechner dann 65 Komma-Stellen in 1,6 sekunden!
Ich finde das schon schnell und die Fuktionen sind teilweise nicht optimiert für die Berechnung!

Diese sind nicht für 1 Million zu gebrauchen mit BB,
wenn ich die mir bekannte schnellste Pi Berechnungsformel nehme, hab auch nmicht weiter gesucht!
Pi = SUMk=0 to infinity 16-k [ 4/(8k+1) - 2/(8k+4) - 1/(8k+5) - 1/(8k+6) ].
Für BB Code ümgeschrieben sieht es so aus, damit ihr auch davon was habt
BlitzBasic: [AUSKLAPPEN]
For k#= 0 To 2
PiNeu# = PiNeu + 1/16^k * ( 4/(8*k+1) - 2/(8*k+4) - 1/(8*k+5) - 1/(8*k+6) )
Next
Print Pineu
WaitKey

BB kann nicht mehr wie 3 Durchläufe !
Diese kommt ohne Sqr aus , das am meisten Speed braucht !
Um schneller zu werden fehlt es mir an ASM Kentnisse, die dafür benutzt werden müßten um das in einer relativen Zeit zu schaffen!
Denn ich muß schon vorher wissen wie viele Kommastellen ich berechnen will!
Angenommen es sollen 1000000 Stellen ausgerechnet werden müßte ich ja schon bis zu 1000000 Nachkomma Stellen teilen, und das ist zeitaufwendig!
[BB2D | BB3D | BB+]

Triton

BeitragSa, Jun 18, 2005 13:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
BB kann nicht mehr wie 3 Durchläufe !


Mehr als.
Coding: silizium-net.de | Portfolio: Triton.ch.vu

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragSa, Jun 18, 2005 14:03
Antworten mit Zitat
Benutzer-Profile anzeigen
So war das nicht gemeint, BB kann schon mehr, aber es ändert nichts an dem Ergebnis!
den bei k#= 0 to 2 hat Pi (3.14159) schon diesen Wert, also wäre jede weitere Berechnung sinnlos!
[BB2D | BB3D | BB+]
 

hitokiri

BeitragSa, Jun 18, 2005 14:07
Antworten mit Zitat
Benutzer-Profile anzeigen
rallimen, das hatte triton gar nicht gemeint Smile
er hat lediglich auf die verunglimpfung der deutschen sprache hingewiesen ^^.
if x=y then x ist wie y
if x<>y then x ist grosser/kleiner ALS y
 

E. Urbach

ehemals "Basicprogger"

BeitragDi, Jun 21, 2005 14:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Nur mal so:

1. Hast du denn selbst bereits einen richtigen Algorithmus? (schon geklärt)
2. Willst du wirklich die "Richtigkeit" der Zahl prüfen, wenn sie 1000000 Stellen hat? ( Das könnte dauern... )
3. Soll man dir die Code-Datei schicken oder die .EXE oder beides?
4. Die allerletzte Stelle muss nicht richtig sein, oder? Weil man diese ja nicht genau bestimmen kann.
5. Wird der Algorithmus auch überprüft?

Edit:
Ehrlich gesagt habe ich keine Ahnung, wie ich da mehrere Stellen ausrechnen kann.
Mit Strings komm ICH nicht weiter.
Es müsste eine Funktion geben, die ungefähr so aussieht:
Function PI_Stelle# (Stelle, vorher)
...
return zahl_an_dieser_stelle
End Function
und dann im String speichern.
Aber ich hab keinen blassen Schimmer, wie die Funktion aussehen soll.
Na ja, ich werd wahrscheinlich doch nicht mitmachen können.

SoNenTyp

BeitragDi, Jun 21, 2005 17:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Basic_Progger hat Folgendes geschrieben:
Nur mal so:
2. Willst du wirklich die "Richtigkeit" der Zahl prüfen, wenn sie 1000000 Stellen hat? ( Das könnte dauern... )


Er meint er vergleicht sie mit einer Zahlenfolge von der mann ausgehen kann das sie richtig ist. Also mit seiner eigenen und soewtas geht sehr schnell.

Basic_Progger hat Folgendes geschrieben:

4. Die allerletzte Stelle muss nicht richtig sein, oder? Weil man diese ja nicht genau bestimmen kann.


Warum? Wenn du nur bis zu einer bestimmten Stelle richtig rechnen kannst, dann hör halt einfach eine Stelle davor auf.


Basic_Progger hat Folgendes geschrieben:

5. Wird der Algorithmus auch überprüft?

Wird nicht nötig sein, wenn es bei Punkt2 zu keinem Fehler kommt.i
Gruss Der Typ.

User posted image

Kalex

BeitragMi, Jun 29, 2005 23:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Mist, ich bekomme das mit den vielen Nachkommastellen nicht hin.
Wird sich bis Morgen abend auch nicht viel änder.

Ich bin also raus.

Möge der beste gewinnen.
My Fantasy Story:
Reich der Drachen

Ctuchik

BeitragDo, Jun 30, 2005 0:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Tjo, ich wollte eigentlich mitmachen, aber hab mal wieder keine Zeit gefunden mich gescheit über des Thema zu informieren, geschweigedenn dann noch was umzusetzen!
Schade eigentlich, naja, bald sind Sommerferien da hab ich dann endlich mal wieder Zeit um rund um die Uhr zu proggen ^^
Zu den Nebenwirkungen gehören trockener Mund, Übelkeit, Erbrechen, Harnstau, schmerzhafter rektaler Juckreiz, Halluzinationen, Demenz, Psychose, Koma, Tod und Mundgeruch!
Magie eignet sich nicht für alle!
Fraget euren Arzt oder Apotheker!
 

TOONY

BeitragFr, Jul 01, 2005 8:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Wieviele von euch Arbeiten noch an dem Code?

Wer hat überhaupt etwas hin bekommen?

Gehe zu Seite Zurück  1, 2, 3  Weiter

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group