Gestern hab ich versucht mein Programm auf einem Online Compiler auszuführen. Dieser hat aber mir nur diese Fehlermeldung angezeigt:
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:862)
at java.util.Scanner.next(Scanner.java:1371)
at Kosinus.main(Kosinus.java:10)
Danach hab ich alle anderen Online Compiler ausprobiert, aber alle zeigen mir nur diese Fehlermeldung an. Diese Fehlermeldung wird mir aber in Eclipse nicht gezeigt und mein Programm funktioniert auf Eclipse einwandfrei. Kann mir jemand erklären, was ich falsch gemacht hab?
Mein Programm:
P.S:Sorry für die ganzen ifs hätte doch eher switch benutzen sollen.
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:862)
at java.util.Scanner.next(Scanner.java:1371)
at Kosinus.main(Kosinus.java:10)
Danach hab ich alle anderen Online Compiler ausprobiert, aber alle zeigen mir nur diese Fehlermeldung an. Diese Fehlermeldung wird mir aber in Eclipse nicht gezeigt und mein Programm funktioniert auf Eclipse einwandfrei. Kann mir jemand erklären, was ich falsch gemacht hab?
Mein Programm:
Java:
import java.util.Scanner;
public class Kosinus {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Hast du ein Winkel gegeben (ja/nein)");
String Antwort= sc.next();
if (Antwort.contentEquals("ja")) {
System.out.println("Welchen Winkel hast du gegeben (alpha/beta/gamma)");
String Antwort2 = sc.next();
if (Antwort2.contentEquals("alpha")) {
System.out.println("Wie groß ist alpha?:");
double alpha = sc.nextDouble();
System.out.println("Hast du die gegenüberliegende Seite gegeben(ja/nein):");
String Antwort3 = sc.next();
if (Antwort3.contentEquals("ja")) {
System.out.println("Wie groß diese Seite?:");
double a =sc.nextDouble();
System.out.println("Hast du noch einen Winkel oder eine Seite gegeben(Seite/Winkel):");
String Antwort4=sc.next();
if (Antwort4.contentEquals("Winkel")) {
System.out.println("Welcher Winkel (gamma/beta)");
String Antwort5 = sc.next();
if(Antwort5.contentEquals("gamma")) {
System.out.println("Wie groß ist gamma?:");
double gamma = sc.nextDouble();
double alpha1 =Math.toRadians(alpha);
double gamma1=Math.toRadians(gamma);
double c=(a*Math.sin(gamma1))/(Math.sin(alpha1));
double beta=180-(gamma+alpha);
double beta1=Math.toRadians(beta);
double b=(a*Math.sin(beta1))/(Math.sin(alpha1));
System.out.println("c="+c+" b="+b+" beta="+beta);
}
else if (Antwort5.contentEquals("beta")) {
System.out.println("Wie groß ist beta?:");
double beta = sc.nextDouble();
double alpha1 =Math.toRadians(alpha);
double beta1=Math.toRadians(beta);
double b=(a*Math.sin(beta1))/(Math.sin(alpha1));
double gamma=180-(beta+alpha);
double gamma1=Math.toRadians(gamma);
double c=(a*Math.sin(gamma1))/(Math.sin(alpha1));
System.out.println("c="+c+" b="+b+" gamma="+gamma);
}
else {
System.out.println("Falsch");
}
}
else if (Antwort4.contentEquals("Seite")) {
System.out.println("Welche Seite (c/b)");
String Antwort5 = sc.next();
if (Antwort5.contentEquals("c")) {
System.out.println("Wie groß ist c?:");
double c = sc.nextDouble();
double alpha1 = Math.toRadians(alpha);
double gamma1 = Math.asin((c*Math.sin(alpha1))/(a));
double gamma=Math.toDegrees(gamma1);
double beta = 180-(alpha+gamma);
double beta1=Math.toRadians(beta);
double b=(a*Math.sin(beta1))/(Math.sin(alpha1));
System.out.println("b="+b+" gamma="+gamma+" beta="+beta);
}
else if (Antwort5.contentEquals("b")) {
System.out.println("Wie groß ist b?:");
double b = sc.nextDouble();
double alpha1 = Math.toRadians(alpha);
double beta1 = Math.asin((b*Math.sin(alpha1))/(a));
double beta=Math.toDegrees(beta1);
double gamma = 180-(alpha+beta);
double gamma1=Math.toRadians(beta);
double c=(a*Math.sin(gamma1))/(Math.sin(alpha1));
System.out.println("c="+c+" gamma="+gamma+" beta="+beta);
}
else {
System.out.println("Falsche Antwort");
}
}
else {
System.out.println("Falsche Antwort");
}
}
else if (Antwort3.contentEquals("nein")) {
System.out.println("Hast du noch ein Winkel gegeben?(ja/nein):");
String Antwort4 = sc.next();
if (Antwort4.contentEquals("ja")) {
System.out.println("Beta/Gamma?");
String Antwort5 = sc.next();
if (Antwort5.contentEquals("Beta")) {
System.out.println("Wie groß ist Beta?");
double beta = sc.nextDouble();
System.out.println("Welche Seite hast du gegeben? (b/c)");
String Antwort6 = sc.next();
if (Antwort6.contentEquals("b")) {
System.out.println("Wie groß ist b?:");
double b = sc.nextDouble();
double beta1 = Math.toRadians(beta);
double alpha1 = Math.toRadians(alpha);
double gamma = 180-(alpha+beta);
double gamma1 = Math.toRadians(gamma);
double c = (b*Math.sin(gamma1))/(Math.sin(beta1));
double a = (b*Math.sin(alpha1))/(Math.sin(beta1));
System.out.println("a="+a+" c="+c+" gamma="+gamma);
}
else if (Antwort6.contentEquals("c")) {
System.out.println("Wie groß ist c?:");
double c = sc.nextDouble();
double gamma = 180-(alpha+beta);
double gamma1 = Math.toRadians(gamma);
double alpha1 = Math.toRadians(alpha);
double beta1 = Math.toRadians(beta);
double a = (c*Math.sin(alpha1))/(Math.sin(gamma1));
double b = (c*Math.sin(beta1))/(Math.sin(gamma1));
System.out.println("a="+" b="+b+" gamma="+gamma);
}
else {
System.out.println("Falsche Antwort");
}
}
else if (Antwort5.contentEquals("Gamma")) {
System.out.println("Wie groß ist Gamma?");
double gamma = sc.nextDouble();
System.out.println("Welche Seite hast du gegeben? (b/c)");
String Antwort6 = sc.next();
if (Antwort6.contentEquals("b")) {
System.out.println("Wie groß ist b?:");
double b = sc.nextDouble();
double beta = 180-(gamma+alpha);
double beta1 = Math.toRadians(beta);
double alpha1 = Math.toRadians(alpha);
double gamma1 = Math.toRadians(gamma);
double a = (b*Math.sin(alpha1))/(Math.sin(beta1));
double c = (b*Math.sin(gamma1))/(Math.sin(beta1));
System.out.println("a="+a+" c="+c+" beta="+beta);
}
else if (Antwort6.contentEquals("c")) {
System.out.println("Wie groß ist c?:");
double c = sc.nextDouble();
double alpha1 = Math.toRadians(alpha);
double gamma1 = Math.toRadians(gamma);
double beta = 180-(alpha+gamma);
double beta1 = Math.toRadians(beta);
double a = (c*Math.sin(alpha1))/(Math.sin(gamma1));
double b = (c*Math.sin(beta1))/(Math.sin(gamma1));
System.out.println("a="+a+" b="+b+" beta="+beta);
}
else {
System.out.println("Falsche Antwort");
}
}
else {
System.out.println("Falsche Antwort");
}
}
else if (Antwort4.contentEquals("nein")) {
System.out.println("Wie groß ist b?:");
double b = sc.nextDouble();
System.out.println("Wie groß ist c?:");
double c = sc.nextDouble();
double alpha1 = Math.toRadians(alpha);
double a = Math.sqrt(c*c+b*b-2*c*b*Math.cos(alpha1));
double beta1 = Math.asin((b*Math.sin(alpha1))/(a));
double beta = Math.toDegrees(beta1);
double gamma = 180-(beta+alpha);
System.out.println("a="+a+" beta="+beta+" gamma="+gamma);
}
else {
System.out.println("Falsche Antwort");
}
}
else {
System.out.println("Falsche Antwort");
}
}
else if (Antwort2.contentEquals("beta")) {
System.out.println("Wie groß ist beta?:");
double beta = sc.nextDouble();
System.out.println("Hast du die gegenüberliegende Seite gegeben(ja/nein):");
String Antwort3 = sc.next();
if (Antwort3.contentEquals("ja")) {
System.out.println("Wie groß diese Seite?:");
double b =sc.nextDouble();
System.out.println("Hast du noch einen Winkel oder eine Seite gegeben(Seite/Winkel):");
String Antwort4=sc.next();
if (Antwort4.contentEquals("Winkel")) {
System.out.println("Welcher Winkel (gamma/alpha)");
String Antwort5 = sc.next();
if(Antwort5.contentEquals("gamma")) {
System.out.println("Wie groß ist gamma?:");
double gamma = sc.nextDouble();
double gamma1 =Math.toRadians(gamma);
double beta1=Math.toRadians(beta);
double c=(b*Math.sin(gamma1))/(Math.sin(beta1));
double alpha=180-(beta+gamma);
double alpha1=Math.toRadians(alpha);
double a=(c*Math.sin(alpha1))/(Math.sin(gamma1));
System.out.println("c="+c+" a="+a+" alpha="+alpha);
}
else if (Antwort5.contentEquals("alpha")) {
System.out.println("Wie groß ist alpha?:");
double alpha = sc.nextDouble();
double alpha1 =Math.toRadians(alpha);
double beta1=Math.toRadians(beta);
double a=(b*Math.sin(alpha1))/(Math.sin(beta1));
double gamma=180-(beta+alpha);
double gamma1=Math.toRadians(gamma);
double c=(b*Math.sin(gamma1))/(Math.sin(beta1));
System.out.println("c="+c+" a="+a+" gamma="+gamma);
}
else {
System.out.println("Falsch");
}
}
else if (Antwort4.contentEquals("Seite")) {
System.out.println("Welche Seite (a/c)");
String Antwort5 = sc.next();
if (Antwort5.contentEquals("a")) {
System.out.println("Wie groß ist a?:");
double a = sc.nextDouble();
double beta1 = Math.toRadians(beta);
double alpha1 = Math.asin((a*Math.sin(beta1))/(b));
double alpha=Math.toDegrees(alpha1);
double gamma = 180-(alpha+beta);
double gamma1=Math.toRadians(gamma);
double c=(a*Math.sin(gamma1))/(Math.sin(alpha1));
System.out.println("c="+c+" gamma="+gamma+" alpha="+alpha);
}
else if (Antwort5.contentEquals("c")) {
System.out.println("Wie groß ist c?:");
double c = sc.nextDouble();
double beta1 = Math.toRadians(beta);
double gamma1 = Math.asin((c*Math.sin(beta1))/(b));
double gamma=Math.toDegrees(gamma1);
double alpha = 180-(gamma+beta);
double alpha1=Math.toRadians(alpha);
double a=(b*Math.sin(alpha1))/(Math.sin(beta1));
System.out.println("a="+a+" gamma="+gamma+" alpha="+alpha);
}
else {
System.out.println("Falsche Antwort");
}
}
else {
System.out.println("Falsche Antwort");
}
}
else if (Antwort3.contentEquals("nein")) {
System.out.println("Hast du noch ein Winkel gegeben?(ja/nein):");
String Antwort4 = sc.next();
if (Antwort4.contentEquals("ja")) {
System.out.println("Alpha/Gamma?");
String Antwort5 = sc.next();
if (Antwort5.contentEquals("Alpha")) {
System.out.println("Wie groß ist alpha?");
double alpha = sc.nextDouble();
System.out.println("Welche Seite hast du gegeben? (a/c)");
String Antwort6 = sc.next();
if (Antwort6.contentEquals("a")) {
System.out.println("Wie groß ist a?:");
double a = sc.nextDouble();
double alpha1 = Math.toRadians(alpha);
double beta1 = Math.toRadians(beta);
double gamma = 180-(alpha+beta);
double gamma1 = Math.toRadians(gamma);
double b = (a*Math.sin(beta1))/(Math.sin(alpha1));
double c = (a*Math.sin(gamma1))/(Math.sin(alpha1));
System.out.println("b="+b+" c="+c+" gamma="+gamma);
}
else if (Antwort6.contentEquals("c")) {
System.out.println("Wie groß ist c?:");
double c = sc.nextDouble();
double gamma = 180-(alpha+beta);
double gamma1 = Math.toRadians(gamma);
double beta1 = Math.toRadians(beta);
double alpha1 = Math.toRadians(alpha);
double b = (c*Math.sin(beta1))/(Math.sin(gamma1));
double a = (c*Math.sin(alpha1))/(Math.sin(gamma1));
System.out.println("a="+a+" b="+b+" gamma="+gamma);
}
else {
System.out.println("Falsche Antwort");
}
}
else if (Antwort5.contentEquals("Gamma")) {
System.out.println("Wie groß ist Gamma?");
double gamma = sc.nextDouble();
System.out.println("Welche Seite hast du gegeben? (a/c)");
String Antwort6 = sc.next();
if (Antwort6.contentEquals("a")) {
System.out.println("Wie groß ist a?:");
double a = sc.nextDouble();
double alpha = 180 -(beta+gamma);
double alpha1 = Math.toRadians(alpha);
double gamma1 = Math.toRadians(gamma);
double beta1 = Math.toRadians(beta);
double b = (a*Math.sin(beta1))/(Math.sin(alpha1));
double c = (a*Math.sin(gamma1))/(Math.sin(alpha1));
System.out.println("b="+b+" c="+c+" alpha="+alpha);
}
else if (Antwort6.contentEquals("c")) {
System.out.println("Wie groß ist c?:");
double c = sc.nextDouble();
double gamma1 = Math.toRadians(gamma);
double beta1 = Math.toRadians(beta);
double alpha = 180-(beta+gamma);
double alpha1 = Math.toRadians(alpha);
double b = (c*Math.sin(beta1))/(Math.sin(gamma1));
double a = (c*Math.sin(alpha1))/(Math.sin(gamma1));
System.out.println("a="+a+" b="+b+" alpha="+alpha);
}
else {
System.out.println("Falsche Antwort");
}
}
else {
System.out.println("Falsche Antwort");
}
}
else if (Antwort4.contentEquals("nein")) {
System.out.println("Wie groß ist a?:");
double a = sc.nextDouble();
System.out.println("Wie groß ist c?:");
double c = sc.nextDouble();
double beta1 = Math.toRadians(beta);
double b = Math.sqrt(c*c+a*a-2*a*c*Math.cos(beta1));
double gamma1 = Math.asin((c*Math.sin(beta1))/(b));
double gamma = Math.toDegrees(gamma1);
double alpha = 180-(gamma+beta);
System.out.println("b="+b+" alpha="+alpha+" gamma="+gamma);
}
else {
System.out.println("Falsche Antwort");
}
}
else {
System.out.println("Falsche Antwort");
}
}
else if (Antwort2.contentEquals("gamma")) {
System.out.println("Wie groß ist gamma?:");
double gamma = sc.nextDouble();
System.out.println("Hast du die gegenüberliegende Seite gegeben(ja/nein):");
String Antwort3 = sc.next();
if (Antwort3.contentEquals("ja")) {
System.out.println("Wie groß diese Seite?:");
double c =sc.nextDouble();
System.out.println("Hast du noch einen Winkel oder eine Seite gegeben(Seite/Winkel):");
String Antwort4=sc.next();
if (Antwort4.contentEquals("Winkel")) {
System.out.println("Welcher Winkel (beta/alpha)");
String Antwort5 = sc.next();
if(Antwort5.contentEquals("beta")) {
System.out.println("Wie groß ist beta?:");
double beta = sc.nextDouble();
double gamma1 =Math.toRadians(gamma);
double beta1=Math.toRadians(beta);
double b=(c*Math.sin(beta1))/(Math.sin(gamma1));
double alpha=180-(beta+gamma);
double alpha1=Math.toRadians(alpha);
double a=(c*Math.sin(alpha1))/(Math.sin(gamma1));
System.out.println("b="+b+" a="+a+" alpha="+alpha);
}
else if (Antwort5.contentEquals("alpha")) {
System.out.println("Wie groß ist alpha?:");
double alpha = sc.nextDouble();
double gamma1 =Math.toRadians(gamma);
double alpha1=Math.toRadians(alpha);
double a=(c*Math.sin(alpha1))/(Math.sin(gamma1));
double beta=180-(alpha+gamma);
double beta1=Math.toRadians(beta);
double b=(c*Math.sin(beta1))/(Math.sin(gamma1));
System.out.println("b="+b+" a="+a+" beta="+beta);
}
else {
System.out.println("Falsch");
}
}
else if (Antwort4.contentEquals("Seite")) {
System.out.println("Welche Seite (a/b)");
String Antwort5 = sc.next();
if (Antwort5.contentEquals("a")) {
System.out.println("Wie groß ist a?:");
double a = sc.nextDouble();
double gamma1 = Math.toRadians(gamma);
double alpha1 = Math.asin((a*Math.sin(gamma1))/(c));
double alpha=Math.toDegrees(alpha1);
double beta= 180-(alpha+gamma);
double beta1=Math.toRadians(beta);
double b=(c*Math.sin(beta1))/(Math.sin(gamma1));
System.out.println("b="+b+" alpha="+alpha+" beta="+beta);
}
else if (Antwort5.contentEquals("b")) {
System.out.println("Wie groß ist b?:");
double b = sc.nextDouble();
double gamma1 = Math.toRadians(gamma);
double beta1 = Math.asin((b*Math.sin(gamma1))/(c));
double beta=Math.toDegrees(beta1);
double alpha = 180-(gamma+beta);
double alpha1=Math.toRadians(alpha);
double a=(c*Math.sin(alpha1))/(Math.sin(gamma1));
System.out.println("a="+a+" beta="+beta+" alpha="+alpha);
}
else {
System.out.println("Falsche Antwort");
}
}
else {
System.out.println("Falsche Antwort");
}
}
else if (Antwort3.contentEquals("nein")) {
System.out.println("Hast du noch ein Winkel gegeben?(ja/nein):");
String Antwort4 = sc.next();
if (Antwort4.contentEquals("ja")) {
System.out.println("Alpha/Beta?");
String Antwort5 = sc.next();
if (Antwort5.contentEquals("Alpha")) {
System.out.println("Wie groß ist Alpha?");
double alpha = sc.nextDouble();
System.out.println("Welche Seite hast du gegeben? (a/b)");
String Antwort6 = sc.next();
if (Antwort6.contentEquals("a")) {
System.out.println("Wie groß ist a?:");
double a = sc.nextDouble();
double beta = 180-(alpha+gamma);
double beta1 = Math.toRadians(beta);
double alpha1 = Math.toRadians(alpha);
double gamma1 = Math.toRadians(gamma);
double c = (a*Math.sin(gamma1))/(Math.sin(alpha1));
double b = (a*Math.sin(beta1))/(Math.sin(alpha1));
System.out.println("b="+b+" c="+c+" beta="+beta);
}
else if (Antwort6.contentEquals("b")) {
System.out.println("Wie groß ist b?:");
double b = sc.nextDouble();
double beta = 180-(alpha+gamma);
double beta1 = Math.toRadians(beta);
double alpha1 = Math.toRadians(alpha);
double gamma1 = Math.toRadians(gamma);
double c = (b*Math.sin(gamma1))/(Math.sin(beta1));
double a = (b*Math.sin(alpha1))/(Math.sin(beta1));
System.out.println("a="+a+" c="+c+" beta="+beta);
}
}
else if (Antwort5.contentEquals("Beta")) {
System.out.println("Wie groß ist Beta?");
double beta = sc.nextDouble();
System.out.println("Welche Seite hast du gegeben? (a/b)");
String Antwort6 = sc.next();
if (Antwort6.contentEquals("a")) {
System.out.println("Wie groß ist a?:");
double a = sc.nextDouble();
double alpha = 180-(gamma+beta);
double alpha1 = Math.toRadians(alpha);
double beta1 = Math.toRadians(beta);
double gamma1 = Math.toRadians(gamma);
double b = (a*Math.sin(beta1))/(Math.sin(alpha1));
double c = (a*Math.sin(gamma1))/(Math.sin(alpha1));
System.out.println("b="+b+" c="+c+" alpha="+alpha);
}
else if (Antwort6.contentEquals("b")) {
System.out.println("Wie groß ist b?:");
double b = sc.nextDouble();
double alpha = 180-(gamma+beta);
double alpha1 = Math.toRadians(alpha);
double beta1 = Math.toRadians(beta);
double gamma1 = Math.toRadians(gamma);
double a = (b*Math.sin(alpha1))/(Math.sin(beta1));
double c = (b*Math.sin(gamma1))/(Math.sin(beta1));
System.out.println("a="+a+" c="+c+" alpha="+alpha);
}
else {
System.out.println("Falsche Antwort");
}
}
}
else if (Antwort4.contentEquals("nein")) {
System.out.println("Wie groß ist a?:");
double a = sc.nextDouble();
System.out.println("Wie groß ist b?:");
double b = sc.nextDouble();
double gamma1 = Math.toRadians(gamma);
double c = Math.sqrt(a*a+b*b-2*a*b*Math.cos(gamma1));
double beta1 = Math.asin((b*Math.sin(gamma1))/(c));
double beta = Math.toDegrees(beta1);
double alpha = 180-(beta+gamma);
System.out.println("c="+c+" alpha="+alpha+" beta="+beta);
}
else {
System.out.println("Falsche Antwort");
}
}
else {
System.out.println("Falsche Antwort");
}
}
}
else if (Antwort.contentEquals("nein")) {
System.out.println("Wie lang ist die Seite a?:");
double a = sc.nextDouble();
System.out.println("Wie lang ist die Seite b?:");
double b = sc.nextDouble();
System.out.println("Wie lang ist die Seite c?:");
double c = sc.nextDouble();
double gamma1 = Math.acos((c*c-a*a-b*b)/(-2*a*b));
double gamma = Math.toDegrees(gamma1);
double alpha1 = Math.acos((a*a-c*c-b*b)/(-2*c*b));
double alpha = Math.toDegrees(alpha1);
double beta = 180-(alpha+gamma);
System.out.println("alpha="+alpha+" beta ="+beta+" gamma="+gamma);
}
else {
System.out.println("Falsche Antwort");
}
}
}