EXPR

expr expression_mathématique

evalue le résultat d'une expression mathématique

Exemple:

expr 1/3

Comme vous le savez les variables en tcl ne sont pas typées. Ainsi le code 1+1 ne renverra pas le résultat 2.

Il faut dire à l'interpréteur tclsh que 1 est un chiffre que l'on va traiter comme une opération mathématique avec la commande expr.

Ainsi il faut écrire :

set resultat [expr 1 + 1 ] 

cela renverra bien 2 dans la variable $resultat.

Une remarque cependant :

le code :

set resultat [expr 1 / 3 ] 

renvoit 0. Pourquoi ?

Tout simplement car nous divisons un chiffre de type integer par un chiffre de type integer. Un arrondi est fait alors.

par contre le code :

le code :

set resultat [expr 1 / 3.0 ] 

renvoit 0.333333333333 avec une précision de 12 chiffres.

Nous pouvons demander une précision de 17 chiffres après la virgule par exemple en écrivant ceci :

set tcl_precision 17
set resultat [expr
1 / 3.0 ]

le résutat est : 0.33333333333333331 avec une précision de 17 chiffres.

remarque: Le dernier 1 est un arrondi suivant la norme IEEE.

Sur le même thême :

Pour aller plus loin

   Retour au sommaire Tcl

 Retour à l'accueil du site

  Documentation officielle