Seite 1 von 1

Praktikum 1 Task 1 Tests Klammer fehlt

Verfasst: 3. Mai 2015 19:37
von LukasP
Ich denke in Zeile 144 in TestTask1.java fehlt eine oeffnende Klammer.

String[] match2 = {"(", "14.5", "+", "2", "-", "1765", "*", "13.1", "/", "78", ")", "+", "33.7", ")"};

Es sei denn, die Klammer wurde absichtlich weggelassen, um Fehler zu provozieren.

Re: Praktikum 1 Task 1 Tests Klammer fehlt

Verfasst: 3. Mai 2015 20:13
von charfi90
Es fehlt keine öffnende Klammer .

Re: Praktikum 1 Task 1 Tests Klammer fehlt

Verfasst: 3. Mai 2015 20:21
von LukasP
Die schliessende Klammer bei [10] bezieht sich doch auf die oeffnende Klammer bei [0], die schliessende Klammer bei [13] hat dann aber kein Gegenstueck soweit ich sehen kann.

Re: Praktikum 1 Task 1 Tests Klammer fehlt

Verfasst: 3. Mai 2015 22:01
von felicis
Deine Verwunderung ist verständlich, aber schau mal genauer in die Testklasse:

Code: Alles auswählen

String[] match = {"(", "14.5", "+", "2", "-", "1765", "*", "13.1", "/", "78", ")"};
		assertMatch(match, ml);
		
		//Add some new elements...
		ml.addElement(new MathElement("+"));
		ml.addElement(new MathElement("3"));
		ml.addElement(new MathElement("3"));
		ml.addElement(new MathElement("."));
		ml.addElement(new MathElement("7"));
		ml.addElement(new MathElement(")"));	
Hier werden in das (noch syntaktisch korrekte) StringArray die Elemente "+", "3", "3", ".", "7" und ")" hinzugefügt (Achtung: Nur EINE Klammer!). Damit wird nur eine Klammer eingefügt, und die Syntax ist verletzt! Das ist hier aber egal, da ja nur auf AssembleNumbers getestet wird und da eine Klammer mehr oder weniger keinen Einfluss auf die Auswertung der Methoden und damit den Test hat.

:D
felicis