Ecrire un grand nombre sous vb6

youssefizem Messages postés 9 Date d'inscription mercredi 19 septembre 2007 Statut Membre Dernière intervention 27 février 2008 - 27 sept. 2007 à 04:57
youssefizem Messages postés 9 Date d'inscription mercredi 19 septembre 2007 Statut Membre Dernière intervention 27 février 2008 - 3 oct. 2007 à 04:38
vraiment c'est un forum extraordinaire, il simplicite la programmation

salut, mon problème est le suivant :
je veux par exemple ecrire cette instruction sous VB6 :
       x=123456789123456789
mais dommage une fois passer à la ligne suivante automatiquement ça devient:
       x= 1.23456789123457E+17
ça veut dire une valeur approchée à l'originale la chose que je veux pas.
je me demande s'il y a une solution?
merci d'avance

11 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
27 sept. 2007 à 08:14
Salut,
De qulle type as tu déclarer X ?

@+: Ju£i?n
Pensez: Réponse acceptée
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
27 sept. 2007 à 09:09
Peu importe son type (ici surement double), même s'il le met dans un currency ou bidule de ce genre, il ne pourra rien en faire ensuite. La moindre multiplication et patatras, un 64 bits non signé plafonnant à 18446744073709551615.

ciao...
BruNews, MVP VC++
0
welcometomyheaven Messages postés 24 Date d'inscription dimanche 11 juin 2006 Statut Membre Dernière intervention 8 août 2008
27 sept. 2007 à 14:21
bonjour

il faut l'ecrir de cette façon : X = "123456789123456789"
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
27 sept. 2007 à 18:53
ça c'est de l'argument technique.
ah oui, on est sur vb...

ciao...
BruNews, MVP VC++
0

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

Posez votre question
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
27 sept. 2007 à 23:30
lol... Bonsoir,

Il existe le type "Décimal", mais c'est extraordinairement chier à utiliser (toutes les opérations dessus ne fonctionnent pas avec la précision des 28 chiffres que ce type devrait gérer, comme le dit BruNews...)

Amicalement,
Us.
0
youssefizem Messages postés 9 Date d'inscription mercredi 19 septembre 2007 Statut Membre Dernière intervention 27 février 2008
29 sept. 2007 à 01:13
Tout d'abord merci pour tous, je suis trés reconnaissant; 
en fait je veux pas faire des opérations avec;  mais l'histoire c'est:
   j'ai une chaine de caractère se compose des chiffres je veux la convertir en
   double pour le stocker dans un fichier binaire sans perdre l'information
   la première fois j'ai cru que la fonction VAL qui marche pas alors 
   j'ai  réaliser une fonction pareille qui fait le meme travail mais le problème reste
   toujours;
   pour le type DOUBLE j'ai une idée qu'il peut contenir jusqu'à : 
   9.8E+308???????? 
   merci encore une fois pour vous efforts
@++
 
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
29 sept. 2007 à 09:16
Le Double ne contiendra 'que' 17 chiffres en précision, le reste sera une approximation.

ciao...
BruNews, MVP VC++
0
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
30 sept. 2007 à 13:05
bonjour,

Voilà, Brunews a raison... Le type DOUBLE peut calculer jusqu'à 9.8E308 (à qlch près) mais pas contenir les 308 chiffres... Pour le stockage en binaire, il faudrait convertir tes nombres en  binaire, puis stocker tous les 8 bits (1 octect)... En plus, il faura prévoir une marque pour la séparation, sauf s'ils ont une longeur fixe... enfin,bref...

Amicalement,
Us.
0
youssefizem Messages postés 9 Date d'inscription mercredi 19 septembre 2007 Statut Membre Dernière intervention 27 février 2008
1 oct. 2007 à 02:13
salut !!! je suis trés satisfait avec vos explications et je vous remercie infiniment,
je me demande si ces 17 chiifres qui peut calculer le double sur tous les
langages  ou bien juste sous VB6...
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
1 oct. 2007 à 18:26
VB n'entre pour rien dans l'affaire, c'est le format binaire interne du Double sur 64 bits qui impose cela.

ciao...
BruNews, MVP VC++
0
youssefizem Messages postés 9 Date d'inscription mercredi 19 septembre 2007 Statut Membre Dernière intervention 27 février 2008
3 oct. 2007 à 04:38
Thank you for all,je vous souhaite bonne courage
@++
0
Rejoignez-nous