next up previous contents index
suivant: Affichage d'un nombre décimal monter: Affichage d'un nombre en précédent: Affichage d'un nombre entier   Table des matières   Index

Transformation d'un affichage par tranches en un nombre entier

Pour avoir la transformation inverse, on va transformer une chaîne comportant des chiffres et un autre caractère (par exemple un espace) en un nombre entier.
On écrit le programme :
enleve(chn,ch):={
local l,s;
s:=length(chn)-1;
//on transforme chn en une liste de ces lettres
//puis, on enleve le caractere ch de cette liste
l:=remove(x->(ord(x)==ord(ch)),seq(chn[k],k,0,s));
//on transforme la liste en chaine
return expr(char(ord(l)));
};
On peut aussi remplacer la dernière ligne :
return char(ord(l))
(ord(l) transforme la liste de caractères en la liste de leurs codes ascii et char transforme la liste des codes ascii en une chaîne).
par :
return cat(op(l))
car op(l) transforme la liste en une séquence et cat concatène les éléments de cette séquence en une chaîne. On tape :
enleve("1 234 567"," ") On obtient :
1234567

Documentation de giac écrite par Renée De Graeve