Grande précision de nombre

Résolu
pierre72210 Messages postés 67 Date d'inscription   Statut Membre Dernière intervention   -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour

je suis actuellement en train de crée un petit programme mais ma calculatrice, algobox et libre office ne sont pas suffisamment précis pour mes calcul !!
je cherche donc a langage ou une solution pour pouvoir faire des calcul plus précis

Merci d'avance
A voir également:

1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonsoir,

Tous les langages un peu sérieux gèrent les grands nombres, soit nativement (ex: BigInteger en Java) soit avec des bibliothèques en plus (ex: GMP en C).
La confiance n'exclut pas le contrôle
1
pierre72210 Messages postés 67 Date d'inscription   Statut Membre Dernière intervention  
 
j'ai essayer java est C++ mais il y a forcement un moment ou la variable arrondie
a moins que je me sois tromper quelque part
mon programme doit diviser 1 par 2 puis par 2 ect... au moin 100 fois
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
En Java par exemple.

Vu que tu as des valeurs décimales ce ne sera pas BigInteger, mais BigDecimal :

package test;

import java.math.BigDecimal;

public class Test
{
    public static void main(String[] args)
    {
        BigDecimal TWO = BigDecimal.valueOf(2);
        
        BigDecimal result = BigDecimal.ONE;

        for (int i = 0; i < 100; i++ )
            result = result.divide(TWO);
        
        System.out.println(result); // résultat exact
    }
}

Le résultat est exact par défaut, cela peut cependant poser problème si tu calcules des nombres non décimaux (par exemple une division par 3) dans ce cas il faudra imposer la précision (aussi grande que souhaitée, mais pas infinie), ou alors faire des calculs de nombres rationnels avec deux BigInteger (un pour le numérateur, un autre pour le dénominateur).
0