EqualsExpr: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
==Zugehörige Evaluatoren==
===Zugehörige Evaluatoren===
*'''MathEvaluator'''
*'''MathEvaluator'''
===Beschreibung===
===Beschreibung===
Die Funktion ''equalsExpr'' vergleicht zwei mathematische Ausdrücke miteinander. Sie erwartet zwei Ausdrücke (mit Strings kann sie nicht umgehen) und gibt einen boolischen Wert zurück (siehe [[Boolean]]).
Die Funktion ''equalsExpr'' vergleicht zwei mathematische Ausdrücke miteinander. Sie erwartet zwei Ausdrücke (mit Strings kann sie nicht umgehen) und gibt einen boolischen Wert zurück (siehe [[Boolean]]).
Zeile 16: Zeile 17:
===Beispiele===
===Beispiele===
====Beispiele Teil 1====
====Beispiele Teil 1====
  equalsExpr(x^2 - 5*x + 6,(x-2)*(x-3))    --> returns true
  equalsExpr(x^2 - 5*x + 6,(x-2)*(x-3))    --> returns ''true''


'''ACHTUNG BEI''' rationalen Zahlen:
'''ACHTUNG BEI''' rationalen Zahlen:
  equalsExpr(1/3 , 1/3)    --> returns true
  equalsExpr(1/3 , 1/3)    --> returns ''true''
   
   
  equalsExpr(divide(1,3), 1/3)    --> returns true
  equalsExpr(divide(1,3), 1/3)    --> returns ''true''
   
   
  equalsExpr(rational(1,3), 1/3)    --> returns false
  equalsExpr(rational(1,3), 1/3)    --> returns ''false''
   
   
  equalsExpr(1/3, rational(1,3))    --> returns false
  equalsExpr(1/3, rational(1,3))    --> returns ''false''
   
   
  equalsExpr(rational(1,3), rational(1,3))    --> returns true
  equalsExpr(rational(1,3), rational(1,3))    --> returns ''true''


Hier wird unterschieden, ob es eine rationale Zahl ist (mit [[Rational]]), oder ein ausgerechneter Wert (mit [[Division]]). Die rationale Zahl ist genauer als der ausgerechnete Wert und die Funktion ''equalsExpr'' liefert den boolischen Wert '''false'''.
Hier wird unterschieden, ob es eine rationale Zahl ist (mit [[Rational]]), oder ein ausgerechneter Wert (mit [[Division]]). Die rationale Zahl ist genauer als der ausgerechnete Wert und die Funktion ''equalsExpr'' liefert den boolischen Wert '''false'''.


====Beispiele Teil 2====
====Beispiele für Jack2====
 
  Ohne Editorpalette:
  Ohne Editorpalette:
  equalsExpr([pos=1],"K/(2*L)")    --> returns error
  equalsExpr([pos=1],"K/(2*L)")    --> returns ''error''
  equalsExpr([pos=1],K/(2*L))    --> returns error
  equalsExpr([pos=1],K/(2*L))    --> returns ''error''
  equalsExpr([pos=1],x/(2*y))    --> returns true/false
  equalsExpr([pos=1],x/(2*y))    --> returns ''true''/''false''


  Mit Editorpalette:
  Mit Editorpalette:
  equalsExpr([pos=1],K/(2*L))    --> returns error
  equalsExpr([pos=1],K/(2*L))    --> returns ''error''
  equalsExpr([pos=1],"K/(2*L)")    --> returns true/false
  equalsExpr([pos=1],"K/(2*L)")    --> returns ''true''/''false''


===Hinweise===
===Hinweise===
Zeile 51: Zeile 52:
* Eine Überprüfung durch [[EvaluateInSage]] währe ebenfalls eine Alternative.
* Eine Überprüfung durch [[EvaluateInSage]] währe ebenfalls eine Alternative.


[[Kategorie:Math-Evaluatorfunktion]][[Kategorie:Ausdruckfunktionen]][[Kategorie:JACK2]][[Kategorie:JACK3]]
[[Kategorie:Math-Evaluatorfunktion]][[Kategorie:Testfunktionen]][[Kategorie:Ausdruckfunktionen]][[Kategorie:JACK2]][[Kategorie:JACK3]]

Aktuelle Version vom 19. April 2024, 11:19 Uhr

Zugehörige Evaluatoren

  • MathEvaluator

Beschreibung

Die Funktion equalsExpr vergleicht zwei mathematische Ausdrücke miteinander. Sie erwartet zwei Ausdrücke (mit Strings kann sie nicht umgehen) und gibt einen boolischen Wert zurück (siehe Boolean).

Syntax

equalsExpr(Ausdruck term1, Ausdruck term2)

Parameter

  • term1 - der Ausdruck, der als Grundlage für den Vergleich dient
  • term2 - der Ausdruck, der mit term1 verglichen werden soll

Return Value

  • Gibt einen Boolean zurück, true falls die beiden Ausdrücke übereinstimmen und false falls sie nicht übereinstimmen.

Beispiele

Beispiele Teil 1

equalsExpr(x^2 - 5*x + 6,(x-2)*(x-3))    --> returns true

ACHTUNG BEI rationalen Zahlen:

equalsExpr(1/3 , 1/3)    --> returns true

equalsExpr(divide(1,3), 1/3)    --> returns true

equalsExpr(rational(1,3), 1/3)    --> returns false

equalsExpr(1/3, rational(1,3))    --> returns false

equalsExpr(rational(1,3), rational(1,3))    --> returns true

Hier wird unterschieden, ob es eine rationale Zahl ist (mit Rational), oder ein ausgerechneter Wert (mit Division). Die rationale Zahl ist genauer als der ausgerechnete Wert und die Funktion equalsExpr liefert den boolischen Wert false.

Beispiele für Jack2

Ohne Editorpalette:
equalsExpr([pos=1],"K/(2*L)")    --> returns error
equalsExpr([pos=1],K/(2*L))    --> returns error
equalsExpr([pos=1],x/(2*y))    --> returns true/false
Mit Editorpalette:
equalsExpr([pos=1],K/(2*L))    --> returns error
equalsExpr([pos=1],"K/(2*L)")    --> returns true/false

Hinweise

  • Die Funktion equalsExpr ist ein Alias für die Funktion equal.
  • Die Funktion equalsExpr holt sich die Sage-Repräsentation beider Argumente und evaluiert diese in Sage.
  • Mit Strings kann die Funktion equalsExpr nicht umgehen, da String keine Sage-Repräsentation hat, es dürfen also keine Strings in dieser Funktion benutzt werden.
  • Für gewöhnlich sind bei Ausdrücken nur kleingeschriebene Variablenbuchstaben möglich.
  • 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.
  • Wenn in einem Ausdruck ein großgeschriebener Variablenbuchstabe nötig ist muss eine Editor-Palette (z.B. invisible) eingebunden werden. Außerdem sind in diesem Fall auch die einfachen Anführungszeichen für den Ausdruck nötig (vlg. Beispiele Teil 2).
  • Eine Überprüfung durch EvaluateInSage währe ebenfalls eine Alternative.