Floor: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 20: Zeile 20:
  floor('[pos=1]')
  floor('[pos=1]')
  floor('[var=a]')
  floor('[var=a]')
====JUnit Tests====
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed">
@Test
public void testFloor(){
  assertTrue( 5 == getEvaluator().getNumberResult("floor(5.4)"));
  assertTrue( 5 == getEvaluator().getNumberResult("floor(5.0)"));
  assertTrue( 0 == getEvaluator().getNumberResult("floor(0)"));
  assertTrue(-6 == getEvaluator().getNumberResult("floor(-5.4343664)"));
}
@Test
public void testFloorWithInput(){
  assertTrue( 0 == getEvaluator().getNumberResult("floor([pos=1])"));
  assertTrue( 2 == getEvaluator().getNumberResult("floor([pos=2])"));
  assertTrue(-5 == getEvaluator().getNumberResult("floor([pos=3])"));
}
@Test
public void testFloorWithVariables(){
  assertTrue( 0 == getEvaluator().getNumberResult("floor([var=a])"));
  assertTrue( 2 == getEvaluator().getNumberResult("floor([var=b])"));
  assertTrue(-5 == getEvaluator().getNumberResult("floor([var=c])"));
}
@Test
public void testFloorWithExpressions(){
  assertTrue( 5 == getEvaluator().getNumberResult("floor(floor(5.1354))"));
}
@Test(expected=InvalidEvaluatorFunctionArgumentException.class)
public void testFloorWithWrongInputCharacter(){
  getEvaluator().getNumberResult("floor(a)");
}
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testFloorWithTwoArguments(){
  getEvaluator().getNumberResult("floor(7.4321, 3)");
}
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testFloorWithThreeArguments(){
  getEvaluator().getNumberResult("floor(1.434321, 5, 7)");
}
@Test(expected=UndefinedExerciseVariableException.class)
public void testFloorWithMissingExerciseVariable(){
  getEvaluator().getNumberResult("floor([var=j])");
}
@Test(expected=UndefinedFillInVariableException.class)
public void testFloorWithMissingInput(){
  getEvaluator().getNumberResult("floor([pos=42])");
}
</syntaxhighlight>


=== Hinweise ===
=== Hinweise ===


[[Kategorie:Evaluatorfunktion]]
[[Kategorie:Evaluatorfunktion]]

Version vom 20. Juni 2017, 09:13 Uhr

Beschreibung

Die Funktion floor rundet eine rationale Zahl auf die nächstgrößere ganze Zahl ab. Die Funktion erwartet eine Zahl als Parameter und gibt eine Zahl zurück.

Syntax

floor(float zahl)

Parameter

  • zahl - eine abzurundende rationale Zahl

Return Value

  • Gibt eine Ganzzahl zurück.

Beispiele

Standardfälle

floor('7.3')   --> returns 7
floor('-2.4')   --> returns -3

Benutzung mit Variablen

floor('[pos=1]')
floor('[var=a]')

JUnit Tests

 @Test
 public void testFloor(){
   assertTrue( 5 == getEvaluator().getNumberResult("floor(5.4)"));
   assertTrue( 5 == getEvaluator().getNumberResult("floor(5.0)"));
   assertTrue( 0 == getEvaluator().getNumberResult("floor(0)"));
   assertTrue(-6 == getEvaluator().getNumberResult("floor(-5.4343664)"));
 }
 
 @Test
 public void testFloorWithInput(){
   assertTrue( 0 == getEvaluator().getNumberResult("floor([pos=1])"));
   assertTrue( 2 == getEvaluator().getNumberResult("floor([pos=2])"));
   assertTrue(-5 == getEvaluator().getNumberResult("floor([pos=3])"));
 }
 
 @Test
 public void testFloorWithVariables(){
   assertTrue( 0 == getEvaluator().getNumberResult("floor([var=a])"));
   assertTrue( 2 == getEvaluator().getNumberResult("floor([var=b])"));
   assertTrue(-5 == getEvaluator().getNumberResult("floor([var=c])"));
 }
 
 @Test
 public void testFloorWithExpressions(){
   assertTrue( 5 == getEvaluator().getNumberResult("floor(floor(5.1354))"));
 }
 
 @Test(expected=InvalidEvaluatorFunctionArgumentException.class)
 public void testFloorWithWrongInputCharacter(){
   getEvaluator().getNumberResult("floor(a)");
 }
 
 @Test(expected=UnsupportedEvaluatorFunctionException.class)
 public void testFloorWithTwoArguments(){
   getEvaluator().getNumberResult("floor(7.4321, 3)");
 }
 
 @Test(expected=UnsupportedEvaluatorFunctionException.class)
 public void testFloorWithThreeArguments(){
   getEvaluator().getNumberResult("floor(1.434321, 5, 7)");
 }
 
 @Test(expected=UndefinedExerciseVariableException.class)
 public void testFloorWithMissingExerciseVariable(){
   getEvaluator().getNumberResult("floor([var=j])");
 }
 
 @Test(expected=UndefinedFillInVariableException.class)
 public void testFloorWithMissingInput(){
   getEvaluator().getNumberResult("floor([pos=42])");
 }

Hinweise