2 chiffres après la virgule en VB.Net

hakim_fth Messages postés 138 Date d'inscription   Statut Membre Dernière intervention   -  
Fallentree Messages postés 2309 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Comment je peux avoir 2 chiffres après la virgule dans un Label en VB.Net ?

Merci pour votre aide.

A.Hakim


8 réponses

lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Ah oui...
Comme toi, j'ai appris ça à l'école, et c'est pour cette raison que j'ai mis cette remarque.
comment ce fait-il que la fonction renvoi... avec 1 décimale...
Pour 24,15 > 24,2 .. OK
Pour 24,25 > 24,2 .. ?
Pour 24,35 > 24,4 .. OK
Pour 24,45 > 24,4 .. ?
etc..
En fait, quand la décimale précédant la "coupure" est paire il y a une erreur.
Avant de répondre... faut tester.
A+
L'expérience instruit plus sûrement que le conseil. (André Gide)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
4
Nico# Messages postés 323 Date d'inscription   Statut Membre Dernière intervention   102
 
La fonction Maths.Round ne "deconne" pas une fois sur 2 car enfait la notion d'arrondi n'est pas la meme en effet nous avons tous apris a l'école :

entre 0 et 4 on arrondi a l'inferieur

entre 5 et 9 on arrondi au supérieur.


Mais la fonction Round utilise un standard notemment utilisé en bancaire pour effectuer ces arrondis elle effectue un arondi ou plus prés et le "probleme" que vous rencontré vient seulement de la façon dont on represente les nombre en informatique
2
Nico# Messages postés 323 Date d'inscription   Statut Membre Dernière intervention   102
 
Bon alors je vais vite mettre les choses aux clairs.

Avant de discuter tu devrais peut etre connaitre comment fonctionne les fonctions du framework.

Ensuite tu n'as peut etre pas remarquer vu que tu ne connait pas les fonctions que la fonction Round accepte plusieurs arguments.

Pourquoi 24.25 = 24.2 tout simplement car tu n'as pas été aux bout de la puissance de la fonction car si tu fais.

Math.Round(24.25,1,MidpointRounding.AwayFromZero)

tu auras 24.25 = 24.3

Je te conseille vivement de lire la documentation du framework elle est tres riche.

Et puis pour que tu comprenne l'autre arrondi lit le standard IEEE 754 tu auras un explication du pourquoi du comment.
2
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
J'ai suivi ton conseil... :-(
Je viens du VB6 où cette option n'existe pas (à ma connaissance) et de ce fait je n'ai pas consulté l'aide du .Net.
Merci de cet éclaircissement.
A+
0
Fallentree Messages postés 2309 Date d'inscription   Statut Membre Dernière intervention   209
 
Si c est juste un affichage partie entière du nombre fois le nombre de decimal ...
Exple
Ent(8.69578*100)/100=8.65
si ( 8.65 / 8.69578 ) <1 alors 8.66 sinon 8.65
Voila un autre arrondi.....
2

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Nico# Messages postés 323 Date d'inscription   Statut Membre Dernière intervention   102
 
Oui un arrondi mets tu as à disposition toute la puissance du framework alors utilise la en faisant.

Maths.Round(Tonnombre,2)
1
Fallentree Messages postés 2309 Date d'inscription   Statut Membre Dernière intervention   209
 
Un arrondi ???
Sinon dans l'option format de l affichage '##,##' comme sous access NON ?
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
Effectivement la fonction Math.Round peu servir, malheureusement, à l'instar de VB6 elle "déconne" une fois sur deux.

Une fonction qui renvoi la bonne valeur à chaque fois.

A+
L'expérience instruit plus sûrement que le conseil. (André Gide)
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
0
foot
 
hesse
0