Calculs de nombres quasi-infinis

Résolu/Fermé
hcp7kuz Messages postés 243 Date d'inscription mardi 18 août 2015 Statut Membre Dernière intervention 23 mars 2019 - Modifié par hcp7kuz le 27/02/2017 à 16:09
 Utilisateur anonyme - 1 mars 2017 à 00:50
Bonjour,

Je souhaiterai faire des calculs de nombres extrêmement grands, sauf qu'à un moment, il se produit un dépassement de capacité de l'ordinateur.

Comment faire quand-même ces calculs ?

hcp7kuz

3 réponses

ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 160
27 févr. 2017 à 16:17
Bonjour,

Voilà ce que dit l'aide VBA :

LongLong
(LongLong integer) 8 octets
-9 223 372 036 854 775 808 à 9 223 372 036 854 775 807 (Valide uniquement sur les plateformes 64 bits.)

LongPtr
(Entier Long sur les systèmes 32 bits, entier LongLong sur les systèmes 64 bits) 4 octets sur les systèmes 32 bits, 8 octets sur les systèmes 64 bits
-2 147 483 648 à 2 147 483 647 sur les systèmes 32 bits, -9 223 372 036 854 775 808 à 9 223 372 036 854 775 807 sur les systèmes 64 bits

Single
(à virgule flottante en simple précision) 4 octets
-3,402823E38 à -1,401298E-45 pour les valeurs négatives ; 1,401298E-45 à 3,402823E38 pour les valeurs positives

Double
(à virgule flottante en double précision) 8 octets
-1,79769313486231E308 à -4,94065645841247E-324 pour les valeurs négatives ; 4,94065645841247E-324 à 1,79769313486232E308 pour les valeurs positives

Currency
(entier à décalage) 8 octets -922 337 203 685 477,5808 à 922 337 203 685 477,5807

Decimal
14 octets
+/-79 228 162 514 264 337 593 543 950 335 sans séparateur décimal ;
+/-7,9228162514264337593543950335 avec 28 chiffres à droite du séparateur décimal ; le plus petit nombre différent de zéro est +/-0.0000000000000000000000000001.

N'y a-t-il aucun type qui correspond à tes calculs ?
0
hcp7kuz Messages postés 243 Date d'inscription mardi 18 août 2015 Statut Membre Dernière intervention 23 mars 2019 23
27 févr. 2017 à 16:20
Merci de ta réponse, j'avais déjà vu cela, mais n'y a-t-il pas un moyen de faire plus précis encore ? Si non, je m'en contenterai, mais je voulais savoir s'il n'existe pas des fonctions pour faire des calculs encore plus précis que ceux-là.
0
Pierre1310 Messages postés 8564 Date d'inscription lundi 21 décembre 2015 Statut Membre Dernière intervention 21 juillet 2020 649
28 févr. 2017 à 12:16
Non et de toute façon, si tu demandes des calculs trop grands par rapport à ta ram, tu auras une erreur de ram.
0
hcp7kuz Messages postés 243 Date d'inscription mardi 18 août 2015 Statut Membre Dernière intervention 23 mars 2019 23 > Pierre1310 Messages postés 8564 Date d'inscription lundi 21 décembre 2015 Statut Membre Dernière intervention 21 juillet 2020
28 févr. 2017 à 13:24
Je pense quand même qu'avec 8 ou 16 Go de ram, on peut effectuer des calculs plus grand que ceux énoncés précédemment, non ?
0
Pierre1310 Messages postés 8564 Date d'inscription lundi 21 décembre 2015 Statut Membre Dernière intervention 21 juillet 2020 649
28 févr. 2017 à 13:31
Excel ne peut pas prendre toute ta ram, il a une limite.
0
hcp7kuz Messages postés 243 Date d'inscription mardi 18 août 2015 Statut Membre Dernière intervention 23 mars 2019 23
28 févr. 2017 à 13:34
Je ne fais pas de macros sous excel, mais des applications en VB.NET, puis même si l'application ne peut pas prendre toute la ram, la limite me parait bien faible.
0
Utilisateur anonyme
27 févr. 2017 à 16:18
Bonjour,
quel VB?
  • VBS
  • VBA -> précisez:
    • Word
    • Excel
    • Access
    • Powerpoint
    • Autre
  • VB6 (ou antérieur, précisez)
  • VB.Net - précisez la Framework et ->
    • Winform
    • WPF


0
hcp7kuz Messages postés 243 Date d'inscription mardi 18 août 2015 Statut Membre Dernière intervention 23 mars 2019 23
27 févr. 2017 à 16:33
En VB.NET, Framework 4, c'est une winform
0
hcp7kuz Messages postés 243 Date d'inscription mardi 18 août 2015 Statut Membre Dernière intervention 23 mars 2019 23
28 févr. 2017 à 12:13
Merci, mais pour les entiers, c'est en C#, aurais-tu la même chose en VB.NET ?
0
Utilisateur anonyme
28 févr. 2017 à 14:26
VB.net c'est du c# avec une "skin" vb. Donc soit tu utlises l'assembly compilée, soit tu passes le code dans un traducteur en ligne.
0
hcp7kuz Messages postés 243 Date d'inscription mardi 18 août 2015 Statut Membre Dernière intervention 23 mars 2019 23
Modifié par hcp7kuz le 28/02/2017 à 15:59
Où se trouve cette assembly ? Quel code passer dans un traducteur en ligne, et comment l'introduire dans mon projet ? (pour les décimaux)
0
Utilisateur anonyme
28 févr. 2017 à 20:33
J'ai pas mes identifiants de code project en vacances.
Je ne peux donc pas télécharger le projet.
C'est pareil qu'en VB.Net, ça s'ouvre avec visual studio.
Y'a une solution, des fichiers .cs (à la place de .vb) un répertoire bin avec (au moins) Debug et Release, si la version compilée est fournie, la dll est dans l'un d'eux.

Au pire, tu compiles toi même.
0
hcp7kuz Messages postés 243 Date d'inscription mardi 18 août 2015 Statut Membre Dernière intervention 23 mars 2019 23
28 févr. 2017 à 20:37
Et qu'est-ce que je fais du dll ensuite ? Je l'importe comme référence dans mon projet ?
0