[CODE lang="java" title="Pi"]import java.util.*;
public class Pi
{
public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
System.out.println("Mit welchem Beispiel wollen sie rechnen?");
System.out.println("(1).Wallissche Produkt");
System.out.println("(2).Leibnitz Reihe");
System.out.println("(3).Formel von Kelallur Nilakantha Somayaji");
System.out.println("(4).Formel von Euler ");
char eingabeBeispiel = sc.next().charAt(0);
/*if (eingabeBeispiel =='1') {
System.out.println("Geben sie eine Zahl ein");
int eingabe = sc.nextInt();
double piHalbe = 1.0;
double j = 1.0;
for (double i = 1; i < eingabe; i++, j++) {
if (i % 2 == 0) {
piHalbe *= (j / (j + 1));
}else {
piHalbe *= ((j + 1) / j);
}
}
double k=2*piHalbe;
System.out.println("ergebnis:" + k);
}*/
/*if (eingabeBeispiel =='2') {
System.out.println("Geben sie eine Zahl ein");
int zahl = sc.nextInt();
double s = 1;
double ergebnis = 0;
for (int rechner = 1; rechner < zahl; rechner=rechner+2) {
ergebnis += s/rechner;
s = -s;
}
ergebnis = ergebnis * 4;
System.out.println("PI ist:" + ergebnis);
}*/
if (eingabeBeispiel =='3') {
System.out.println("Geben sie eine Zahl ein");
int eingabe = sc.nextInt();
double rechnung2 = 0;
double s = -4;
for (int rechner = 3; rechner < eingabe; rechner = rechner +2) {
int rechner2 = rechner;
double rechnung = (rechner2 * rechner2 *rechner2) - rechner2;
rechnung2 += s/rechnung;
s = -s;
double sZwei = 4;
double rechnungVier = 0;
for (int rechnerDrei = 5; rechnerDrei < eingabe; rechnerDrei = rechnerDrei +2) {
int rechnerVier = rechnerDrei;
int rechnungDrei = (rechnerVier^3) -rechnerVier;
rechnungVier += sZwei/rechnungDrei;
if (rechnung2 == rechnung2) {
double Loesung = rechnung2 + rechnungVier;
rechnung = -rechnung;
break;
}
else if (rechnung2 == -rechnung2) {
double Loesung = rechnung2 - rechnungVier;
System.out.println("PI=" + Loesung +3);
}
}
}
}
} } [/CODE]
Pi=3+4/3^3-3 - 4/5^3-5 + 4/7^3-7 - 4/9^3-9 +...
Ich verstehe nicht warum Beispiel "´3" nicht funktioniert.
Es soll am ende Pi rauskommen
public class Pi
{
public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
System.out.println("Mit welchem Beispiel wollen sie rechnen?");
System.out.println("(1).Wallissche Produkt");
System.out.println("(2).Leibnitz Reihe");
System.out.println("(3).Formel von Kelallur Nilakantha Somayaji");
System.out.println("(4).Formel von Euler ");
char eingabeBeispiel = sc.next().charAt(0);
/*if (eingabeBeispiel =='1') {
System.out.println("Geben sie eine Zahl ein");
int eingabe = sc.nextInt();
double piHalbe = 1.0;
double j = 1.0;
for (double i = 1; i < eingabe; i++, j++) {
if (i % 2 == 0) {
piHalbe *= (j / (j + 1));
}else {
piHalbe *= ((j + 1) / j);
}
}
double k=2*piHalbe;
System.out.println("ergebnis:" + k);
}*/
/*if (eingabeBeispiel =='2') {
System.out.println("Geben sie eine Zahl ein");
int zahl = sc.nextInt();
double s = 1;
double ergebnis = 0;
for (int rechner = 1; rechner < zahl; rechner=rechner+2) {
ergebnis += s/rechner;
s = -s;
}
ergebnis = ergebnis * 4;
System.out.println("PI ist:" + ergebnis);
}*/
if (eingabeBeispiel =='3') {
System.out.println("Geben sie eine Zahl ein");
int eingabe = sc.nextInt();
double rechnung2 = 0;
double s = -4;
for (int rechner = 3; rechner < eingabe; rechner = rechner +2) {
int rechner2 = rechner;
double rechnung = (rechner2 * rechner2 *rechner2) - rechner2;
rechnung2 += s/rechnung;
s = -s;
double sZwei = 4;
double rechnungVier = 0;
for (int rechnerDrei = 5; rechnerDrei < eingabe; rechnerDrei = rechnerDrei +2) {
int rechnerVier = rechnerDrei;
int rechnungDrei = (rechnerVier^3) -rechnerVier;
rechnungVier += sZwei/rechnungDrei;
if (rechnung2 == rechnung2) {
double Loesung = rechnung2 + rechnungVier;
rechnung = -rechnung;
break;
}
else if (rechnung2 == -rechnung2) {
double Loesung = rechnung2 - rechnungVier;
System.out.println("PI=" + Loesung +3);
}
}
}
}
} } [/CODE]
Pi=3+4/3^3-3 - 4/5^3-5 + 4/7^3-7 - 4/9^3-9 +...
Ich verstehe nicht warum Beispiel "´3" nicht funktioniert.
Es soll am ende Pi rauskommen