uebung7 1 7. Uebung Mathematica 7.1 Select[{2, 15, 1, a, 16, 17}, # > 4 &] t = Expand[(x + y + z)^2] Select[t, FreeQ[#, x] &] Select[{-1, 3, 10, 12, 14}, # > 3 &, 1] 7.2 f’[x] // FullForm % /. f’ -> fp f = Interpolation[{{0, 0}, {1, 1}, {2, 8}, {4, 64}}] f[3] f =. 7.3 Composition[f, g, h] InverseFunction[Composition[%, q]] % [x] (f + g) [x] Through[%, Plus] Identity + (D[#, x] &) % [x^2] Through[%, Plus] t = ((1 + a) ( 1 + b)) [x] Expand[t] MapAll[Expand, t, Heads -> True] Operate[p, t] 7.4 Sort[3 z + a^2 - a + 5 + y] Sort[{5, 1, 8, 2}, (#2 < #1) &] uebung7 2 Sort[{x^2, y, x + y, y - 2}, FreeQ[#, x] &] t = f[a, f[b, c], f[f[d]]] Flatten[t] Flatten[t, 1] Distribute[f[a + b]] Distribute[f[a + b, c + d]] Distribute[f[{a, b}, {c, d}], List] Distribute[f[{a, b}, {c, d}], List, g] Distribute[f[{a, b}, {c, d}], List, f] Distribute[f[{a, b}, {c, d}], List, f, gp, fp] Thread[f[{a1, a2}, {b1, b2}]] Thread[f[{a1, a2}, {b1, b2}, c, d]] Log[x == y] Thread[%, Equal] 7.5 Outer[f, {a, b}, {1, 2, 3}] Outer[Greater, {1, 2, 3}, {1, 2, 3}] (Erzeugt BOOLEsche untere Dreiecksmatrix) Outer[Times, {x1, x2, x3}, {y1, y2}] // TableForm (entspricht: [x1, x2, x3]’ * [y1, y2]) Outer[Times, {{2,3}, {5,7}}, {{a,b,c}, {d,e,f}, {g,h,i}}] (Kroneckerprodukt) TableForm[%] Outer[g, f[a, b], f[c, d]] Inner[f, {a, b}, {c, d}, g] Inner[Times, {a, b}, {c, d}, Plus] 7.6 f[a] + f[b] /. f[x_] -> x^2 Position[{f[a], g[a], f[c]}, f[x_]] f[{a, b}] + f[c] /. f[{x_, y_}] -> p[x + y] {1, x, x^2, x^3, 1/x, a^2} /. x^n_ -> r[n] (Skalarprodukt) uebung7 3 f[a + b] + f[a + c] + f[b + d] /. f[a + x_] + f[c + y_] -> p[x, y] 7.7 Cases[{3, 4, x, x^2, x^3}, x^_] Count[{3, 4, x, x^2, x^3}, x^_] Cases[{3, 4, x, x^2, x^3}, x^n_ -> n] Cases[{3, 4, x, x^2, x^3}, _Integer, Infinity] DeleteCases[{3, 4, x, x^2, x^3}, x^n_] DeleteCases[{3, 4, x, 2 + x, 3 + x}, _Integer, Infinity] 7.8 {f[a, a], f[a, b]} /. f[x_, x_] -> p[x] f[a^b] /. f[x : _ ^ _] -> p[x] f[a^b] /. f[x : _ ^ n_] -> p[x, n] {f[h[4], h[4]], f[h[4], h[5]]} /. f[h[_], h[_]] -> q {f[h[4], h[4]], f[h[4], h[5]]} /. f[x:h[_], x_] -> r[x] 7.9 {a, 4, 5, b} /. x_Integer -> p[x] gamma[n_Integer] := (n - 1)! (Def. der Gammafkt. nur fuer Integers) gamma[4] + gamma[x] gamma[4.] d[x_ ^ n_Integer] := n x^(n - 1) d[x^4] + d[(a + b)^3] + d[x^(1/2)] 7.10 fac[n_ /; n > 0] := n! fac[6] + fac[-4] Cases[{3, -4, 5, -2}, x_ /; x < 0] fac[n_] := n! /; n > 0 v[x_, 1 - x_] := p[x] v[a^2, 1 - a^2] v[4, -3] uebung7 4 w[x_, y_] := p[x] /; y == 1-x w[4, -3] Cases[{z[1, 1], z[-1, 1], z[-2, 2]}, z[x_/; x < 0, y_]] {1 + a, 2 + a, -3 + a} /. (x_ /; x < 0) + a -> p[x] 7.11 {2.3, 4, 7/8, a, b} /. (x_ /; NumberQ[x]) -> x^2 mi[list_] := list^2 /; VectorQ[list, IntegerQ] mi[{2, 3, 4}] mi[{2, 3.1, 4}] mi[{2, 3, a}] IntegerQ[4561] IntegerQ[x] {x == y, x === y} h[a_ b_, x_] := a h[b, x] /; FreeQ[a, x] (Definition einer "Homogenitaet" fuer h) h[a b x, x] + h[2 (1 + x) x^2, x] p[x_ ?NumberQ] := x^2 p[4.5] + p[3/2] + p[u] q[{x_Integer, y_Integer} ? (Function[v, v.v > 4])] := qp[x+y] {q[{3, 4}], q[{1, 1}], q[{-5, -7}]} 7.12 Erzeugen Sie in [0, 9] 1000 ganzzahlige Zufallszahlen, loeschen Sie in dieser Folge alle Zweien und Vieren, ersetzen Sie die Sechsen durch Dreien und bestimmen Sie die relative Haeufigkeit des Auftretens der Drei in der resultierenden Folge sowie den Mittelwert dieser Folge. 7.13 Geben Sie eine Prozedur an, die aus einer Liste die (sortierten) Mengen aller ganzen, geraden bzw. ungeraden Zahlen und die Menge aller Primzahlen, die die Liste enthaelt, erzeugt.