Extraire la partie entière d'un numérique de type double [Résolu]

Signaler
-
Messages postés
2171
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
11 juillet 2020
-
Bonjour, s'il vous plait quel est la fonction mathematique qui permet de récuperer la partie entière d'un Double en VB.NET?

2 réponses

Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
226
Bonjour,
Ben ... Tu ne précises pas ton langage de développement (tu as ouvert cette discussion dans le forum général de VB) !
Sous VB6 et/ou VBA , x étant le nombre, c'est Int(x)
et j'ai modifié ton titre : suppression de "Urgent" (relis les règles) et définition de la difficulté.


________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Messages postés
2171
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
11 juillet 2020
110
Bonjour Nathalie
en VB net c'est Convert.ToInt16 ou Convert.ToInt32 ou Convert.ToInt64 selon que la valeur récupérée entière est un Short ou un Integer ou un Long ( sur 16 ou 32 ou 64 bits)

bonjour uc
Je chipote mais elle avait précisé VB Net dans le message
Messages postés
14492
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
15 juillet 2020
420
Bonjour

Attention Convert arrondi, en utilisant la règle par défaut utilisée par microsoft.
Convert.ToIn32(1.9)

retourne 2
Si tu veux obtenir 1, tu peuxutiliser Math.Floor (qui retourne l'entier inférieur )quand le nombre est positif et Math.Ceiling (qui retourne l'entier suppérieur) quand le nombre est négatif
Math.Floor (1.9)'retourne 1
Math.Ceiling (1.9)'retourne 2
Math.Floor (-1.9)'retourne -2
Math.Ceiling (-1.9)'retourne -1



Ou plus simplement, Math.Truncate

PS, Nathalie a modifié son message après celui d'UC, peut être la mention de VB.Net est elle apparue à ce moment là.
Messages postés
2171
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
11 juillet 2020
110 >
Messages postés
14492
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
15 juillet 2020

Exact Whismeril
J'ai pris le problème dans le mauvais sens : les Convert.TointXX convertissent plutôt une chaine de caractères en une valeur numérique
Grosse bourde de ma part ! Impardonnable !
Pour Nathalie utilise Math.Truncate comme le dit notre ami Whismeril
Bien vu pour le modification du message après intervention de Uc !

il y a encore plus simple : utiliser \ ( signe de la division entière)

Dim valeur As Double
Dim resultat As Integer

valeur = 2.256
resultat = valeur \ 1
MessageBox.Show(resultat.ToString)