Hallo Zusammen. Ich habe ein Programm geschrieben, welches zufällige Rechenaufgaben stellt, welche der Benutzer beantworten muss. Nun habe ich das Problem, dass der Benutzer am Anfang auswählen darf, welche Rechenart er verwenden möchte. Diese soll jedoch nur am Anfang ein Mal abgefragt werden und für die Zukunftigen Fragen gespeichert bleiben. Wäre nett, wenn ihr mir bei dieser, ich denke simplen, Frage helfen könntet.
public class RechenTrainer{
private int zahl;
private int zahl2;
private int ergebnis;
private int antwort;
private int richtig = 0;
private char rechenzeichen;
private int falsch = 0;
private Terminal t = new Terminal();
public RechenTrainer() {
wiederholen();
}
public void wiederholen() {
do {
Auswahl();
Rechenart();
Eingabe();
Ergebnis();
Antwort();
rechenart = rechenart + 1;
} while (richtig < 5);
if (richtig == 5)
System.out.println("Du hast " + richtig + " Aufgaben richtig und " + falsch + " Aufgaben falsch gelöst");
}
public void Auswahl() {
zahl = (int) (Math.random() *10)+1;
zahl2 = (int) (Math.random() *10)+1;
}
public void Rechenart() {
do { System.out.println("Wähle deine Rechenart! (Mögliche Antwortmöglichkeiten = +,-,/,*)");
rechenzeichen = (t.liesZeile()).charAt(0); werden.
System.out.println("Okay, du hast die Rechenart" + rechenzeichen + " ausgewählt."); }
while (rechenart == 0);
}
public void Eingabe() {
System.out.println(zahl + "" + rechenzeichen + "" + zahl2 + "=");
antwort = Integer.parseInt(t.liesZeile());
}
public void Ergebnis() { //Antworten mit unterschiedlichen Rechenzeichen
if (rechenzeichen == '+') {
ergebnis = zahl + zahl2 ; }
else if (rechenzeichen == '-' ) {
ergebnis = zahl - zahl2 ; }
else if (rechenzeichen == '*' ) {
ergebnis = zahl * zahl2 ; }
else if (rechenzeichen == '/' ) {
ergebnis = zahl / zahl2 ; }
}
public void Antwort() {
if (antwort == ergebnis) {
System.out.println("Das Ergebniss ist richtig");
richtig = richtig + 1;
}
else {
System.out.println("Das Ergebniss ist leider falsch, die richtige Antwort ist " + ergebnis);
falsch = falsch + 1;
}
}
}
private int zahl;
private int zahl2;
private int ergebnis;
private int antwort;
private int richtig = 0;
private char rechenzeichen;
private int falsch = 0;
private Terminal t = new Terminal();
public RechenTrainer() {
wiederholen();
}
public void wiederholen() {
do {
Auswahl();
Rechenart();
Eingabe();
Ergebnis();
Antwort();
rechenart = rechenart + 1;
} while (richtig < 5);
if (richtig == 5)
System.out.println("Du hast " + richtig + " Aufgaben richtig und " + falsch + " Aufgaben falsch gelöst");
}
public void Auswahl() {
zahl = (int) (Math.random() *10)+1;
zahl2 = (int) (Math.random() *10)+1;
}
public void Rechenart() {
do { System.out.println("Wähle deine Rechenart! (Mögliche Antwortmöglichkeiten = +,-,/,*)");
rechenzeichen = (t.liesZeile()).charAt(0); werden.
System.out.println("Okay, du hast die Rechenart" + rechenzeichen + " ausgewählt."); }
while (rechenart == 0);
}
public void Eingabe() {
System.out.println(zahl + "" + rechenzeichen + "" + zahl2 + "=");
antwort = Integer.parseInt(t.liesZeile());
}
public void Ergebnis() { //Antworten mit unterschiedlichen Rechenzeichen
if (rechenzeichen == '+') {
ergebnis = zahl + zahl2 ; }
else if (rechenzeichen == '-' ) {
ergebnis = zahl - zahl2 ; }
else if (rechenzeichen == '*' ) {
ergebnis = zahl * zahl2 ; }
else if (rechenzeichen == '/' ) {
ergebnis = zahl / zahl2 ; }
}
public void Antwort() {
if (antwort == ergebnis) {
System.out.println("Das Ergebniss ist richtig");
richtig = richtig + 1;
}
else {
System.out.println("Das Ergebniss ist leider falsch, die richtige Antwort ist " + ergebnis);
falsch = falsch + 1;
}
}
}