forked from IF-LK-2020/rechenmaschine
Negative Zahlen implementiert im format (-#)
This commit is contained in:
@@ -241,7 +241,11 @@ public class Rechenmaschine {
|
||||
currentToken.append(buchstabe);
|
||||
state = 2;
|
||||
}
|
||||
case '+', '-', '*', '/' -> {
|
||||
case '+', '-' -> {
|
||||
tokenlist.append(new Token("OPERATOR",Character.toString(buchstabe)));
|
||||
state = 5;
|
||||
}
|
||||
case '*', '/' -> {
|
||||
System.out.println("Unmittelbar nach ( darf kein Operator oder ) folgen.");
|
||||
return false;
|
||||
}
|
||||
@@ -321,7 +325,7 @@ public class Rechenmaschine {
|
||||
state = 1;
|
||||
break;
|
||||
} else if( currentToken.getToken().equals("(")){
|
||||
state = 0;
|
||||
state = 2;
|
||||
break;
|
||||
} else if( currentToken.getToken().equals(")")){
|
||||
state = 1;
|
||||
@@ -345,11 +349,28 @@ public class Rechenmaschine {
|
||||
return false;
|
||||
} else if( currentToken.getToken().equals(")")) {
|
||||
state = 1;
|
||||
break;
|
||||
} else {
|
||||
fehler = "Unbekanntes Token: "+currentToken.getType();
|
||||
return false;
|
||||
}
|
||||
case 2:
|
||||
if( currentToken.getType().equals("OPERATOR") ) {
|
||||
state = 0;
|
||||
break;
|
||||
} else if( currentToken.getType().equals("OPERAND") ) {
|
||||
state = 1;
|
||||
break;
|
||||
} else if( currentToken.getToken().equals("(")){
|
||||
state = 2;
|
||||
break;
|
||||
} else if( currentToken.getToken().equals(")")){
|
||||
state = 1;
|
||||
break;
|
||||
} else {
|
||||
fehler = "Unbekanntes Token: "+currentToken.getType();
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
tokenlist.next();
|
||||
|
||||
Reference in New Issue
Block a user