Hallo liebe Leute,
ich hab mich wegen diesem Problem hier angemeldet. Ich versuche seit Tagen eine Lösung zu finden stehe aber immer wieder vor neuen Hürden und Fehlern. Ich habe die Aufgabe ein Programm zu schreiben, dass vom User eingegebene Werte miteinander vergleicht.
Also zuerst gebe ich T oder F ein, dann wird ein Operator abgefragt "&" oder "|" oder "^", dann ein weiteres mal T oder F eingeben( Groß - und Kleinschreibung soll möglich sein und wenn jeweils ein unerlaubtes Zeichen eingegeben wird soll eine passende Fehlermeldung erscheinen). Die eingegebenen Werte sollen dann eben das richtige Ergebnis ausspucken also T&T = True usw.
Jedenfalls berechnet mein Programm die falschen Werte. Ich bitte um Hilfe!
Tut mir leid. Wie füge ich einen Code ein?
Danke für eure Hilfe
________________________________________________________________________________________________________________________________________________________
ich hab mich wegen diesem Problem hier angemeldet. Ich versuche seit Tagen eine Lösung zu finden stehe aber immer wieder vor neuen Hürden und Fehlern. Ich habe die Aufgabe ein Programm zu schreiben, dass vom User eingegebene Werte miteinander vergleicht.
Also zuerst gebe ich T oder F ein, dann wird ein Operator abgefragt "&" oder "|" oder "^", dann ein weiteres mal T oder F eingeben( Groß - und Kleinschreibung soll möglich sein und wenn jeweils ein unerlaubtes Zeichen eingegeben wird soll eine passende Fehlermeldung erscheinen). Die eingegebenen Werte sollen dann eben das richtige Ergebnis ausspucken also T&T = True usw.
Jedenfalls berechnet mein Programm die falschen Werte. Ich bitte um Hilfe!
Tut mir leid. Wie füge ich einen Code ein?
Danke für eure Hilfe
________________________________________________________________________________________________________________________________________________________
Java:
package AnalyseMeb2;
public class AnalyseMeb2 {
public static void main(String[]args)
throws java.io.IOException {
boolean a = false;
boolean b = false;
char input1;
char input2;
char input3;
int operator = 0;
String error = "Bitte tippe T oder F ein";
String error2 = "Bitte wähle '&' oder '|' oder '^'";
System.out.println("Enter first Character");
input1 = (char) System.in.read();
if ((input1 == 'T') || (input1 == 't' )) a = true;
if ((input1 == 'F') || (input1 == 'f' )) a = false;
else {
System.out.println(error);
System.in.close();
}
input1 = (char) System.in.read();
input1 = (char) System.in.read();
System.out.println("Bitte geben Sie einen Operanden ein");
input2 = (char) System.in.read();
if(input2 == 38) { operator = 0; // &
if(input2 == 124) // |
operator = 1;
if(input2 == 94) // ^
operator = 2;
System.out.println("Bitte geben sie einen zweiten Character ein");
}
else {
System.out.println(error2);
}
input2 = (char) System.in.read();
input2 = (char) System.in.read();
input2 = (char) System.in.read();
System.out.println("Enter first Character");
input3 = (char) System.in.read();
if ((input3 == 'T') || (input3 == 't' )) {
a = true;
if ((input3 == 'F') || (input3 == 'f'))
a = false;
}
else {
System.out.println(error);
System.in.close();
}
//Figure out result
boolean result;
switch (operator) {
case 0:
result = a&b;
case 1:
result = a|b;
case 2:
result = a^b;
System.out.println("Das Ergebnis lautet: " );
System.out.println(result);
}
}
}
Zuletzt bearbeitet von einem Moderator: