Datentypen
(ausgewählte Datentypen)
Der Datentyp algebraic umfasst die Datentypen
rational, integer,
fraction, float,
complex, polynom,
name, symbol,
indexed, series,
uneval sowie `+`,
`*`, `^`,
`!` und `.`.
Beispiele für algebraische Ausdrücke:
a*b, -34, 34.007, ln(2), sqrt(7);
z/n + 1, x^n, f(x), A[i], infinity
Datentyp, mit dem
rationale Zahlen dargestellt werden.
Der Datentyp rational umfasst die Datentypen integer und
fraction.
Eine rationale Zahl ist gleichzeitig auch vom Typ numeric.
Beispiele für rationale Zahlen:
-67, -3, -1/2, 0, 2/3, 1/infinity
Datentyp, mit dem ganze Zahlen dargestellt werden.
Beispiele für ganze Zahlen:
-67, -3, 0, 1, 2345, 100000000
> type(-67, integer);
true
Maximale Länge einer in Maple darstellbaren integer-Zahl (systemabhängig):
> kernelopts(maxdigits);
268435448
> convert(45, float);
45.
Mögliche Eigenschaften von integer-Zahlen:
even | gerade ganze Zahl |
odd | ungerade ganze Zahl |
posint | positive ganze Zahl |
negint | negative ganze Zahl |
nonposint | nicht-positive ganze Zahl |
nonnegint | nicht-negative ganze Zahl |
prime | Primzahl |
> type (7, prime);
true
Datentyp, mit dem Brüche dargestellt werden.
Beispiele für Brüche:
-2/3, -1/1000, 1/2, 2/4, 675/13
> type(-2/3, fraction);
true
> convert(1/3, float);
0.3333333333
Datentyp, mit dem Gleitkommazahlen dargestellt werden.
Eine Gleitkommazahl ist gleichzeitig auch vom Typ numeric.
Beispiele für Gleitkommazahlen:
-45.046, -0.007, 2367.6499, 0.79E23
> type(0.46, float);
true
> convert(0.33, fraction);
Mögliche Eigenschaften von Gleitkommazahlen:
positive | positive reelle Zahl |
negative | negative reelle Zahl |
nonnegative | nicht-negative reelle Zahl |
Datentyp, mit dem komplexe Zahlen dargestellt werden.
Beispiele für komplexe Zahlen:
I, -3*I, 2+5*I, a+b*I
> type(2+5*I, complex);
true
> type(a+b*I, complex(name));
true
> type(1/2-3*I, complex(rational));
true
Einige mögliche Eigenschaften komplexer Zahlen:
real | reelle Zahl |
realcons | reelle Konstante |
imaginary | Realteil ist gleich 0 |
GaussianInteger | Real- und Imaginärteil sind vom Typ integer |
NumeralNonZero | von 0 verschiedene komplexe Zahl |
Datentyp, mit dem Polynome dargestellt werden.
Beispiele für Polynome:
4*x^3+x^2-7, 2*x^5, a*x^4+b*x
Mögliche Eigenschaften von Polynomen:
polynom(integer) | Polynom, nur mit ganzen Koeffizienten |
polynom(rational) | Polynom, nur mit rationalen Koeffizienten |
> type(1/2*x^3 + 2*x, polynom(rational));
true
Datentyp, mit dem Bezeichner dargestellt werden.
Der Datentyp name umfasst die Datentypen symbol und
indexed;
Beispiele für Bezeichner:
x3, P||i, _envVariable, y~, a[10]
> type(x3, name);
true
> type(etwas(x), name);
true
> convert(name, string);
"name"
Datentyp, mit dem symbolische Bezeichner dargestellt werden.
Beispiele für symbolische Bezeichner:
x3, P||i, _envVariable, y~, Pi
> type(x3, symbol);
true
Es gibt sieben symbolische Konstanten: false, gamma, infinity, true, Catalan, FAIL, Pi.
Datentyp, mit dem indizierte Bezeichner dargestellt werden.
Beispiele für indizierte Bezeichner:
a[10], B[2][3]
> type(a[10], indexed);
true
Datentyp, mit dem Reihenentwicklungen dargestellt werden.
Beispiele für Reihenentwicklungen:
taylor(sqrt(x), x=2, 3), series(x+1/x, x=1, 4)
> type(taylor (sqrt(x), x = 2, 3), series);
true
Datentyp, mit dem unbewertete Ausdrücke dargestellt werden.
Beispiele für unbewertete Ausdrücke:
'x+y', '3',
nicht zu verwechseln mit "x+y" oder "3"
vom Typ string.
> type(’’x+y’’, uneval);
true
> type("x+y", string);
true
> type(x+y, algebraic);
true
> a:= 3:
a;
3
> a:= ’a’:
a;
a
Datentyp, mit dem Summenterme dargestellt werden.
Beispiele für Summenterme:
x+y, x+3, x*y + z^2
>
type(x+y, `+`);
true
Datentyp, mit dem Produktterme dargestellt werden.
Beispiele für Produktterme:
x*y, 2*(a+b)*z
> type(x*y, `*`);
true
Datentyp, mit dem Potenzterme dargestellt werden.
Beispiele für Potenzterme:
x^n, 3^(n+1)
> type(x^n, `^`);
true
Datentyp, mit dem Fakultätsterme dargestellt werden.
Beispiele für Fakultätsterme:
x!, (n-4)!
> type(x!, `!`);
true
Datentyp, mit dem (nicht-kommutative) Punktproduktterme dargestellt werden.
Beispiele für Punktproduktterme:
a.b, (x+1).y
> type(a.b, `.`);
true
> evalb(a.b = b.a);
false
Der Datentyp boolean umfasst die Datentypen logical und relation.
Datentyp, mit dem Boole'sche Ausdrücke unter Benutzung der logischen Operatoren and, or, xor, implies und not dargestellt werden.
Beispiele für logische Ausdrücke:
p and q or r, p implies q, not p
> type(ToBe or NotToBe), logical);
true
Datentyp, mit dem Boole'sche Ausdrücke unter Benutzung der Vergleichsoperatoren <, <=, >, >=, = und <> dargestellt werden.
Beispiele für vergleichende Ausdrücke:
x > 5, x < y
> type(5 < 3), relation);
true
Es gibt drei logische Konstanten: true, false und FAIL.
Der Datentyp string dient zur Darstellung von Zeichenketten.
Beispiele für Zeichenketten:
"Maple 2019", "CAS", "", " ", "123"
> type("12345"), string);
true
> type("12345"), integer);
false
Der Datentyp array dient zur Darstellung von mehrdimensionalen Feldern.
Beispiele für Felder:
array(2..4, 1..2, 0..5), array([[a, b], [c, d]])
> type(array(2..4, 1..2) ), array);
true
> a:= array(2..4, 1..2) ) :
print(a);
> feld:= array([[a, b], [c, d]]);

