Determiner le nombre de chiffre apres la virgule

Résolu
Signaler
Messages postés
73
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
7 août 2006
-
Messages postés
7
Date d'inscription
dimanche 14 octobre 2007
Statut
Membre
Dernière intervention
10 juin 2010
-
S


alut
Mon souci, c'est comment on peut determiner le nombre de chiffre apres la virgule (par exemple 2 chiffre)

et merci

5 réponses

Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
Oui, c'est clair
Il fallait dire "définir" au lieu de "déterminer".

Tu as:



Const maVariable
As

Single
= 7 / 9

System.Math.Round(maVariable, 2)
' Retourn 0.78


mais ca te fait l'arrondi, donc c'est pas ce que tu cherche.

Comme, il n'y a pas de fonction qui fait ce que tu veux directement, il faut la faire sois même:


Private

Function
SetDecimal(
ByVal
n
As

Single
,
ByVal
[Decimal]
As

Integer
)
As

Single

  
Dim
nStr
As

String
= n.ToString()

  
If
nStr.Contains(
","
)
Then

    
If
nStr.Length - nStr.IndexOf(","c) - 1 > 2
Then

      nStr = nStr.Substring(0, nStr.IndexOf(","c) + 1 + [Decimal])

    
End

If

  
End

If

  
Return
System.Convert.ToSingle(nStr)

End

Function




Example d'utilisation:



Const
maVariable
As

Single
= 7 / 9

TaTextBox.Text = SetDecimal(maVariable, 2)


Tu auras bien 0,77




Kenji

Merci de lire le règlement (vivement conseillé voir obligatoire).
/FONT>
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
Salut,

On converti le nombre en string et on récupére la longeur du texte après la virgule:


Const
nb
As

Single
= 3.14

Dim
nbDecimal
As

Integer
= nb.ToString().Substring(nb.ToString().IndexOf(","c) + 1).Length






Kenji

Merci de lire le règlement (vivement conseillé voir obligatoire).

/FONT>
Messages postés
73
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
7 août 2006

salut Charles


ce que  je voulais c'est que j'ai une variable "maVariable" qui  égale à 7/9. je veux mettre la valeur de "maVariable" dans un textbox : textbox1.text = maVariable.
donc au lieu d'afficher le résultat 0,77777777777777777777778 je veux juste afficher 0,77 .

j'espere que c'est bien claire


merci
Messages postés
73
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
7 août 2006

je te remercie charle
ça marche le code
Messages postés
7
Date d'inscription
dimanche 14 octobre 2007
Statut
Membre
Dernière intervention
10 juin 2010

salam
quand je utilise le calcule avec l'exponentielle sous vb6 j'ai obtenu un chiffre contient des lettre par ex: 16*(10^12.4)/81.83)^1.80= 1,47372712517749E+20
alors  comment je peux régler ce probleme?