Kapitel 6
Variablen
> restart;
> lsg:=solve( x^2-5*x+6=0, x );
> x:=lsg[1];
> solve( x^2-5*x+6=0, x );
Error, (in solve) a constant is invalid as a variable, 3
> x^2-5*x+6=0;
> x:='x';
> solve( x^2-5*x+6=0, x );
Interne Darstellung
> restart;
>
x:=3:
assigned(x), assigned(a);
> a:=1: b:=2: c:=3:
> unassign('a, b, c');
> a,b,c;
> w:=1: x:=a^2+b^2: y:={a+b=5, a-b=1}: z:=array([1,2]):
> whattype(w), whattype(x), whattype(y), whattype(z);
> type(y,set);
> type(z,array);
> type(z,matrix);
anames, unames
> anames();
> unames();
> sort( select( x->length(x)<8, [anames()]) );
> Pi:=3.14;
Error, attempting to assign to `Pi` which is protected
assign
> restart;
> x:=2;
> y:='x'; z:='y';
> z;
> x:=3: z;
> x:=3;
> restart;
> a:=array(0..5);
> seq( assign(a[i],2^i), i=0..5);
> seq(a[i], i=0..5);
> seq( assign(a[i],2^i), i=0..5);
Error, (in assign) invalid arguments
> seq( assign( evaln(a[i]),3^i ), i=0..5);
> seq(a[i], i=0..5);
> restart;
> x:=y;
> assign(x, 3); x,y;
> restart;
> solve( {x+y=3, x-y=2} );
> assign(%);
> x,y;
eval mit Nebenbedingungen
> restart;
> eval( x^2 + 2*x*y + y^2, { x=2, y=3} );
> eval(sin(x)+cos(y),{x=y^2, y=x^2} );
> solve( {x^2+y^2=10, x+y=4});
> eval( x^2 + 2*x*y + y^2, %[1]);
assume
> restart;
> Re( expand((a+I*b)^2) );
> assume(a,real, b,real);
> Re( expand((a+I*b)^2) );
> sqrt(n^2);
> assume(n>0);
> sqrt(n^2);
> simplify(sqrt(x^2));
> simplify(sqrt(x^2),symbolic);
> n:='n':
> cos(n*Pi);
> assume(n,integer): cos(n*Pi);
> assume(n,odd): cos(n*Pi);
> restart;
> int(exp(-a*x^2), x=0..infinity);
Definite integration: Can't determine if the integral is convergent.
Need to know the sign of --> a
Will now try indefinite integration and then take limits.
> assume(a>=0): int(exp(-a*x^2), x=0..infinity);
> assume(x0>0):
> is(x0>-1), is(x0>1), is(x0,real), is(x0>x1);
> about(x0);
Originally x0, renamed x0~:
is assumed to be: RealRange(Open(0),infinity)
macro und alias
> restart;
> macro(s=solve): s(x^2-2);
> macro(s=sin): s(x^2-2);
> macro(s=1.2345): s:=3;
Error, invalid left hand side of assignment
> macro(s=s): s:=3;
> restart;
> alias(s=sin);
> sin(x);
> alias(f=f(x)): diff(f^2,x);
Verkettung mit ||
> restart;
> a||b||c;
> abc:=3;
> a||b||c;
> a||b||c:=4;
> a||b||c;
> b:=1: c:=2: a||b||c;
> a:=x: a||b||c;
> ``||a||b||c;
> cat(a,b,c);
> sum('x||i', i=0..5);
System- und Umgebungsvariablen
> Digits:=20: evalf(1/3);
> series(sin(x)/(1+x),x);
> Order:=10: series(sin(x)/(1+x),x);
> restart;
> interface(showassumed=2);
> assume(n,odd); sin(n*x);
>