Datentyp, mit dem Matrizen dargestellt werden.
Matrizen sind in Maple 2-dimensionale Felder mit Zeilen und Spalten, die stets ab 1 indiziert sind.
Beispiele für Matrizen:
array(1..3, 1..3), matrix([[a, b], [c, d]]), matrix(2, 2,[5,4,6,3])
> type(array(1..3, 1..3), matrix);
true
Einige mögliche Eigenschaften von Matrizen:
SquareMatrix | quadratische Matrix |
symmetric | symmetrische Matrix |
antisymmetric | antisymmetrische M. |
ElementaryMatrix | Elementarmatrix |
IdentityMatrix | identische Matrix |
triangular | Dreiecksmatrix |
UpperTriangular | obere Dreiecksmatrix |
LowerTriangular | untere Dreiecksmatrix |
diagonal | Diagonalmatrix |
ScalarMatrix | Skalarmatrix |
NullMatrix | Nullmatrix |

Datentyp, mit dem 1-dimensionale Felder dargestellt werden.
Beispiele für 1-dimensionale Felder:
array(1..5), array([x1, x2, x3], vector([2, 3, 4]
> type(array(1..5), vector);
true
Der Datentyp Vector dient zur Darstellung von Vektoren
.
Datentyp, mit dem Zeilenvektoren dargestellt werden.
Beispiele für Zeilenvektoren:
<5| 4| -6>, Vector[row]([5, 4, -6])
> type(<5| 4| -6>, Vector[row]);
true
> <5| 4| -6| 3>;
[5, 4, -6, 3]

Datentyp, mit dem Spaltenvektoren dargestellt werden.
Beispiele für Spaltenvektoren:
<5, 4, -6>, Vector[column]([5, 4, -6]), Vector([5, 4, -6])
> type(<5, 4, -6>,
Vector[column]);
true
> <5, 4, -6, 3>;
Der Datentyp set dient zur Darstellung von (endlichen)
Mengen.
Die Elemente einer Menge sind nicht geordnet.
Beispiele für Mengen:
{Element, nochnElement}, {}
> type({}, set);
true
Der Datentyp list dient zur Darstellung von (endlichen)
Listen.
Die Elemente einer Liste sind geordnet.
Beispiele für Listen:
[erstesElement, zweitesElement], []
> type([], list);
true
Der Datentyp exprseq dient zur Darstellung von (endlichen) Folgen.
Beispiele für Folgen:
seq(i, i = 1..10), seq (a[i], i = 5..25), NULL
> whattype(seq (i, i = 1..10));
exprseq
Der Datentyp procedure dient zur Darstellung von Prozeduren und Funktionen.
Beispiele für Prozeduren bzw. Funktionen:
(proc(n) (n+1)! end), (x-> x^2), sin
> type((proc(n) (n+1)! end), procedure);
true
> type(sin, procedure);
true
Einige mögliche Eigenschaften von Funktionen:
EvenMap | gerade Funktion |
OddMap | ungerade Funktion |
unary | unäre Funktion |
binary | binäre Funktion |
continuous | stetige Funktion |
differentiable | differenzierbare Funktion |
monotonic | monotone Funktion auf den reellen Zahlen |
operator | Abbildung einer Funktion auf eine Funktion |
Der Datentyp function dient zur Darstellung von Funktionstermen.
Beispiele für Ausdrücke vom Typ function:
sin(x), f(x), (x -> sqrt(x))(x), n!
nicht x^2 oder 3!
> type(sin(x),
function);
true
> type(etwas(x), function);
true
Mögliche Eigenschaften von Funktionstermen:
evenfunc (x) | gerader Funktionsterm |
oddfunc (x) | ungerader Funktionsterm |
> type(x^4 - 5*x^2, evenfunc(x));
true
> type(sin(x), oddfunc(x));
true