GreaterThanOrEqual: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(17 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
===Zugehörige Evaluatoren===
*'''MathEvaluator'''
===Beschreibung===
===Beschreibung===
Die Funktion ''greaterThanOrEqual'' vergleicht zwei Ausdrücke der Größe nach miteinander und gibt einen Wahrheitswert zurück, abhängig davon, ob der linksstehende Ausdruck größer-gleich dem rechtsstehenden Ausdruck ist.
Die Funktion ''greaterThanOrEqual'' vergleicht zwei Ausdrücke der Größe nach miteinander und gibt einen Wahrheitswert zurück, abhängig davon, ob der linksstehende Ausdruck größer-gleich dem rechtsstehenden Ausdruck ist.
Zeile 4: Zeile 7:
===Syntax===
===Syntax===
  a >= b
  a >= b
greaterThanOrEqual(a,b)


===Parameter===
===Parameter===
* '''a''' - [[Gleitkommazahl]]
* '''a''' - [[Ausdruck]] oder [[Gleitkommazahl]]
* '''b''' - [[Gleitkommazahl]]
* '''b''' - [[Ausdruck]] oder [[Gleitkommazahl]]


===Return Value===
===Return Value===
Zeile 13: Zeile 17:
*: Wenn der linke Ausdruck größer-gleich dem rechten Ausdruck ist, wird <code>true</code> zurückgegeben, andernfalls <code>false</code>.
*: Wenn der linke Ausdruck größer-gleich dem rechten Ausdruck ist, wird <code>true</code> zurückgegeben, andernfalls <code>false</code>.


===Beispiele===
=== Beispiele ===
  <math>6 >= 3</math>   --> returns ''true''
==== Standardfälle ====
 
  6 >= 3    --> returns ''true''
  <math>3 >= 3</math>   --> returns ''true''
 
  3 >= 3    --> returns ''true''
  <math>-1 >= 2</math>   --> returns ''false''
 
  greaterThanOrEqual(-1, 2)   --> returns ''false''
====JUnit Tests====
<span class="mw-customtoggle-myDivision">[Anzeigen]</span>
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myDivision">
@BeforeClass
public static void beforeTest() throws FunctionNotImplementedException, UndefinedFillInVariableException,
UndefinedExerciseVariableException, ParserException, ErroneousFillInVariableException, ErroneousExerciseVariableException {
greaterThanOrEqualFillInVariableMap.put(1, ExpressionParser.parse("3", null, null));
greaterThanOrEqualFillInVariableMap.put(2, ExpressionParser.parse("1", null, null));
 
greaterThanOrEqualExerciseVariableMap.put("a", ExpressionParser.parse("8", null, null));
greaterThanOrEqualExerciseVariableMap.put("b", ExpressionParser.parse("25", null, null));
}
 
@Test
public void testGreaterThanOrEqual1() {
assertTrue(Evaluator.getBooleanResult("22>=8", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqual2() {
assertTrue(Evaluator.getBooleanResult("8>=8", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqual3() {
assertTrue(!Evaluator.getBooleanResult("2>=8", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqual4() {
assertTrue(Evaluator.getBooleanResult("9>=8", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqual5() {
assertTrue(!Evaluator.getBooleanResult("7>=45", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqual6() {
assertTrue(Evaluator.getBooleanResult("7>=7", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqual7() {
assertTrue(Evaluator.getBooleanResult("0>=-0.2", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqual8() {
assertTrue(Evaluator.getBooleanResult("0>=0", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithVariables1() {
assertTrue(Evaluator.getBooleanResult("22>=[var=a]", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithVariables2() {
assertTrue(!Evaluator.getBooleanResult("2>=[var=a]", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithVariables3() {
assertTrue(Evaluator.getBooleanResult("[var=b]>=8", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithVariables4() {
assertTrue(Evaluator.getBooleanResult("[var=a]>=8", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithVariables5() {
assertTrue(!Evaluator.getBooleanResult("23>=[var=b]", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithVariables6() {
assertTrue(Evaluator.getBooleanResult("[var=a]>=[var=a]", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithVariables7() {
assertTrue(Evaluator.getBooleanResult("[var=b]>=[var=a]", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithVariables8() {
assertTrue(!Evaluator.getBooleanResult("[var=a]>=[var=b]", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithInput1() {
assertTrue(Evaluator.getBooleanResult("22>=[pos=1]", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithInput2() {
assertTrue(Evaluator.getBooleanResult("3>=[pos=1]", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithInput3() {
assertTrue(!Evaluator.getBooleanResult("2>=[pos=1]", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithInput4() {
assertTrue(Evaluator.getBooleanResult("5>=[pos=2]", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithInput5() {
assertTrue(!Evaluator.getBooleanResult("[pos=2]>=5", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithInput6() {
assertTrue(!Evaluator.getBooleanResult("[pos=2]>=[pos=1]", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithEncapsulation1() {
assertTrue(Evaluator.getBooleanResult("1 >= (1 >= 2)", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithEncapsulation2() {
assertFalse(Evaluator.getBooleanResult("0 >= (0 >= (0 >= 1))", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithEncapsulation3() {
assertFalse(Evaluator.getBooleanResult("0 >= (0 >= (0 >= (0 >= (0 >= 1))))", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
}
 
@Test
public void testGreaterThanOrEqualWithEncapsulation4() {
assertTrue(Evaluator.getBooleanResult("((((1 >= 1) >= 1) >= 1) >= 1) >= 1", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap));
 
}
 
@Test(expected=ParserException.class)
public void testGreaterThanOrEqualWithWrongInputCharacter() {
Evaluator.getBooleanResult("6 >= ab", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap);
fail();
}
 
@Test(expected=FunctionInvalidArgumentTypeException.class)
public void testGreaterThanOrEqualWithWrongInputString() {
Evaluator.getBooleanResult("6 >= 'a'", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap);
fail();
}


@Test (expected=UndefinedExerciseVariableException.class)
==== Benutzung mit Variablen ====
public void testGreaterThanOrEqualWithMissingExcerciseVariable() {
6 >= [var=a]
Evaluator.getBooleanResult("[var=j] >= 2", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap);
fail();
greaterThanOrEqual(-3, [var=a])
}


@Test (expected=UndefinedFillInVariableException.class)
==== Benutzung mit studentischen Eingaben ====
public void testGreaterThanOrEqualWithMissingInput() {
'''Jack3:'''
Evaluator.getBooleanResult("[pos=42] >= 2", greaterThanOrEqualExerciseVariableMap, greaterThanOrEqualFillInVariableMap);
[input=fillin1] >= 4
fail();
}
greaterThanOrEqual([input=fillin1],-2)
</syntaxhighlight>


===Hinweise===
===Hinweise===
* Als Ausdrücke werden insbesondere auch die Komplexen Zahlen erlaubt. Eine Beschreibung der Vorschrift kann [[:Kategorie:Relationaler_Operator#Besonderheiten|hier]] gefunden werden.
* In [[XML-Dateien]] muss das ''greaterThanOrEqual'' Zeichen ">=" als ''&amp;gt;='' angegeben werden.
* Diese Funktion ist ein binärer Operator, sogar ein relationaler Operator.
====Verwandte Funktionen====
Folgende Funktionen stehen mit ''greaterThanOrEqual'' in Verbindung:
* [[greaterThan]]
* [[lessThan]]
* [[lessThanOrEqual]]


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

Aktuelle Version vom 18. April 2024, 11:31 Uhr

Zugehörige Evaluatoren

  • MathEvaluator

Beschreibung

Die Funktion greaterThanOrEqual vergleicht zwei Ausdrücke der Größe nach miteinander und gibt einen Wahrheitswert zurück, abhängig davon, ob der linksstehende Ausdruck größer-gleich dem rechtsstehenden Ausdruck ist.

Syntax

a >= b
greaterThanOrEqual(a,b)

Parameter

Return Value

  • Gibt einen Boolean zurück.
    Wenn der linke Ausdruck größer-gleich dem rechten Ausdruck ist, wird true zurückgegeben, andernfalls false.

Beispiele

Standardfälle

6 >= 3    --> returns true

3 >= 3    --> returns true

greaterThanOrEqual(-1, 2)    --> returns false

Benutzung mit Variablen

6 >= [var=a]

greaterThanOrEqual(-3, [var=a])

Benutzung mit studentischen Eingaben

Jack3:
[input=fillin1] >= 4

greaterThanOrEqual([input=fillin1],-2)

Hinweise

  • Als Ausdrücke werden insbesondere auch die Komplexen Zahlen erlaubt. Eine Beschreibung der Vorschrift kann hier gefunden werden.
  • In XML-Dateien muss das greaterThanOrEqual Zeichen ">=" als &gt;= angegeben werden.
  • Diese Funktion ist ein binärer Operator, sogar ein relationaler Operator.

Verwandte Funktionen

Folgende Funktionen stehen mit greaterThanOrEqual in Verbindung: