[Java] Programmierung

Stefan

Well-known member
ID: 7203
L
30 April 2006
113
5
Hallo,

ich bin gerade dabei mich mit Java auseinander zu setzen. Jetzt habe ich eine Aufgabe gefunden, die ich gerne lösen würde, habe aber noch meine Probleme damit.

Zur Aufgabe:
Schreiben Sie ein Programm Pisquare, das eine beliebige ganze Zahl N einlist und anschließen einen Wert nach folgendem Schema berechnet:
6*(1/1²+1/2²+1/3²+....+1/N²)

Hier habe ich das Problem, dass ich nicht weis, wie ich den Wert in der Klammer berechnen soll.

Wäre nett wen mir einer helfen könnte und mir vielleicht auch einen "Code-Schnipsel" zur Verfügung stellen könnte.

Grüßle
Stefan
 
Code:
float sum;
for (int i = 1; i <= n; i++) {
sum += power(1/i, 2);
}

so in der Art, ist allerdings nur Pseudocode, sollte dir aber zeigen wies geht :)
 
Zuletzt bearbeitet:
Ich könnte dir den Code im C-Syntax (hier in PHP) geben, den du in Java umschreiben könntest.
PHP:
$res = 0;
for($x = 1; $x < $n; $x++)
{ 
  $res = $res + (6*pow($n, 2));
}
 
ist eigentlich ganz easy
wenn ich das richtig verstanden habe dann gehts so^^


int n; int zahl = 0;
eingabe von n...

for(int i = 1; i<= n; i++)
{
zahl = zahl+(1/sqrt(i));
}

float ergebnis = 6 * zahl;
 
Naja und aus Performancegründen, da es ja immer hoch 2 ist, kann man das ganze auch noch als Produkt schreiben.
 
Naja und aus Performancegründen, da es ja immer hoch 2 ist, kann man das ganze auch noch als Produkt schreiben.

neija ist nun die Frage ob nen Produkt oder Potenz schneller ist, das ist wohl abhängig von der Implementierung und wie man im Dualsystem potenziert (weiß ich nicht).
Also was wirklich schneller ist, ist schwer zu sagen.