Hallo habe eine Aufgabe bekommen einen Javacode zu schreiben. Dabei werden zwei Eingaben abverlangt die von 1-6 sein sollen, es handelt sich um ein Würfelspiel.
Bei einer 1 und einer 2 (Egal welcher der beiden Würfel den jeweiligen Wert hat gibt es 1000 Punkte;
Bei einem Pasch gibt es die Augenzahl mal 100 (Bei einer Drei zB 300);
Ansonsten gibt es 10* die Augenzahl wobei die höhere Zahl zuerst kommt (Bei 5 und 6 wäre das Ergebnis also 65);
Hier mein Javacode dazu:
import java.util.Scanner;
class Würfelspiel{
public static void main(String[]args){
Scanner scanner=new Scanner(System.in);
int e=0;
System.out.println(„Erste gewürfelte Zahl“);
int a=scanner.nextInt();
System.out.println(„Zweite gewürfelte Zahl“);
int b=scanner.nextInt();
if
((a^b==1)&&(a^b==2))
e=1000;
System.out.print("Das Ergebnis beträgt " +e);
else if (n==m)
{
e=m*100;
System.out.print("Das Ergebnis beträgt "+e);
}
else if (n>m)
{
System.out.print("Das Ergebnis beträgt "+n+m);
}
else if (n
also dein Code, sollte dir selber auffallen kann gar nicht funktionieren.
wo hast du n und m deklariert?
Wo sind die geschweiften klammern um deinen if Block?
Ich würde mal grob vermuten dein Code sollte so aussehen?
import java.util.Scanner;
class Würfelspiel{
public static void main(String[]args){
Scanner scanner=new Scanner(System.in);
int e=0;
System.out.println("Erste gewürfelte Zahl");
int a=scanner.nextInt();
System.out.println("Zweite gewürfelte Zahl");
int b=scanner.nextInt();
if
((a==1 && b==1)||(a==2 && b==2)){
e=1000;
System.out.print("Das Ergebnis beträgt " +e);
}
else if (a==b)
{
e=a\*100;
System.out.print("Das Ergebnis beträgt "+e);
}
else if (a\>b)
{
System.out.print("Das Ergebnis beträgt "+a+b);
}
else if (a
**Gruß**
Dabei werden zwei Eingaben abverlangt die von 1-6 sein sollen,
Von der fehlenden Eingabeüberprüfung mal abgesehen (ganze Zahl, kleiner gleich 6), stecken im Originalcode noch ein paar Fehler mehr drin.
((a^b==1)&&(a^b==2))
Für Potenzen verwendet man i.A. die Math.Pow()-Funktion (obwohl man im Programm nicht a hoch b rechnen will…). Ausserdem hat man „nur“ a,b und e definiert. Eclipse warnt auch mit „Resource leak: scanner is never closed“
Auf die Schnelle ein Vergleich (aber auch verbesserungswürdig):
…
int b=scanner.nextInt();
if
((a==1)&&(b==2))
{
e=1000;
System.out.print("Das Ergebnis beträgt " +e);
}
if (a==b)
{
e=a*100;
System.out.print("Das Ergebnis beträgt "+e);
}
else if (a>b)
{
System.out.print("Das Ergebnis beträgt "+a+b);
}
if (a