2012-05-21 18 views
13

Na przykład, jeśli było określenie następujących funkcjiDlaczego Mathematica używa podkreślenia podczas definiowania parametrów?

exprod[n_] := Expand[Product[x + i, {i, 1, n}]] 

Następnie dlaczego podkreślenia po zmiennej n niezbędna w definicji funkcji? Skąd pochodzi ten styl lub czy jest on specyficzny tylko dla języka programowania Mathematica?

+0

Myślę, że to byłoby Wiki? Nie jestem do końca pewien. – ripit

+0

Istnieje teraz strona [StackExchange dla Mathematica] (http://mathematica.stackexchange.com/). Proszę rozważyć zadawanie tam przyszłych pytań. – Verbeia

Odpowiedz

16

Podkreślenie pochodzi z dopasowywania wzorca.

X_ dopasowuje cokolwiek, a to wszystko jest związane z nazwą x w treści funkcji.

l[x_ * y_] := l[x] + l[y]; 

Następnie wl [2 * Z] Pierwszy wyraz 2 * oo dopasowane do wzorca x_ * Y_. Następnie x jest powiązany z 2, a y jest związany z. Następnie wyliczane jest wyrażenie l [x] + l [y], a wynik staje się l [2] + l [z].

Teraz mówimy, że chcemy zdefiniować wartość l na e, aby 1. Czy piszemy l [e]: = 1 lub l [e_]: = 1?

Jedna z nich mówi, że L (dosłownie) do zmiennej e musi być 1. Drugi mówi, że l do czegoś nadaje 1.

http://reference.wolfram.com/mathematica/tutorial/Introduction-Patterns.html

+2

Dziękuję bardzo. To była interesująca lektura i DOKŁADNIE to, czego szukałem. – ripit

Powiązane problemy