Product

Aus JACK Wiki
Version vom 22. Mai 2024, 09:30 Uhr von Mschypula (Diskussion | Beiträge) (→‎Hinweis)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

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 - die LambdaFunktion, welche die Laufvariable als Bindungsvariable und den Ausdruck enthält

Return Value

  • Gibt das Produktzeichen zurück

Beispiele

JACK2:
product(integerInterval(0,10), lambda(x, x+1))   --> returns \(\prod_{x=0}^{10} {x+1}\)

product(integerInterval(-10,0), lambda(n, n+1+a))   --> returns \(\prod_{n=-10}^{0} {a+n+1}\)
JACK3:
product(integerInterval(0,10), lambda(x+1, x))   --> returns \(39.916.800\)

product(integerInterval(-10,0), lambda(n+1+a, n))   --> returns \(a^{11} - 44\cdot a^{10} + 825 \cdot a^9 - 8580 \cdot a^8 + 53823 \cdot a^7 - 206052 \cdot a^6 + 454355 \cdot a^5 - 449020 \cdot a^4 - 146124 \cdot a^3 + 663696 \cdot a^2 - 362880 \cdot a\)

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

Hinweis

  • Das Pendant Sum erzeugt das mathematische Summenzeichen.
  • Das Produktzeichen kann in Jack2 und Jack3 verwendet werden. Hier muss nur aufgepasst werden, dass die Schreibweise für den Lambda-Ausdruck sich zwischen den Jack-Versionen unterscheidet. Dazu bitte das Beispiel beachten.