Min: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(12 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
===Zugehörige Evaluatoren===
*'''MathEvaluator'''
=== Beschreibung ===
=== Beschreibung ===
 
Die Funktion ''min'' ermittelt den kleinsten Wert zweier Zahlen. Die Funktion erwartet zwei zu vergleichende Zahlen und gibt die kleinere Zahl zurück. Alternativ kann eine Liste von Zahlen angegeben werden.
Die Funktion ''min'' ermittelt den kleinsten Wert zweier Zahlen. Die Funktion erwartet zwei zu vergleichende Zahlen und gibt die kleinere Zahl zurück.


=== Syntax ===
=== Syntax ===
  min(float zahl1, float zahl2)
  min([[Gleitkommazahl]] zahl1, [[Gleitkommazahl]] zahl2)
oder
min([[List]] liste)


=== Parameter ===
=== Parameter ===
* '''zahl1''' - der erste zu vergleichende Wert
* '''zahl1''' - der erste zu vergleichende Wert
* '''zahl2''' - der zweite zu vergleichende Wert
* '''zahl2''' - der zweite zu vergleichende Wert
oder
* '''liste''' - eine Liste von Zahlen


=== Return Value ===
=== Return Value ===
Zeile 16: Zeile 22:
==== Standardfälle ====
==== Standardfälle ====
  min(12,3)  --> returns 3
  min(12,3)  --> returns 3
  min(9.568,100)  --> returns 9.568
  min(9.568,100)  --> returns 9.568
min(list(1,2,3,-123))  --> returns -123


==== Benutzung mit Variablen ====
==== Benutzung mit Variablen ====
  min([pos=1],[pos=3])
  min([pos=1],[pos=3])
  min([var=a],[var=b])
  min([var=a],[var=b])
====JUnit Tests====
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed">
@Test
public void testMin(){
  assertTrue(1 == getEvaluator().getNumberResult("min(1, 2)"));
  assertTrue(2 == getEvaluator().getNumberResult("min(3, 2)"));
  assertTrue(1 == getEvaluator().getNumberResult("min(1, 1)"));
  assertTrue(0 == getEvaluator().getNumberResult("min(0, 0)"));
  assertTrue(-2 == getEvaluator().getNumberResult("min(-2, 0)"));
  assertTrue(-2 == getEvaluator().getNumberResult("min(-2, 2)"));
}
@Test
public void testMinWithVariables(){
  assertTrue(1 == getEvaluator().getNumberResult("min([var=a], [var=b])"));
  assertTrue(-1 == getEvaluator().getNumberResult("min([var=a], [var=c])"));
}
@Test
public void testMinWithInput(){
  assertTrue(1 == getEvaluator().getNumberResult("min([pos=1], [pos=2])"));
  assertTrue(-1 == getEvaluator().getNumberResult("min([pos=1], [pos=3])"));
}
@Test
public void testMinWithExpressions(){
  assertTrue(-12 == getEvaluator().getNumberResult("min(min(-12,2), 4)"));
  assertTrue(-12 == getEvaluator().getNumberResult("min(min(-12,2), min(5, 8))"));
  assertTrue(-13 == getEvaluator().getNumberResult("min(min(-12,min(13,-13)), min(5, 8))"));
}
@Test
public void testMinWithPointNumbers(){
  assertTrue(1.0 == getEvaluator().getNumberResult("min(1.0, 1.3)"));
  assertTrue(.1 == getEvaluator().getNumberResult("min(.1, .4)"));
  assertTrue(.1111 == getEvaluator().getNumberResult("min(.1234, 0.1111)"));
}
@Test(expected=InvalidEvaluatorFunctionArgumentException.class)
public void testMinWithWrongInputCharacter(){
  getEvaluator().getNumberResult("min(a, a)");
}
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testMinWithOneArgument(){
  getEvaluator().getNumberResult("min(2)");
}
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testMinWithThreeArguments(){
  getEvaluator().getNumberResult("min(1, 23, 4)");
}
@Test(expected=UndefinedExerciseVariableException.class)
public void testMinWithMissingExerciseVariable(){
  getEvaluator().getNumberResult("min('[var=j]', '[var=j]')");
}
   
   
  @Test(expected=UndefinedFillInVariableException.class)
  min([var=c])
public void testMinWithMissingInput(){
  getEvaluator().getNumberResult("min('[pos=42]', '[pos=42]')");
}
</syntaxhighlight>


=== Hinweise ===
=== Hinweise ===
* Eine Gleitkommazahl wird mit einem Punkt anstatt eines Komma gebildet
* Eine Gleitkommazahl wird mit einem Punkt anstatt eines Komma gebildet.
* Die Funktion [[Max]] gibt alternativ die größte Zahl zurück.


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

Aktuelle Version vom 18. April 2024, 13:51 Uhr

Zugehörige Evaluatoren

  • MathEvaluator

Beschreibung

Die Funktion min ermittelt den kleinsten Wert zweier Zahlen. Die Funktion erwartet zwei zu vergleichende Zahlen und gibt die kleinere Zahl zurück. Alternativ kann eine Liste von Zahlen angegeben werden.

Syntax

min(Gleitkommazahl zahl1, Gleitkommazahl zahl2)

oder

min(List liste)

Parameter

  • zahl1 - der erste zu vergleichende Wert
  • zahl2 - der zweite zu vergleichende Wert

oder

  • liste - eine Liste von Zahlen

Return Value

  • Gibt die kleinere Zahl zurück

Beispiele

Standardfälle

min(12,3)   --> returns 3

min(9.568,100)   --> returns 9.568

min(list(1,2,3,-123))   --> returns -123

Benutzung mit Variablen

min([pos=1],[pos=3])

min([var=a],[var=b])

min([var=c])

Hinweise

  • Eine Gleitkommazahl wird mit einem Punkt anstatt eines Komma gebildet.
  • Die Funktion Max gibt alternativ die größte Zahl zurück.