Tan
Zur Navigation springen
Zur Suche springen
Beschreibung
Der Tangens wird durch die Funktion tan beschrieben. Sie erwartet einen Parameter und gibt einen Wert zurück.
Syntax
tan(String zeichenkette)
Parameter
- zeichenkette - ein Wert im Bogenmaß
Return Value
- Gibt den Wert des Tangens an der Stelle zurück.
Beispiele
tan('Pi/4') --> returns 1
tan('0') --> 0
JUnit Tests
@Before
public void beforeTest() {
placeFillInVariable(1, OMParser.parse("0"));
placeFillInVariable(2, OMParser.parse("Pi"));
placeExerciseVariable("a", OMParser.parse("0"));
}
@Test
public void testTan() {
assertTrue(0 == getEvaluator().getNumberResult("tan('0')"));
assertTrue(0 == getEvaluator().getNumberResult("tan('Pi')"));
assertTrue(0 == getEvaluator().getNumberResult("tan('-Pi')"));
assertTrue(1 == getEvaluator().getNumberResult("tan('Pi/4')"));
assertTrue(-1 == getEvaluator().getNumberResult("tan('-Pi/4')"));
}
@Test
public void testTanWithInput() {
assertTrue(0 == getEvaluator().getNumberResult("tan('[pos=1]')"));
assertTrue(1 ==getEvaluator().getNumberResult("tan('[pos=2]/4')"));
}
@Test
public void testTanWithVariables() {
assertTrue(0 == getEvaluator().getNumberResult("tan('[var=a]')"));
assertTrue(1 == getEvaluator().getNumberResult("tan('[var=PI]/4')")); //Rounding Error
}
@Test
public void testTanWithExpressions() {
assertTrue(0 == getEvaluator().getNumberResult("tan(tan(0))"));
assertTrue(0 == getEvaluator().getNumberResult("tan(tan(tan(0)))"));
}
@Test(expected=InvalidCASFunctionArgumentException.class)
public void testTanWithONECharacter(){
getEvaluator().getNumberResult("tan(a)");
}
@Test(expected=InvalidCASFunctionArgumentException.class)
public void testTanWithEmptyStringArgument() {
getEvaluator().getNumberResult(("tan('')"));
}
@Test(expected=InvalidCASFunctionArgumentException.class)
public void testTanWithEmptyArgument() {
getEvaluator().getNumberResult(("tan()"));
}
@Test(expected=UndefinedExerciseVariableException.class)
public void testTanWithoutExerciseVariable() {
getEvaluator().getNumberResult("tan('[var=j]')");
}
@Test(expected=UndefinedFillInVariableException.class)
public void testTanWithoutInput() {
getEvaluator().getNumberResult("tan('[pos=42]')");
}
Hinweise
- Berechnet nur den Tangens mit Werten im Bogenmaß. Der Gradmaß muss ggf. vorher umgewandelt werden.