Product

Aus JACK Wiki
Zur Navigation springen Zur Suche springen

Diese Seite beinhaltet eine Evaluator-Funktion des JACK3-Systems.

Zugehörige Evaluatoren

  • MathEvaluator

Beschreibung

Die Funktion product erzeugt das math. Produktzeichen.

Syntax

product(IntegerInterval interval, LambdaFunktion lambda)

Parameter

  • interval - das IntegerInterval, welches die Laufvariable der Summe bestimmt
  • lambda - eine Lambda Funktion, welche die Luafvariable als Bindungsvariable und den Ausdruck enthält

Return Value

  • Gibt das Produktzeichen zurück

Beispiele

product(integerInterval(0,10), lambda(x+1, x)) --> Gibt \(\prod_{x=0}^{10} {x+1}\) zurück.
product(integerInterval(-10,0), lambda(n+1+a, n)) --> Gibt \(\prod_{n=-10}^{0} {n+1+a}\) zurück.

Vollständiges Testen einer Produkt-Eingabe

[input=produkt] := \(\prod_{x=0}^{10} {x+1}\)
getParameter(0, [input=produkt]) --> integerInterval(0, 10)
isIntegerInterval( getParameter(0, [input=produkt]) ) --> TRUE
getParameter(0,  getParameter(0, [input=produkt])) --> 0 //startIndex
getParameter(1,  getParameter(0, [input=produkt])) --> 10  //endIndex
getParameter(1, [input=produkt]) --> lambda(x+1, x)
isLambdaFunction(getParameter(1, [input=produkt])) --> TRUE
lambdaHasBindingVars(getParameter(1, [input=produkt]), x) --> TRUE
lambdaExprEqualsExpr(getParameter(1, [input=produkt]), x+1) --> TRUE
approx([input=produkt]) --> 39916800
[input=produkt]==39916800 --> TRUE