type est une fonction qui a un argument et qui renvoie le
type de cet argument par exemple :
DOM_FLOAT,DOM_INT,DOM_COMPLEX,..,DOM_IDENT,DOM_LIST,
DOM_SYMBOLIC,DOM_RAT,..DOM_SYMBOLIC,DOM_STRING.
Il y a 20 types différents qui sont représentés par un entier entre 1
et 20.
type permet de tester une erreur d’entrée.
On tape :
On obtient :
On tape :
On obtient :
On tape :
On obtient :
On tape :
On obtient :
On tape :
On obtient :
Remarque : utilisation de type pour les graphes
voir aussi 3
Si le graphe dépend d’une fonction utilisateur, il faut que la fonction soit
définie même lorsque le(s) paramètre(s) a (ont) une valeur formelle, ce
qui peut se faire en testant le type du paramètre, comme dans l’exemple
suivant, f est définie en testant du type du paramètre par :
f(x):= { if (type(x)==DOM_IDENT) return 'f'(x); while(x>0){ x--; } return x; }:;
Ainsi f(x) renvoie f(x) et f(3.1) renvoie -0.9.
ou bien
g(x):= { if (type(x)!=DOM_LIST) return 'g'(x); if (type(x)==DOM_IDENT) return 'g'(x); while(x[0]>0){x[0]:=x[0]-1; } return x; }:;
Ainsi g(x) renvoie g(x), g([x,y,z]) renvoie g([x,y,z])
et g([1.1,2,3]) renvoie [-0.9,2,3].
Par exemple si G:=plotfunc(g(x), le test permet d’utiliser le graphe G de g dans des commandes comme translation(1+i,G)...