change function names to lowerCamelCase
parent
0d993bff48
commit
786e4e816e
|
|
@ -6,16 +6,16 @@ public class Rekursiver_Rechner {
|
|||
private static Scanner sc;
|
||||
public static void main(String[] args) {
|
||||
sc = new Scanner(System.in);
|
||||
Menu();
|
||||
menu();
|
||||
System.out.println("Ende.");
|
||||
}
|
||||
|
||||
public static double RekursiveSquentielleBerechnung(String formel) {
|
||||
public static double rekursiveSquentielleBerechnung(String formel) {
|
||||
//Todo: Implementiere den Rechner rekursiv.
|
||||
return 0.0;
|
||||
}
|
||||
|
||||
public static void Menu() {
|
||||
public static void menu() {
|
||||
Boolean ende = false;
|
||||
while(!ende) {
|
||||
System.out.println("Schreiben Sie eine Rechnung die nach \"Sequentielle Eingabe\" berechnet werden soll (\"exit\" to quit):");
|
||||
|
|
@ -29,7 +29,7 @@ public class Rekursiver_Rechner {
|
|||
System.out.println("Die Eingegebene Rechnung ist nicht valide. Probieren Sie es nochmal.");
|
||||
continue;
|
||||
}
|
||||
System.out.println("Das Ergebniss ist: "+RekursiveSquentielleBerechnung(eingabe));
|
||||
System.out.println("Das Ergebniss ist: "+rekursiveSquentielleBerechnung(eingabe));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -46,7 +46,7 @@ public class Rekursiver_Rechner {
|
|||
for(int i = 0; i<formel.length(); i++) {
|
||||
if((formel.charAt(i)=='+'||formel.charAt(i)=='-'||formel.charAt(i)=='/'||formel.charAt(i)=='*')) {
|
||||
endNumber = i;
|
||||
if(!CanParseStringToDouble(formel.substring(startNumber,endNumber))) {
|
||||
if(!canParseStringToDouble(formel.substring(startNumber,endNumber))) {
|
||||
return false;
|
||||
} else {
|
||||
startNumber = endNumber+1;
|
||||
|
|
@ -59,7 +59,7 @@ public class Rekursiver_Rechner {
|
|||
return true;
|
||||
}
|
||||
|
||||
public static Boolean CanParseStringToDouble(String n) {
|
||||
public static Boolean canParseStringToDouble(String n) {
|
||||
if(n == "") {
|
||||
n = "0.0";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,55 +7,55 @@ import org.junit.jupiter.api.Test;
|
|||
class Rekursiver_Rechner_Test {
|
||||
|
||||
@Test
|
||||
void NormaleRechnungen() {
|
||||
void testNormaleRechnungen() {
|
||||
String testRechnung = "5+5*5";
|
||||
assertEquals(50.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(50.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5*5+5";
|
||||
assertEquals(30.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(30.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5+5";
|
||||
assertEquals(10.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(10.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5-5";
|
||||
assertEquals(0.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(0.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5*5";
|
||||
assertEquals(25.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(25.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5/5";
|
||||
assertEquals(1.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(1.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "-5";
|
||||
assertEquals(-5.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(-5.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
}
|
||||
|
||||
@Test
|
||||
void EdgeCases() {
|
||||
void testEdgeCases() {
|
||||
String testRechnung = "5+";
|
||||
assertEquals(5.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(5.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5-";
|
||||
assertEquals(5.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(5.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5/";
|
||||
assertEquals(5.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(5.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5*";
|
||||
assertEquals(5.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(5.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5+++";
|
||||
assertEquals(5.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(5.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5---";
|
||||
assertEquals(5.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(5.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5///";
|
||||
assertEquals(5.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(5.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5***";
|
||||
assertEquals(5.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(5.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5+-/*";
|
||||
assertEquals(5.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(5.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "+";
|
||||
assertEquals(0.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(0.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "-";
|
||||
assertEquals(0.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(0.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "/";
|
||||
assertEquals(0.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(0.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "*";
|
||||
assertEquals(0.0, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(0.0, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "5/0";
|
||||
assertEquals(Double.POSITIVE_INFINITY, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(Double.POSITIVE_INFINITY, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
testRechnung = "-5/0";
|
||||
assertEquals(Double.NEGATIVE_INFINITY, Rekursiver_Rechner.RekursiveSquentielleBerechnung(testRechnung));
|
||||
assertEquals(Double.NEGATIVE_INFINITY, Rekursiver_Rechner.rekursiveSquentielleBerechnung(testRechnung));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue