
Salutations.
Je t'avais dit que je détaillais au MAXIMUM. Pour 'simplifier', tu peux remplacer le GOSUB "ANALYSE" par ceci, en plus condensé et pratiquement instantané :
ANALYSE:
X = RTRIM$(X) + "00"
SELECT CASE VAL(X)
CASE IS < 0:
X# = VAL(X): X# = ABS(X#): X# = X# * 100
X# = X# + .5: X# = INT(X#) / 100
X# = -X#: A = STR$(X#): B = RTRIM$(A): Virg% = INSTR(B, ".")
IF Virg% = 0 THEN B = B + ".00"
IF Virg% = (LEN(B) - 1) THEN B = B + "0"
CASE 0:
B = LEFT$(X, LEN(X) - 2)
CASE IS > 0:
X# = VAL(X): X# = INT(X# * 100 + .5): X# = X# / 100
A = STR$(X#): B = LTRIM$(RTRIM$(A)): Virg% = INSTR(B, ".")
IF Virg% = 0 THEN B = B + ".00"
IF Virg% = (LEN(B) - 1) THEN B = B + "0"
END SELECT
RETURN
En ce qui concerne les valeurs numériques entières, j'ai ajouté
Deux zéros (ou un seul pour avoir
TOUJOURS 2 décimales après la virgule), aussi bien pour les positives que pour les négatives, en utilisant INSTR. Si tu effectues des essais, avec un nombre différent de valeurs, n'omets pas de modifier le
17 que j'ai prévu dans mon exemple.
Je n'utilise jamais FUNCTION, que des GOSUB et cela fonctionne aussi bien (il faudrait peut-être que je m'y mette, mais pourquoi ?).
Exécute quelques essais en modifiant les valeurs des datas. J'en ai fait quelques uns et les résultats obtenus m'ont toujours semblé répondre à tes besoins.
Je pense que tu sais récupérer un programme. Je vais faire un petit rappel : sélectionner la partie qui t'intéresse et la copier, ouvrir le bloc-notes (tu ne peux pas t'en passer), y coller la sélection et sauvegarder dans le répertoire de ton choix avec le nom que tu souhaites (8 caractères au maximum) et l'extension
.BAS. Ne t'amuse surtout pas à éditer le message et à recomposer le programme.

Salutations.
Moi, mon ordinateur, je l'ai baptisé "Billy" ...
En remerciement, je reçois beaucoup de pages bleues !