|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : Connaitre le nombre de chiffres après la virgule d'un nombre [ Algorithme / Maths ] (Dagry)
Informations & options pour cette discussion
vendredi 29 août 2008 à 21:27:25 |
Connaitre le nombre de chiffres après la virgule d'un nombre

Dagry
|
Bonjour à tous! je me tourne encore vers vous pour m'aider à résoudre un problème. J'aimerais savoir comment connaitre le nombre de chiffres après la virgule d'un nombre décimal. je compte sur vous. merci de votre aide!
|
|
|
vendredi 29 août 2008 à 21:47:55 |
Re : Connaitre le nombre de chiffres après la virgule d'un nombre

us_30
|
Bonsoir,
Dans quel contexte cela s'inscrit ? La question est un peu vague... En effet, comment ton nombre décimal est-il formé ?
Si tu le définis dans ton code, par exemple "a=41234.1234124" , ta question revient à demander : comment extraire la partie décimale.
Si il résulte d'un calcul, par exemple " a = 1/7 ", la réponse n'est plus informatique, mais mathématique... En effet, ici la partie décimale est infinie...
IL faudrait donc préciser plus ta question, et pourquoi tu as besoin d'extraire la partie décimale...
Amicalement, Us.
|
|
|
vendredi 29 août 2008 à 22:26:20 |
Re : Connaitre le nombre de chiffres après la virgule d'un nombre

Dagry
|
d'accord. le nombre résulte d'un calcul. et dans le pire des cas si la partie décimale est énorme on se limite à 19 chiffres
|
|
|
vendredi 29 août 2008 à 22:26:22 |
Re : Connaitre le nombre de chiffres après la virgule d'un nombre

candyraton
|
CLng, fonction, exemple Dim MyVal1, MyVal2, MyLong1, MyLong2 MyVal1 = 25427.45: MyVal2 = 25427.55 ' MyVal1, MyVal2 sont des valeurs ' de type Double. MyLong1 = CLng(MyVal1) ' MyLong1 contient 25427. MyLong2 = CLng(MyVal2) ' MyLong2 contient 25428. ou tu le fait par les math:soustraction ou par la chaine: len(str ( MyLong1 )) renvoi le nbre de chiffres resultat=right( str(MyVal1),x )'x etant le nbre de string a prendre ça donne: resultat=right( str(MyVal1), len(str ( MyVal1 ))- len(str ( MyLong1 )) c une façon de faire si ça peut t'aider mais y'a peut etre une fonction vb qui le fait direct; elles sont là http://msdn.microsoft.com/fr-fr/library/32s6akha(VS.80).aspx
|
|
|
vendredi 29 août 2008 à 22:30:42 |
Re : Connaitre le nombre de chiffres après la virgule d'un nombre

candyraton
|
resultat=right( str(MyVal1), len(str ( MyVal1 ))- len(str ( MyLong1 ))) flute!
|
|
|
vendredi 29 août 2008 à 23:25:36 |
Re : Connaitre le nombre de chiffres après la virgule d'un nombre
|
samedi 30 août 2008 à 00:07:00 |
Re : Connaitre le nombre de chiffres après la virgule d'un nombre

Dagry
|
merci super super astucieux je vais essayer
|
|
|
samedi 30 août 2008 à 01:04:25 |
Re : Connaitre le nombre de chiffres après la virgule d'un nombre

PCPT
|
outchhhhhh un split pour un seul caractère? en plus "," sans vérifier le séparateur? SI on doit passer par la conversion string (pas certain), culture, indexof et substring si besoin de récupérer la valeur, sinon juste culture et length - indexof ++ Prenez un instant pour répondre à ce sondage svp
|
|
|
samedi 30 août 2008 à 01:08:17 |
Re : Connaitre le nombre de chiffres après la virgule d'un nombre
|
samedi 30 août 2008 à 02:02:16 |
Re : Connaitre le nombre de chiffres après la virgule d'un nombre

