Equal: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
 
(11 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 38: Zeile 38:
  equal([input=fillin1], 3)
  equal([input=fillin1], 3)


==== Vergleich mit equals und equalsExpr ====
==== Vergleich mit ''equals'' und ''equalsExpr'' ====
 
Es werden die drei Funktion '''equal''', '''[[equalsExpr]]''' und '''[[equals]]''' in Zussammenhang gesetzt, welche Funktion in welcher Situation was zurückgibt. Dabei bekommen die Funktionen entweder einen String Ausdruck oder einen mathematischen Ausdruck als Eingabe. Die Ausgaben ''true'' und ''false'' bedeuten, dass die Eingaben ausgewertet werden können, ''error'' bedeutet, dass die Eingabe nicht ausgewertet kann und ein Fehler zurückgegeben wird.


{| class="wikitable"
{| class="wikitable"
|+ Ausdrücke ohne Operator
|+ Ausdrücke ohne Operator
|-
|-
! Eingabe !! equal !! equalsExpr !! equals
! Eingabe !! <span style="color:#6B8E23"> equal </span> / equalsExpr !! equals
|-
| String, String (Bsp.: 'hello','hello') || Error || True
|-
| String, String (Bsp.: '23','23') || Error || True
|-
| String, math (Bsp.: '23',23) || Error || True
|-
| math, String (Bsp.: 23,'23') || Error || True
|-
| math, math (Bsp.: 23,23) || True || True
|}
 
{| class="wikitable"
|+ Ausdrücke mit Operator
|-
! Eingabe !! <span style="color:#6B8E23"> equal </span> / equalsExpr !! equals
|-
| String, String (Bsp.: '2+3','3+2') || Error || False
|-
| String, String (Bsp.: '2+3','2+3') || Error || True
|-
| String, String (Bsp.: '2+3','5') || Error || False
|-
| String, String (Bsp.: 'sin(2)+sqrt(2)','sin(2)*1+sqrt(2)*1') || Error || False
|-
| String, math (Bsp.: '2+3',3+2) || Error || False
|-
| String, math (Bsp.: '2+3',2+3) || Error || False
|-
| String, math (Bsp.: '2+3',5) || Error || False
|-
| String, math (Bsp.: '5',2+3) || Error || True
|-
| String, math (Bsp.: 'sin(2)+sqrt(2)',sin(2)*1+sqrt(2)*1) || Error || False
|-
| math, math (Bsp.: 2+3,3+2) || True || True
|-
| math, math (Bsp.: sin(2)+sqrt(2),sin(2)*1+sqrt(2)*1) || True || True
|-
| math, math (Bsp.: 3.7,37/10) || True || False
|}
 
{| class="wikitable"
|+ Ausdrücke mit Operator und Variablen
|-
! Eingabe !! <span style="color:#6B8E23"> equal </span> / equalsExpr !! equals
|-
| String, String (Bsp.: '2x','2x') || Error || True
|-
| String, String (Bsp.: 'x+y','y+x') || Error || False
|-
| String, math (Bsp.: '2x',2x) || Error || True
|-
|-
| String, String (Bsp.: 'hello','hello') || Error || Error || True
| String, math (Bsp.: 'x+y',y+x) || Error || True
|-
|-
| String, String (Bsp.: '23','23') || Error || Error || True
| String, math (Bsp.: '5y',2y+3*y) || Error || True
|-
|-
| String, math (Bsp.: '23',23) || Error || Error || True
| math, math (Bsp.: 5x+3x,8*x) || True || True
|-
|-
| math, String (Bsp.: 23,'23') || Error || Error || True
| math, math (Bsp.: 5x+3x,3x+5x) || True || True
|-
|-
| math, math (Bsp.: 23,23) || True || True || True
| math, math (Bsp.: sin(x),sin(x)*1) || True || True
|}
|}



Aktuelle Version vom 8. Juli 2024, 13:27 Uhr

Zugehörige Evaluatoren

  • MathEvaluator

Beschreibung

Die Funktionen equal vergleicht zwei math. Ausdrücke auf Gleichheit miteinander. Wenn die beiden Ausdrücke übereinstimmen gibt die Funktion true zurück, ansonsten false.

Syntax

 a == b
 equal(a,b)

Parameter

Return Value

  • Gibt einen Boolean zurück.

Beispiele

Standardfälle

2+3 == 5    --> returns true

equal(4+3,7)    --> returns true

Benutzung mit Variablen

[var=a] == [var=b]

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

Benutzung mit studentischen Eingaben

Jack2:
[pos=1] == 3
equal([pos=1], 3)
Jack3:
[input=fillin1] == 3
equal([input=fillin1], 3)

Vergleich mit equals und equalsExpr

Es werden die drei Funktion equal, equalsExpr und equals in Zussammenhang gesetzt, welche Funktion in welcher Situation was zurückgibt. Dabei bekommen die Funktionen entweder einen String Ausdruck oder einen mathematischen Ausdruck als Eingabe. Die Ausgaben true und false bedeuten, dass die Eingaben ausgewertet werden können, error bedeutet, dass die Eingabe nicht ausgewertet kann und ein Fehler zurückgegeben wird.

Ausdrücke ohne Operator
Eingabe equal / equalsExpr equals
String, String (Bsp.: 'hello','hello') Error True
String, String (Bsp.: '23','23') Error True
String, math (Bsp.: '23',23) Error True
math, String (Bsp.: 23,'23') Error True
math, math (Bsp.: 23,23) True True
Ausdrücke mit Operator
Eingabe equal / equalsExpr equals
String, String (Bsp.: '2+3','3+2') Error False
String, String (Bsp.: '2+3','2+3') Error True
String, String (Bsp.: '2+3','5') Error False
String, String (Bsp.: 'sin(2)+sqrt(2)','sin(2)*1+sqrt(2)*1') Error False
String, math (Bsp.: '2+3',3+2) Error False
String, math (Bsp.: '2+3',2+3) Error False
String, math (Bsp.: '2+3',5) Error False
String, math (Bsp.: '5',2+3) Error True
String, math (Bsp.: 'sin(2)+sqrt(2)',sin(2)*1+sqrt(2)*1) Error False
math, math (Bsp.: 2+3,3+2) True True
math, math (Bsp.: sin(2)+sqrt(2),sin(2)*1+sqrt(2)*1) True True
math, math (Bsp.: 3.7,37/10) True False
Ausdrücke mit Operator und Variablen
Eingabe equal / equalsExpr equals
String, String (Bsp.: '2x','2x') Error True
String, String (Bsp.: 'x+y','y+x') Error False
String, math (Bsp.: '2x',2x) Error True
String, math (Bsp.: 'x+y',y+x) Error True
String, math (Bsp.: '5y',2y+3*y) Error True
math, math (Bsp.: 5x+3x,8*x) True True
math, math (Bsp.: 5x+3x,3x+5x) True True
math, math (Bsp.: sin(x),sin(x)*1) True True

Hinweise

  • Die Funktion equal ist ein Alias für equalsExpr.
  • Die Funktion equal wird mit Hilfe von Sage evaluiert. Es wird bool(arg1==arg2) in Sage berechnet.
  • Mit Strings kann die Funktion equal nicht umgehen, da String keine Sage-Repräsentation hat, es dürfen also keine Strings in dieser Funktion verwendet werden.
  • Als Ausdrücke sind insbesondere auch die Komplexen Zahlen erlaubt. Eine Beschreibung der Vorschrift kann hier gefunden werden.
  • Die Funktion equal kann auch mit einfachen mathematischen Operationen umgehen, wie z.B. \(2+3\).
  • Diese Funktion ist ein binärer Operator, sogar ein relationaler Operator.
  • Wenn Variablen genutzt werden muss darauf geachtet werden, dass diese die Voraussetzung erfüllen.
  • Wenn die Eingabe der Studierenden genutzt wird muss auch hier darauf geachtet werden, dass die Voraussetzungen erfüllt sind und ob diese an der Stelle genutzt werden können.