Pi berechnen in Java BlueJ

Tyro

Rare-Mob
Mitglied seit
09.07.2007
Beiträge
429
Reaktionspunkte
2
Kommentare
4
Buffs erhalten
16
Hallo liebe Buffies,

ich hab atm ein ernsthaftes Problem, ich muss morgen eine Projektarbeit im Informatikuterricht abgeben zur Berechnung von Pi, die Aufgabenstellung lautet wie folgt:

Aufgabe 2: Entwicklung eines Algorithmus
Im Tauschverzeichnis liegt das BlueJ-Projekt „ProjektPi“ für die Berechnung der Zahl Pi bereit. Enthalten ist die Java-Klasse „Pi“, die bereits die main-Methode enthält, die ihr um den Java-Code für die Berechnung und die Ausgabe eures Ergebnisses erweitern müsst.

Ich hab shcon jede Menge durhcprobiert und kriege es net hin!
Folgende Sachen hat mir ein Kumpel vorbeigebracht wurden aber bereits verschlagen:

1.)
public void Pi()
{
double a = 0;
double b = 3;
a = 2*Math.sqrt(3);
while (a > b || a < b)
{
a = 2*a*b / (a+b);
b = Math.sqrt(a*b);
}
double PI = a;
System.out.println("Die unendliche Zahl Pi ist näherungsweise: "+PI);
}
Kann ich nicht benutzen da ich dne Befehl Math.sqrt nicht kenne!

2.)
public void Pi2(int tropfenzahl)
{
double pi = 0;
int innerhalb = 0;
int gesamt = tropfenzahl;

while (tropfenzahl > 0) // generiere Tropfen und addiere je nach Zugehörigkeit
{
double dotx = Math.random();
double doty = Math.random();

if (dotx*dotx + doty*doty <= 1)
{
// Punkt liegt innerhalb des Kreises
innerhalb++;
}
else
{
// Punkt liegt außerhalb des Kreises

}
tropfenzahl--;

}
pi = 4*(double)innerhalb/gesamt;
System.out.println("Die unendliche Zahl Pi ist näherungswesie: "+pi);
}
Hat uns unser Lehrer verboten zu nehmen!

Bisher hatten wir im Unterrich: int, float, double, for-schleifen. if-schleifen und daraus sollte der Code auch bestehen!

Kann mir wer weiter helfen, entweder mir ekrlären wie ich einen komplett neuen Code schreiben kann, oder den Befehl "math.sqrt" erklären kann (muss wohl dazu sagen,dass ich INfo erts seit 1,5 monatne hab also kann ich noch nicht soviel)?

Danke schonmal im vorraus!

mfg
Tyro
 
Java ist nicht meine Welt. Aber Math ist wohl eine Klasse / Bibliothek, die du in dein Projekt mitcompilen mußt.
 
java-forum

falls du fragen zwecks java hast , eine der ersten anlaufstellen

oder die API wälzen
wink.gif
 
Java ist nicht meine Welt. Aber Math ist wohl eine Klasse / Bibliothek, die du in dein Projekt mitcompilen mußt.
Jopp, Math ist die Mathe-Bibliothek und sqrt ist einfahc nur die Wurzel-Funktion.

Aber schau mal bei wikipedia vorbei und schlage PI nach.
Dort ist ein Pseudocode angegeben, der nur die von Dir genannten Befehle enthält.
Daraus sollte sich schnell der entsprechende Java-Code stricken lassen.
wink.gif
 
include math.java

würd ich zuerst oben hintu. Damit hast du schonmal die math datei "hinzugefügt"
Wie genau du pi ausrechen willst hilft dir wikipedia
biggrin.gif
(kp wie man das macht ..)
Die erste .. wie gesagt ansich brauchst du nur sqrt (wurzel ziehen .. sofern ich da richtig im kopf hab)
math.sqrt macht im grunde nur dass du die math.java öffnest und dort den befehl holst. (Wirst du später noch lernen mit super klassen etc
biggrin.gif
)

________________________________________________________________________________
_____
wenn du ansich nur pi willst sollte ansich das hier reichen

Code:
class java.lang.Math

static final double PI

Wobei das nur eine deklaration von pi ist und nicht die ausrechnung
________________________________________________________________________________
_______

aber laut aufgabenstellung brauchst du eine ausrechnung
biggrin.gif


AHJA !! DER 2TE TEXT
welcher von wiki ist sofern ich das richtig seh ..
der macht was total anderes als deine aufgabenstellung sagt
biggrin.gif
 
Zuletzt bearbeitet von einem Moderator:
OK, Danke für die Antwortne, werd mich mal dransetzen!
 
Hoffen wir nur, dein Lehrer ist nicht im Buffed-Forum unterwegs.
biggrin.gif
 
Hoffen wir nur, dein Lehrer ist nicht im Buffed-Forum unterwegs. biggrin.gif

Der erste Arbeitsauftrag lautete: Informiere dich über Pi und wie man den Code erstellt, also kann er mir nix! xD
 
Zurück