Kevin.Ory
|
Non c'est obligatoire :)
Chez moi en Suisse, le séparateur est un point, tout comme la norme internationale d'ailleurs (chez Microsoft en tout cas). Ce code ne fonctionne donc pas chez moi.
De plus, la méthode ToString formate en notation scientifique dans certain cas: 0.00002 est formaté en "2E-05", plus de virgule!
Il faudrait savoir si la source du nombre est String ou un nombre flottant. Si c'est un string, on utilise de simple fonction pour les chaines de caractères comme la méthode de Gillardg. Entre parenthèse, voici un solution donnant le même résultat que Gillardg mais sans le Split (a utiliser lorsque la source est un String):
Dim value As String = "123456789.123456789"
Dim nbrDec As Integer = value.Length - value.IndexOf(".") - 1
Si la source est un nombre flottant (Single ou Double), ça semble plus compliqué. J'ai testé différent formats numérique, mais elles ne donnent pas le résultat escompté. Par exemple :
Dim value As Double = 123456789.12345679
Console.WriteLine(value.ToString("#.###################"))
Ceci affiche 123456789.123457. Pourquoi les 2 derniers chiffres sont-il perdu?
Le seul format qui affiche toutes les décimales, est le format "R" pour "Round-Trip" (Aller-retour): "Le spécificateur d'aller-retour garantit qu'une valeur numérique convertie en chaîne sera analysée dans la même valeur numérique". Je ne comprend pas bien cette phrase, la version en anglais me parle plus: "The round-trip specifier guarantees that a numeric value converted to a string will be parsed back into the same numeric value"
Il s'agit apparemment du format utilisé par IntelliSense.
Le hic, c'est que ce format convertit aussi en notation scientifique pour simplifier le résultat (0.0000000000000001 devient "1E-16")
Gérer manuellement les exposants? Mouais, c'est pas très élégant...
|
|
|
Cette discussion est classé dans : nombre, chiffres, connaitre, virgule
Répondre à ce message
Sujets en rapport avec ce message
Comment augmenter le nombre de chiffres après la virgule? [ par Olisoft ]
Je cherche comment je peux augmenter le nombre de chiffres après la virgule dans un "label" ou un "text" après un calcul. J'arrive seulement à avoir
msflexgrid, nombre décimal à 2 chiffres après la virgule [ par SANFER ]
comment afficher le resultat a 2 chiffres apres la virgule d'un calcul dans une cellule de msflexgrid ogp2
format d'un nombre [ par chris_p ]
LutSur un log sous vb7, toutes mes varibles pour mes calculs sont des nombres de type string.A l'affichage final, dans mon text de label, du fait qu'i
Comment parametrer le nombre de chiffres apres la virgule d'une opération [ par Tmagnum ]
Salut à vous, Je bloque sur un format de rèsultat d'opération, lorsque que j'execute une multiplication ou une division sous VB, le résultat contien
Nombre de chiffres après la virgule avec un label... [ par isaak57 ]
Bonjour j'ai un petit programme qui affiche un résultat numerique dans un label (sous vb 2008 express), mais je voudrais limiter le nombre de chiffre
grands nombre [ par lemoutonfou1 ]
Salut a tousJ'aimerais faire un programme de calcul avec beaucoup de chiffres significatifs (plus de 200) .Quel langage de programmation ,pensez-vous
Reste de la division d'un nombre à 25 chiffres [ par GigaCool ]
Je n'arrive pas à trouver contourner le problème de dépassement de capacité en recherchant le mod d'un nombre de 25 chiffres! Les fonctions MOD et alg
2 chiffres apres la virgule [ par prince4878 ]
Salut tout le monde, je suis sur VB2005/MYSQL , je voudrai savoir comment ne prendre que 2 chiffres apres la virgule ( a partir de VB et vice-versa ).
Limiter Chiffres apres Virgule [ par zodiaque11 ]
salutje suis un debutant j'ai crée un textbox nommé TxtCapital alors j'ai arrivé à interdire de saisir des lettres dedans en utilisant Keypressmais j
virgule ou point [ par ecthug ]
bonjourutilisant excel 2007 et vba je voudrais entrer un un nombre decimal avec une virgule ou avec un point(du pavé numerique) sans que cele pose pr
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version
|