Exp: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
|||
Zeile 23: | Zeile 23: | ||
====JUnit Tests==== | ====JUnit Tests==== | ||
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed"> | <syntaxhighlight lang="java" class="mw-collapsible mw-collapsed"> | ||
@Test | |||
public void testExp(){ | |||
assertTrue(1 == getEvaluator().getNumberResult("exp(0)")); | |||
assertTrue(2.71828182845 < getEvaluator().getNumberResult("exp(1)") && getEvaluator().getNumberResult("exp(1)") < 2.71828182846); | |||
assertTrue(0 == getEvaluator().getNumberResult("exp(-1000)")); | |||
assertTrue(0.9048374180359595 == getEvaluator().getNumberResult("exp(-0.1)")); | |||
} | |||
@Test | |||
public void testExpWithInput(){ | |||
assertTrue(1 == getEvaluator().getNumberResult("exp([pos=1])")); | |||
assertTrue(22026.465794806718 == getEvaluator().getNumberResult("exp([pos=2])")); | |||
} | |||
@Test | |||
public void testExpWithVariables(){ | |||
assertTrue(1 == getEvaluator().getNumberResult("exp([var=a])")); | |||
assertTrue(22026.465794806718 == getEvaluator().getNumberResult("exp([var=b])")); | |||
} | |||
@Test | |||
public void testExpWithPointNumber(){ | |||
assertTrue(getEvaluator().getNumberResult("exp(0.1)") == getEvaluator().getNumberResult("exp(.1))")); | |||
} | |||
@Test | |||
public void testExpWithExpressions(){ | |||
assertTrue(1 == getEvaluator().getNumberResult("exp(exp(-1000))")); | |||
} | |||
@Test(expected=InvalidEvaluatorFunctionArgumentException.class) | |||
public void testExpWithWrongInputCharacter(){ | |||
getEvaluator().getNumberResult("exp(a)"); | |||
} | |||
@Test(expected=UnsupportedEvaluatorFunctionException.class) | |||
public void testExpWithTwoArguments(){ | |||
getEvaluator().getNumberResult("exp(0, 1)"); | |||
} | |||
@Test(expected=UnsupportedEvaluatorFunctionException.class) | |||
public void testExpWithThreeArguments(){ | |||
getEvaluator().getNumberResult("exp(1, 2.71, 2)"); | |||
} | |||
@Test(expected=UndefinedExerciseVariableException.class) | |||
public void testExpWithMissingExerciseVariable(){ | |||
getEvaluator().getNumberResult("exp([var=j])"); | |||
} | |||
@Test(expected=UndefinedFillInVariableException.class) | |||
public void testExpWithMissingInput(){ | |||
getEvaluator().getNumberResult("getDenominator([pos=42])"); | |||
} | |||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Hinweise === | === Hinweise === | ||
* Aufgrund von der Rechengenauigkeit des Computers, wird in jedem Fall eine rationale Zahl zurückgegeben. Sollte der tatsächliche Funktionswert irrational sein, wird entsprechend gerundet. | * Aufgrund von der Rechengenauigkeit des Computers, wird in jedem Fall eine rationale Zahl zurückgegeben. Sollte der tatsächliche Funktionswert irrational sein, wird entsprechend gerundet. | ||
[[Kategorie:Evaluatorfunktion]] | [[Kategorie:Evaluatorfunktion]] |
Version vom 20. Juni 2017, 10:01 Uhr
Beschreibung
Die Funktion exp repräsentiert die Exponentialfunktion, sie gibt den Wert <math>e^x</math> an der Stelle x an. Die Funktion erwartet eine Zahl und gibt eine Zahl zurück.
Syntax
exp(float x)
Parameter
- x - der x-Wert der Exponentialfunktion
Return Value
- Gibt eine rationale Zahl zurück
Beispiele
Standardfälle
exp('1') --> returns 2.71828182845 exp('-0.1') --> returns 0.9048374180359595
Benutzung mit Variablen
exp('[pos=1]') exp('[var=a]')
JUnit Tests
@Test
public void testExp(){
assertTrue(1 == getEvaluator().getNumberResult("exp(0)"));
assertTrue(2.71828182845 < getEvaluator().getNumberResult("exp(1)") && getEvaluator().getNumberResult("exp(1)") < 2.71828182846);
assertTrue(0 == getEvaluator().getNumberResult("exp(-1000)"));
assertTrue(0.9048374180359595 == getEvaluator().getNumberResult("exp(-0.1)"));
}
@Test
public void testExpWithInput(){
assertTrue(1 == getEvaluator().getNumberResult("exp([pos=1])"));
assertTrue(22026.465794806718 == getEvaluator().getNumberResult("exp([pos=2])"));
}
@Test
public void testExpWithVariables(){
assertTrue(1 == getEvaluator().getNumberResult("exp([var=a])"));
assertTrue(22026.465794806718 == getEvaluator().getNumberResult("exp([var=b])"));
}
@Test
public void testExpWithPointNumber(){
assertTrue(getEvaluator().getNumberResult("exp(0.1)") == getEvaluator().getNumberResult("exp(.1))"));
}
@Test
public void testExpWithExpressions(){
assertTrue(1 == getEvaluator().getNumberResult("exp(exp(-1000))"));
}
@Test(expected=InvalidEvaluatorFunctionArgumentException.class)
public void testExpWithWrongInputCharacter(){
getEvaluator().getNumberResult("exp(a)");
}
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testExpWithTwoArguments(){
getEvaluator().getNumberResult("exp(0, 1)");
}
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testExpWithThreeArguments(){
getEvaluator().getNumberResult("exp(1, 2.71, 2)");
}
@Test(expected=UndefinedExerciseVariableException.class)
public void testExpWithMissingExerciseVariable(){
getEvaluator().getNumberResult("exp([var=j])");
}
@Test(expected=UndefinedFillInVariableException.class)
public void testExpWithMissingInput(){
getEvaluator().getNumberResult("getDenominator([pos=42])");
}
Hinweise
- Aufgrund von der Rechengenauigkeit des Computers, wird in jedem Fall eine rationale Zahl zurückgegeben. Sollte der tatsächliche Funktionswert irrational sein, wird entsprechend gerundet.