Rint: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(10 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
=== Zugehörige Evaluatoren ===
*'''MathEvaluator'''
=== Beschreibung ===
=== Beschreibung ===
 
Die Funktion ''rint'' ermittelt eine [[Ganzzahl]], die am nächsten an der übergebenen Zahl liegt. Die Funktion erwartet eine Zahl und gibt die nächst gelegenen [[Ganzzahl]] zurück
Die Funktion ''rint'' ermittelt eine Ganzzahl, die am nächsten an der übergebenen Zahl liegt. Die Funktion erwartet eine Zahl und gibt die nächst gelegenen Ganzzahl zurück


=== Syntax ===
=== Syntax ===
  rint(float zahl)
  rint([[Gleitkommazahl]] zahl)


=== Parameter ===
=== Parameter ===
* '''zahl''' - die Zahl, zu der die naheliegenste Ganzzahl ermittelt werden soll
* '''zahl''' - die Zahl, zu der die naheliegenste [[Ganzzahl]] ermittelt werden soll


=== Return Value ===
=== Return Value ===
*Gibt die naheliegenste Ganzzahl zurück
* Gibt die naheliegenste [[Ganzzahl]] zurück


=== Beispiele ===
=== Beispiele ===
==== Standardfälle ====
==== Standardfälle ====
  rint(12.4)  --> returns 12
  rint(12.4)  --> returns 12
  rint(15.678)  --> returns 16
  rint(15.678)  --> returns 16


==== Benutzung mit Variablen ====
==== Benutzung mit Variablen ====
rint([pos=1])
  rint([var=a])
  rint([var=a])


====JUnit Tests====
==== Benutzung mit studentischen Eingaben ====
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed">
  '''JACK2:'''
@Test
  rint([pos=1])
public void testRint(){
  assertTrue(12 == getEvaluator().getNumberResult("rint(12.4999)"));
  assertTrue(13 == getEvaluator().getNumberResult("rint(12.500001)"));
  assertTrue(12  == getEvaluator().getNumberResult("rint(12.5)"));
  assertTrue(14  == getEvaluator().getNumberResult("rint(13.5)"));
  assertTrue(-99 == getEvaluator().getNumberResult("rint(-99.4999)"));
  assertTrue(-100== getEvaluator().getNumberResult("rint(-99.5999)"));
  assertTrue(0 == getEvaluator().getNumberResult("rint(-0.00001)"));
  assertTrue(0 == getEvaluator().getNumberResult("rint(0.00001)"));
}
 
@Test
public void testRintWithInput(){
  assertTrue(5 == getEvaluator().getNumberResult("rint([pos=5])"));
  assertTrue(1234 == getEvaluator().getNumberResult("rint([pos=1234])"));
}
 
@Test
public void testRintWithVariables(){
  assertTrue(50 == getEvaluator().getNumberResult("rint([var=f1])"));
  assertTrue(100 ==getEvaluator().getNumberResult("rint([var=h])"));
}
 
@Test
public void testRintWithPointNumbers(){
  assertTrue(0 == getEvaluator().getNumberResult("rint(.2)"));
  assertTrue(0 == getEvaluator().getNumberResult("rint(-.2)"));
}
 
@Test
public void testRintWithExpressions(){
  assertTrue(-2 == getEvaluator().getNumberResult("rint(rint(-2.2))"));
  assertTrue(2 == getEvaluator().getNumberResult("rint(rint(rint(2.1)))"));
}
 
@Test(expected=InvalidEvaluatorFunctionArgumentException.class)
public void testRintWithWrongInputCharacter(){
  getEvaluator().getNumberResult("rint(a)");
}
 
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testRintWithTwoArguments(){
  getEvaluator().getNumberResult("rint(4.2, 3.1)");
}
 
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testRintWithThreeArguments(){
  getEvaluator().getNumberResult("rint(2.1, 2.2, 2.3)");
}
 
@Test(expected=UndefinedExerciseVariableException.class)
public void testRintWithMissingExerciseVariable(){
  getEvaluator().getNumberResult("rint('[var=j]')");
}


@Test(expected=UndefinedFillInVariableException.class)
'''JACK3:'''
public void testRintWithMissingInput(){
rint([input=field1])
  getEvaluator().getNumberResult("rint('[pos=42]')");
}
</syntaxhighlight>


=== Hinweise ===
=== Hinweise ===
* Weitere Funktionen zum Thema runden sind [[ceil]], [[floor]] und [[round]].


[[Kategorie:Evaluatorfunktion]]
[[Kategorie:Math-Evaluatorfunktion]][[Kategorie:Operator]][[Kategorie:JACK2]][[Kategorie:JACK3]]

Aktuelle Version vom 17. April 2024, 10:12 Uhr

Zugehörige Evaluatoren

  • MathEvaluator

Beschreibung

Die Funktion rint ermittelt eine Ganzzahl, die am nächsten an der übergebenen Zahl liegt. Die Funktion erwartet eine Zahl und gibt die nächst gelegenen Ganzzahl zurück

Syntax

rint(Gleitkommazahl zahl)

Parameter

  • zahl - die Zahl, zu der die naheliegenste Ganzzahl ermittelt werden soll

Return Value

Beispiele

Standardfälle

rint(12.4)   --> returns 12

rint(15.678)   --> returns 16

Benutzung mit Variablen

rint([var=a])

Benutzung mit studentischen Eingaben

JACK2:
rint([pos=1])
JACK3:
rint([input=field1])

Hinweise