IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

comment gerer de trés grand nombres ? (> 4 octets)


Sujet :

JavaScript

  1. #1
    Membre régulier Avatar de AliJava
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 184
    Points : 82
    Points
    82
    Par défaut comment gerer de trés grand nombres ? (> 4 octets)
    Bonjour,

    Je suis entrain de faire des calculs de clés et je suis face à un obstacle :
    - comment gérer les grands nombres en gros je viens d'un monde ou la classe BigInteger me simplifie vachement la vie et m'évites de tout recoder ?

    est ce que dans le monde javascript ce genre de facilité existe ?


    merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    J'ai peur de ne pas avoir de bonnes nouvelles...

    jette un oeil sur
    MAX_VALUE, MIN_VALUE
    POSITIVE_INFINITY et NEGATIVE_INFINITY

  3. #3
    Membre régulier Avatar de AliJava
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 184
    Points : 82
    Points
    82
    Par défaut
    Merci de m'avoir repondu mais je vois pas en quoi ça pourrait m'aider.
    # MAX_VALUE - The largest value that may be used in JavaScript.

    if (Math.exp(value1)<= Number.MAX_VALUE)
    exponenta(value1)
    else
    exponentb(value1)

    # MIN_VALUE - The smallest value that may be used in JavaScript.
    # NaN - Used to indicate a value is not a number. A number object may be set to this value to indicate that it is not really a number.

    if (Month < 1 || Month > 12) {
    Month = Number.NaN
    }

    # NEGATIVE_INFINITY - The value returned if a negative overflow occurs. Any numeric value divided by this is 0.
    # POSITIVE_INFINITY - The value returned if a positive value overflow occurs. Any numeric value divided by this is 0.

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    Ben je ne sais pas tu parlais de grands nombres ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     alert(Number.MAX_VALUE)
    est le plus grand nomre géré par javascript ...

  5. #5
    Expert confirmé Avatar de Barsy
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    1 484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 484
    Points : 5 279
    Points
    5 279
    Par défaut
    MAX_VALUE = 1.79E+308 environ

    C'est un 18 avec 307 zéros derrière.

    Si tu souhaites faire des nombres plus grand, c'est que tu veux calculer le nombre d'atome de l'univers non ?

    EDIT : Après vérification, il n'y a que 10^80 atomes dans l'univers, c'est à dire 10^227 fois moins que le plus grand nombre géré par Javascript.

  6. #6
    Membre régulier Avatar de AliJava
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 184
    Points : 82
    Points
    82
    Par défaut
    mddr je vous remercie de vos reponses

    non je veux pas calculer le nombre d'atome de l'univers mdrr

    justement j'ai fait une boulette je crois avec le parseInt, je m'explique :
    j'ai 3 champs :
    A : 5 chiffres
    B : 6
    C : 12
    var nombre = (document.getElementById('A').value)+(document.getElementById('B').value)+(document.getElementById('C').value);

    c'est avec ce nombre que je veux faire une soustraction simple et une division.
    quand je fais : alert(nombre); il me l'affiche correctement
    par contre alert(nombre - 1) il me fait n'importe quoi c'est a dire : il me met les 4 dernier chiffre (à droites) à zero.
    de meme avec alert(parseInt(nombre));

    voila justement je comprend pas depuis que j'ai fais Number.Max_Value

    j'ai fais une boulette ?

  7. #7
    Expert confirmé Avatar de Barsy
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    1 484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 484
    Points : 5 279
    Points
    5 279
    Par défaut
    avec alert(nombre - 1) chez moi, il affiche le nombre sous forme scientifique. Ce qui fait qu'il me masque la fin de même avec le parseInt. Je ne sais pas s'il y a un moyen de ne pas l'afficher sous forme scientifique...

  8. #8
    Membre régulier Avatar de AliJava
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 184
    Points : 82
    Points
    82
    Par défaut
    Les gars je parse ma chaine, j'ai changé d'algo et ça marche
    mais si ya une solution feneante je suis preneur

    merci

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    toPrecision() ?

Discussions similaires

  1. [Débutant] C# : comment générer un très grand nombre premier ?
    Par FredDidie dans le forum C#
    Réponses: 3
    Dernier message: 28/11/2014, 08h07
  2. Réponses: 4
    Dernier message: 13/06/2014, 06h40
  3. Réponses: 2
    Dernier message: 22/12/2005, 18h16
  4. Trés grand nombre
    Par rteuteu55 dans le forum C++Builder
    Réponses: 10
    Dernier message: 15/11/2005, 11h28
  5. Une unité pour gérer des très grands nombres
    Par M.Dlb dans le forum Langage
    Réponses: 2
    Dernier message: 09/09/2003, 12h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo